<?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>57462</bug_id>
          
          <creation_ts>2011-03-30 08:51:26 -0700</creation_ts>
          <short_desc>WebKit2: Make sure to try to terminate the Web Process when any work that might require the Web Process to be relaunched is done</short_desc>
          <delta_ts>2011-03-30 09:51:33 -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>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jessie Berlin">jberlin</reporter>
          <assigned_to name="Jessie Berlin">jberlin</assigned_to>
          <cc>andersca</cc>
    
    <cc>jberlin</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>376360</commentid>
    <comment_count>0</comment_count>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2011-03-30 08:51:26 -0700</bug_when>
    <thetext>This is a follow-up to http://trac.webkit.org/changeset/82312, where I added code to relaunch the process if necessary without code to try to terminate it afterwards.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>376379</commentid>
    <comment_count>1</comment_count>
      <attachid>87547</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2011-03-30 09:13:42 -0700</bug_when>
    <thetext>Created attachment 87547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>376408</commentid>
    <comment_count>2</comment_count>
      <attachid>87547</attachid>
    <who name="Jessie Berlin">jberlin</who>
    <bug_when>2011-03-30 09:51:25 -0700</bug_when>
    <thetext>Comment on attachment 87547
Patch

Committed in http://trac.webkit.org/changeset/82458</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>87547</attachid>
            <date>2011-03-30 09:13:42 -0700</date>
            <delta_ts>2011-03-30 09:51:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>terminateTheWebProcessAfterRelaunchAndDone57462.patch</filename>
            <type>text/plain</type>
            <size>21910</size>
            <attacher name="Jessie Berlin">jberlin</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDgyNDQyKQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNzIgQEAKKzIwMTEtMDMtMzAgIEplc3NpZSBC
ZXJsaW4gIDxqYmVybGluQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBXZWJLaXQyOiBNYWtlIHN1cmUgdG8gdHJ5IHRvIHRlcm1pbmF0
ZSB0aGUgV2ViIFByb2Nlc3Mgd2hlbiBhbnkgd29yayB0aGF0IG1pZ2h0IHJlcXVpcmUgdGhlCisg
ICAgICAgIFdlYiBQcm9jZXNzIHRvIGJlIHJlbGF1bmNoZWQgaXMgZG9uZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc0NjIKKworICAgICAgICBGb3Ig
dGhlIE1hbmFnZXJQcm94aWVzIGluIHRoZSBVSVByb2Nlc3MsIG9ubHkgcmV0dXJuIHRydWUgZnJv
bSBzaG91bGRUZXJtaW5hdGUgaWYgdGhlcmUgYXJlCisgICAgICAgIG5vIG1vcmUgY2FsbGJhY2tz
IHdhaXRpbmcgdG8gYmUgaW52b2tlZC4KKworICAgICAgICBGb3IgdGhlIHRoZSBNYW5hZ2VycyBp
biB0aGUgV2ViUHJvY2VzcywgY2FsbCBXZWJQcm9jZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBv
c3NpYmxlKCkgd2hlbgorICAgICAgICBhbnkgd29yayBjYWxsZWQgZm9yIGJ5IGEgTWFuYWdlclBy
b3h5IGZ1bmN0aW9uIHRoYXQgY2FsbGVkIHJlbGF1bmNoUHJvY2Vzc0lmTmVjZXNzYXJ5IGlzCisg
ICAgICAgIGZpbmlzaGVkLgorCisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpzaG91bGRUZXJtaW5hdGUpOgorICAgICAgICBD
aGVjayB3aXRoIGVhY2ggb2YgdGhlIE1hbmFnZXJQcm94aWVzLgorCisgICAgICAgICogVUlQcm9j
ZXNzL1dlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclByb3h5OjpzaG91bGRUZXJtaW5hdGUpOgorICAg
ICAgICAqIFVJUHJvY2Vzcy9XZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclByb3h5Lmg6CisgICAg
ICAgICogVUlQcm9jZXNzL1dlYkNvb2tpZU1hbmFnZXJQcm94eS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYkNvb2tpZU1hbmFnZXJQcm94eTo6c2hvdWxkVGVybWluYXRlKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViQ29va2llTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YkRhdGFiYXNlTWFuYWdlclByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViRGF0YWJhc2VN
YW5hZ2VyUHJveHk6OnNob3VsZFRlcm1pbmF0ZSk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYkRh
dGFiYXNlTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYktleVZhbHVlU3Rv
cmFnZU1hbmFnZXJQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYktleVZhbHVlU3RvcmFn
ZU1hbmFnZXJQcm94eTo6c2hvdWxkVGVybWluYXRlKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
S2V5VmFsdWVTdG9yYWdlTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYk1l
ZGlhQ2FjaGVNYW5hZ2VyUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJNZWRpYUNhY2hl
TWFuYWdlclByb3h5OjpzaG91bGRUZXJtaW5hdGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJN
ZWRpYUNhY2hlTWFuYWdlclByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlJlc291cmNl
Q2FjaGVNYW5hZ2VyUHJveHkuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNvdXJjZUNhY2hl
TWFuYWdlclByb3h5OjpzaG91bGRUZXJtaW5hdGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJS
ZXNvdXJjZUNhY2hlTWFuYWdlclByb3h5Lmg6CisKKyAgICAgICAgKiBXZWJQcm9jZXNzL0FwcGxp
Y2F0aW9uQ2FjaGUvV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXIuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlcjo6Z2V0QXBwbGljYXRpb25DYWNoZU9yaWdp
bnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlcjo6ZGVsZXRl
RW50cmllc0Zvck9yaWdpbik6CisgICAgICAgIChXZWJLaXQ6OldlYkFwcGxpY2F0aW9uQ2FjaGVN
YW5hZ2VyOjpkZWxldGVBbGxFbnRyaWVzKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL0Nvb2tpZXMv
V2ViQ29va2llTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvb2tpZU1hbmFnZXI6
OmdldEhvc3RuYW1lc1dpdGhDb29raWVzKToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29va2llTWFu
YWdlcjo6ZGVsZXRlQ29va2llc0Zvckhvc3RuYW1lKToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29v
a2llTWFuYWdlcjo6ZGVsZXRlQWxsQ29va2llcyk6CisgICAgICAgIChXZWJLaXQ6OldlYkNvb2tp
ZU1hbmFnZXI6OnN0YXJ0T2JzZXJ2aW5nQ29va2llQ2hhbmdlcyk6CisgICAgICAgIChXZWJLaXQ6
OldlYkNvb2tpZU1hbmFnZXI6OnNldEhUVFBDb29raWVBY2NlcHRQb2xpY3kpOgorICAgICAgICAo
V2ViS2l0OjpXZWJDb29raWVNYW5hZ2VyOjpnZXRIVFRQQ29va2llQWNjZXB0UG9saWN5KToKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL0tleVZhbHVlU3RvcmFnZS9XZWJLZXlWYWx1ZVN0b3JhZ2VNYW5h
Z2VyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViS2V5VmFsdWVTdG9yYWdlTWFuYWdlcjo6Z2V0
S2V5VmFsdWVTdG9yYWdlT3JpZ2lucyk6CisgICAgICAgIChXZWJLaXQ6OldlYktleVZhbHVlU3Rv
cmFnZU1hbmFnZXI6OmRlbGV0ZUVudHJpZXNGb3JPcmlnaW4pOgorICAgICAgICAoV2ViS2l0OjpX
ZWJLZXlWYWx1ZVN0b3JhZ2VNYW5hZ2VyOjpkZWxldGVBbGxFbnRyaWVzKToKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL01lZGlhQ2FjaGUvV2ViTWVkaWFDYWNoZU1hbmFnZXIuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJNZWRpYUNhY2hlTWFuYWdlcjo6Z2V0SG9zdG5hbWVzV2l0aE1lZGlhQ2FjaGUp
OgorICAgICAgICAoV2ViS2l0OjpXZWJNZWRpYUNhY2hlTWFuYWdlcjo6Y2xlYXJDYWNoZUZvckhv
c3RuYW1lKToKKyAgICAgICAgKFdlYktpdDo6V2ViTWVkaWFDYWNoZU1hbmFnZXI6OmNsZWFyQ2Fj
aGVGb3JBbGxIb3N0bmFtZXMpOgorICAgICAgICAqIFdlYlByb2Nlc3MvUmVzb3VyY2VDYWNoZS9X
ZWJSZXNvdXJjZUNhY2hlTWFuYWdlci5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlJlc291cmNl
Q2FjaGVNYW5hZ2VyOjpnZXRDYWNoZU9yaWdpbnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJSZXNv
dXJjZUNhY2hlTWFuYWdlcjo6Y2xlYXJDYWNoZUZvck9yaWdpbik6CisgICAgICAgIChXZWJLaXQ6
OldlYlJlc291cmNlQ2FjaGVNYW5hZ2VyOjpjbGVhckNhY2hlRm9yQWxsT3JpZ2lucyk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJEYXRhYmFzZU1hbmFnZXIuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJEYXRhYmFzZU1hbmFnZXI6OmdldERhdGFiYXNlc0J5T3JpZ2lu
KToKKyAgICAgICAgKFdlYktpdDo6V2ViRGF0YWJhc2VNYW5hZ2VyOjpnZXREYXRhYmFzZU9yaWdp
bnMpOgorICAgICAgICAoV2ViS2l0OjpXZWJEYXRhYmFzZU1hbmFnZXI6OmRlbGV0ZURhdGFiYXNl
V2l0aE5hbWVGb3JPcmlnaW4pOgorICAgICAgICAoV2ViS2l0OjpXZWJEYXRhYmFzZU1hbmFnZXI6
OmRlbGV0ZURhdGFiYXNlc0Zvck9yaWdpbik6CisgICAgICAgIChXZWJLaXQ6OldlYkRhdGFiYXNl
TWFuYWdlcjo6ZGVsZXRlQWxsRGF0YWJhc2VzKToKKyAgICAgICAgKFdlYktpdDo6V2ViRGF0YWJh
c2VNYW5hZ2VyOjpzZXRRdW90YUZvck9yaWdpbik6CisKIDIwMTEtMDMtMjkgIEFkYW0gUm9iZW4g
IDxhcm9iZW5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIHdheSB0byBzcGVjaWZ5IHRoYXQg
YSBTaGFyZWFibGVCaXRtYXAgaGFzIG5vIGFscGhhIGNoYW5uZWwKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclByb3h5LmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQXBwbGljYXRpb25DYWNoZU1hbmFn
ZXJQcm94eS5jcHAJKHJldmlzaW9uIDgyMzEyKQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyUHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01
Miw2ICs1MiwxMSBAQCB2b2lkIFdlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyUHJveHk6OmluCiAg
ICAgaW52YWxpZGF0ZUNhbGxiYWNrTWFwKG1fYXJyYXlDYWxsYmFja3MpOwogfQogCitib29sIFdl
YkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyUHJveHk6OnNob3VsZFRlcm1pbmF0ZShXZWJQcm9jZXNz
UHJveHkqKSBjb25zdAoreworICAgIHJldHVybiBtX2FycmF5Q2FsbGJhY2tzLmlzRW1wdHkoKTsK
K30KKwogdm9pZCBXZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclByb3h5OjpkaWRSZWNlaXZlTWVz
c2FnZShDb3JlSVBDOjpDb25uZWN0aW9uKiBjb25uZWN0aW9uLCBDb3JlSVBDOjpNZXNzYWdlSUQg
bWVzc2FnZUlELCBDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGFyZ3VtZW50cykKIHsKICAgICBk
aWRSZWNlaXZlV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXJQcm94eU1lc3NhZ2UoY29ubmVjdGlv
biwgbWVzc2FnZUlELCBhcmd1bWVudHMpOwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXJQcm94eS5oCShyZXZp
c2lvbiA4MjI1MCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJBcHBsaWNhdGlvbkNh
Y2hlTWFuYWdlclByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDcgQEAgbmFtZXNw
YWNlIFdlYktpdCB7CiAKIHN0cnVjdCBTZWN1cml0eU9yaWdpbkRhdGE7CiBjbGFzcyBXZWJDb250
ZXh0OworY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xhc3MgV2ViU2VjdXJpdHlPcmlnaW47CiAK
IHR5cGVkZWYgR2VuZXJpY0NhbGxiYWNrPFdLQXJyYXlSZWY+IEFycmF5Q2FsbGJhY2s7CkBAIC02
NCw2ICs2NSw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQ
Qzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNv
ZGVyKik7CiAKKyAgICBib29sIHNob3VsZFRlcm1pbmF0ZShXZWJQcm9jZXNzUHJveHkqKSBjb25z
dDsKKwogcHJpdmF0ZToKICAgICBXZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlclByb3h5KFdlYkNv
bnRleHQqKTsKIApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcAko
cmV2aXNpb24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI4Miw4ICsyODIsMjAgQEAgYm9vbCBXZWJDb250ZXh0Ojpz
aG91bGRUZXJtaW5hdGUoV2ViUHJvYwogICAgIGlmICghbV9kb3dubG9hZHMuaXNFbXB0eSgpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBpZiAoIW1fYXBwbGljYXRpb25DYWNoZU1hbmFn
ZXJQcm94eS0+c2hvdWxkVGVybWluYXRlKHByb2Nlc3MpKQorICAgICAgICByZXR1cm4gZmFsc2U7
CisgICAgaWYgKCFtX2Nvb2tpZU1hbmFnZXJQcm94eS0+c2hvdWxkVGVybWluYXRlKHByb2Nlc3Mp
KQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFtX2RhdGFiYXNlTWFuYWdlclByb3h5
LT5zaG91bGRUZXJtaW5hdGUocHJvY2VzcykpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBp
ZiAoIW1fa2V5VmFsdWVTdG9yYWdlTWFuYWdlclByb3h5LT5zaG91bGRUZXJtaW5hdGUocHJvY2Vz
cykpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBpZiAoIW1fbWVkaWFDYWNoZU1hbmFnZXJQ
cm94eS0+c2hvdWxkVGVybWluYXRlKHByb2Nlc3MpKQorICAgICAgICByZXR1cm4gZmFsc2U7CiAg
ICAgaWYgKCFtX3BsdWdpblNpdGVEYXRhTWFuYWdlci0+c2hvdWxkVGVybWluYXRlKHByb2Nlc3Mp
KQogICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFtX3Jlc291cmNlQ2FjaGVNYW5hZ2Vy
UHJveHktPnNob3VsZFRlcm1pbmF0ZShwcm9jZXNzKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwog
CiAgICAgcmV0dXJuIHRydWU7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
Q29va2llTWFuYWdlclByb3h5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvV2ViQ29va2llTWFuYWdlclByb3h5LmNwcAkocmV2aXNpb24gODIzMTIpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29va2llTWFuYWdlclByb3h5LmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNTMsNiArNTMsMTEgQEAgdm9pZCBXZWJDb29raWVNYW5hZ2VyUHJveHk6OmludmFs
aWRhdGUoKQogICAgIGludmFsaWRhdGVDYWxsYmFja01hcChtX2h0dHBDb29raWVBY2NlcHRQb2xp
Y3lDYWxsYmFja3MpOwogfQogCitib29sIFdlYkNvb2tpZU1hbmFnZXJQcm94eTo6c2hvdWxkVGVy
bWluYXRlKFdlYlByb2Nlc3NQcm94eSopIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fYXJyYXlDYWxs
YmFja3MuaXNFbXB0eSgpICYmIG1faHR0cENvb2tpZUFjY2VwdFBvbGljeUNhbGxiYWNrcy5pc0Vt
cHR5KCk7Cit9CisKIHZvaWQgV2ViQ29va2llTWFuYWdlclByb3h5Ojppbml0aWFsaXplQ2xpZW50
KGNvbnN0IFdLQ29va2llTWFuYWdlckNsaWVudCogY2xpZW50KQogewogICAgIG1fY2xpZW50Lmlu
aXRpYWxpemUoY2xpZW50KTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb29r
aWVNYW5hZ2VyUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViQ29va2llTWFuYWdlclByb3h5LmgJKHJldmlzaW9uIDgyMjUwKQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYkNvb2tpZU1hbmFnZXJQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC00
Myw2ICs0Myw3IEBAIG5hbWVzcGFjZSBDb3JlSVBDIHsKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBj
bGFzcyBXZWJDb250ZXh0OworY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogCiB0eXBlZGVmIEdlbmVy
aWNDYWxsYmFjazxXS0FycmF5UmVmPiBBcnJheUNhbGxiYWNrOwogdHlwZWRlZiBHZW5lcmljQ2Fs
bGJhY2s8V0tIVFRQQ29va2llQWNjZXB0UG9saWN5LCBIVFRQQ29va2llQWNjZXB0UG9saWN5PiBI
VFRQQ29va2llQWNjZXB0UG9saWN5Q2FsbGJhY2s7CkBAIC03MSw2ICs3Miw4IEBAIHB1YmxpYzoK
IAogICAgIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJ
UEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CiAKKyAgICBib29sIHNo
b3VsZFRlcm1pbmF0ZShXZWJQcm9jZXNzUHJveHkqKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBX
ZWJDb29raWVNYW5hZ2VyUHJveHkoV2ViQ29udGV4dCopOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJEYXRhYmFzZU1hbmFnZXJQcm94eS5jcHAJKHJldmlz
aW9uIDgyMzEyKQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkRhdGFiYXNlTWFuYWdl
clByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTAzLDYgKzEwMywxMSBAQCB2b2lkIFdlYkRh
dGFiYXNlTWFuYWdlclByb3h5OjppbnZhbGlkYXRlCiAgICAgaW52YWxpZGF0ZUNhbGxiYWNrTWFw
KG1fYXJyYXlDYWxsYmFja3MpOwogfQogCitib29sIFdlYkRhdGFiYXNlTWFuYWdlclByb3h5Ojpz
aG91bGRUZXJtaW5hdGUoV2ViUHJvY2Vzc1Byb3h5KikgY29uc3QKK3sKKyAgICByZXR1cm4gbV9h
cnJheUNhbGxiYWNrcy5pc0VtcHR5KCk7Cit9CisKIHZvaWQgV2ViRGF0YWJhc2VNYW5hZ2VyUHJv
eHk6OmluaXRpYWxpemVDbGllbnQoY29uc3QgV0tEYXRhYmFzZU1hbmFnZXJDbGllbnQqIGNsaWVu
dCkKIHsKICAgICBtX2NsaWVudC5pbml0aWFsaXplKGNsaWVudCk7CkluZGV4OiBTb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2VyUHJveHkuaAkocmV2aXNp
b24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViRGF0YWJhc2VNYW5hZ2Vy
UHJveHkuaAkod29ya2luZyBjb3B5KQpAQCAtNDMsNiArNDMsNyBAQCBjbGFzcyBNZXNzYWdlSUQ7
CiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogY2xhc3MgV2ViQ29udGV4dDsKK2NsYXNzIFdlYlByb2Nl
c3NQcm94eTsKIGNsYXNzIFdlYlNlY3VyaXR5T3JpZ2luOwogCiB0eXBlZGVmIEdlbmVyaWNDYWxs
YmFjazxXS0FycmF5UmVmPiBBcnJheUNhbGxiYWNrOwpAQCAtNzcsNiArNzgsOCBAQCBwdWJsaWM6
CiAKICAgICB2b2lkIGRpZFJlY2VpdmVXZWJEYXRhYmFzZU1hbmFnZXJQcm94eU1lc3NhZ2UoQ29y
ZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnRE
ZWNvZGVyKik7CiAKKyAgICBib29sIHNob3VsZFRlcm1pbmF0ZShXZWJQcm9jZXNzUHJveHkqKSBj
b25zdDsKKwogcHJpdmF0ZToKICAgICBleHBsaWNpdCBXZWJEYXRhYmFzZU1hbmFnZXJQcm94eShX
ZWJDb250ZXh0Kik7CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJLZXlWYWx1
ZVN0b3JhZ2VNYW5hZ2VyUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJLZXlWYWx1ZVN0b3JhZ2VNYW5hZ2VyUHJveHkuY3BwCShyZXZpc2lvbiA4MjMx
MikKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJLZXlWYWx1ZVN0b3JhZ2VNYW5hZ2Vy
UHJveHkuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01Miw2ICs1MiwxMSBAQCB2b2lkIFdlYktleVZh
bHVlU3RvcmFnZU1hbmFnZXJQcm94eTo6aW52CiAgICAgaW52YWxpZGF0ZUNhbGxiYWNrTWFwKG1f
YXJyYXlDYWxsYmFja3MpOwogfQogCitib29sIFdlYktleVZhbHVlU3RvcmFnZU1hbmFnZXJQcm94
eTo6c2hvdWxkVGVybWluYXRlKFdlYlByb2Nlc3NQcm94eSopIGNvbnN0Cit7CisgICAgcmV0dXJu
IG1fYXJyYXlDYWxsYmFja3MuaXNFbXB0eSgpOworfQorCiB2b2lkIFdlYktleVZhbHVlU3RvcmFn
ZU1hbmFnZXJQcm94eTo6ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiogY29u
bmVjdGlvbiwgQ29yZUlQQzo6TWVzc2FnZUlEIG1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnRE
ZWNvZGVyKiBhcmd1bWVudHMpCiB7CiAgICAgZGlkUmVjZWl2ZVdlYktleVZhbHVlU3RvcmFnZU1h
bmFnZXJQcm94eU1lc3NhZ2UoY29ubmVjdGlvbiwgbWVzc2FnZUlELCBhcmd1bWVudHMpOwpJbmRl
eDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYktleVZhbHVlU3RvcmFnZU1hbmFnZXJQcm94
eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJLZXlWYWx1ZVN0
b3JhZ2VNYW5hZ2VyUHJveHkuaAkocmV2aXNpb24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViS2V5VmFsdWVTdG9yYWdlTWFuYWdlclByb3h5LmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ0LDYgKzQ0LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHN0cnVjdCBTZWN1cml0eU9y
aWdpbkRhdGE7CiBjbGFzcyBXZWJDb250ZXh0OworY2xhc3MgV2ViUHJvY2Vzc1Byb3h5OwogY2xh
c3MgV2ViU2VjdXJpdHlPcmlnaW47CiAKIHR5cGVkZWYgR2VuZXJpY0NhbGxiYWNrPFdLQXJyYXlS
ZWY+IEFycmF5Q2FsbGJhY2s7CkBAIC02NCw2ICs2NSw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQg
ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VJ
RCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CiAKKyAgICBib29sIHNob3VsZFRlcm1pbmF0
ZShXZWJQcm9jZXNzUHJveHkqKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBXZWJLZXlWYWx1ZVN0
b3JhZ2VNYW5hZ2VyUHJveHkoV2ViQ29udGV4dCopOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViTWVkaWFDYWNoZU1hbmFnZXJQcm94eS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYk1lZGlhQ2FjaGVNYW5hZ2VyUHJveHkuY3BwCShyZXZp
c2lvbiA4MjMxMikKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJNZWRpYUNhY2hlTWFu
YWdlclByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTEsNiArNTEsMTEgQEAgdm9pZCBXZWJN
ZWRpYUNhY2hlTWFuYWdlclByb3h5OjppbnZhbGlkYQogICAgIGludmFsaWRhdGVDYWxsYmFja01h
cChtX2FycmF5Q2FsbGJhY2tzKTsKIH0KIAorYm9vbCBXZWJNZWRpYUNhY2hlTWFuYWdlclByb3h5
OjpzaG91bGRUZXJtaW5hdGUoV2ViUHJvY2Vzc1Byb3h5KikgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9hcnJheUNhbGxiYWNrcy5pc0VtcHR5KCk7Cit9CisKIHZvaWQgV2ViTWVkaWFDYWNoZU1hbmFn
ZXJQcm94eTo6ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiogY29ubmVjdGlv
biwgQ29yZUlQQzo6TWVzc2FnZUlEIG1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVy
KiBhcmd1bWVudHMpCiB7CiAgICAgZGlkUmVjZWl2ZVdlYk1lZGlhQ2FjaGVNYW5hZ2VyUHJveHlN
ZXNzYWdlKGNvbm5lY3Rpb24sIG1lc3NhZ2VJRCwgYXJndW1lbnRzKTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJNZWRpYUNhY2hlTWFuYWdlclByb3h5LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYk1lZGlhQ2FjaGVNYW5hZ2VyUHJveHkuaAko
cmV2aXNpb24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViTWVkaWFDYWNo
ZU1hbmFnZXJQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC00Myw2ICs0Myw3IEBAIG5hbWVzcGFj
ZSBDb3JlSVBDIHsKIG5hbWVzcGFjZSBXZWJLaXQgewogCiBjbGFzcyBXZWJDb250ZXh0OworY2xh
c3MgV2ViUHJvY2Vzc1Byb3h5OwogCiB0eXBlZGVmIEdlbmVyaWNDYWxsYmFjazxXS0FycmF5UmVm
PiBBcnJheUNhbGxiYWNrOwogCkBAIC02Miw2ICs2Myw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQg
ZGlkUmVjZWl2ZU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJUEM6Ok1lc3NhZ2VJ
RCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CiAKKyAgICBib29sIHNob3VsZFRlcm1pbmF0
ZShXZWJQcm9jZXNzUHJveHkqKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBXZWJNZWRpYUNhY2hl
TWFuYWdlclByb3h5KFdlYkNvbnRleHQqKTsKIApJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlJlc291cmNlQ2FjaGVNYW5hZ2VyUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUNhY2hlTWFuYWdlclByb3h5LmNwcAkocmV2
aXNpb24gODIzMTIpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUmVzb3VyY2VDYWNo
ZU1hbmFnZXJQcm94eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU2LDYgKzU2LDExIEBAIHZvaWQg
V2ViUmVzb3VyY2VDYWNoZU1hbmFnZXJQcm94eTo6aW52YWwKICAgICBpbnZhbGlkYXRlQ2FsbGJh
Y2tNYXAobV9hcnJheUNhbGxiYWNrcyk7CiB9CiAKK2Jvb2wgV2ViUmVzb3VyY2VDYWNoZU1hbmFn
ZXJQcm94eTo6c2hvdWxkVGVybWluYXRlKFdlYlByb2Nlc3NQcm94eSopIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fYXJyYXlDYWxsYmFja3MuaXNFbXB0eSgpOworfQorCiB2b2lkIFdlYlJlc291cmNl
Q2FjaGVNYW5hZ2VyUHJveHk6OmdldENhY2hlT3JpZ2lucyhQYXNzUmVmUHRyPEFycmF5Q2FsbGJh
Y2s+IHBycENhbGxiYWNrKQogewogICAgIFJlZlB0cjxBcnJheUNhbGxiYWNrPiBjYWxsYmFjayA9
IHBycENhbGxiYWNrOwpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlJlc291cmNl
Q2FjaGVNYW5hZ2VyUHJveHkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUmVzb3VyY2VDYWNoZU1hbmFnZXJQcm94eS5oCShyZXZpc2lvbiA4MjI1MCkKKysrIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJSZXNvdXJjZUNhY2hlTWFuYWdlclByb3h5LmgJKHdv
cmtpbmcgY29weSkKQEAgLTQyLDYgKzQyLDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAKIHN0cnVj
dCBTZWN1cml0eU9yaWdpbkRhdGE7CiBjbGFzcyBXZWJDb250ZXh0OworY2xhc3MgV2ViUHJvY2Vz
c1Byb3h5OwogY2xhc3MgV2ViU2VjdXJpdHlPcmlnaW47CiAKIHR5cGVkZWYgR2VuZXJpY0NhbGxi
YWNrPFdLQXJyYXlSZWY+IEFycmF5Q2FsbGJhY2s7CkBAIC02Miw2ICs2Myw4IEBAIHB1YmxpYzoK
IAogICAgIHZvaWQgZGlkUmVjZWl2ZVdlYlJlc291cmNlQ2FjaGVNYW5hZ2VyUHJveHlNZXNzYWdl
KENvcmVJUEM6OkNvbm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlSUQsIENvcmVJUEM6OkFyZ3Vt
ZW50RGVjb2RlciopOwogCisgICAgYm9vbCBzaG91bGRUZXJtaW5hdGUoV2ViUHJvY2Vzc1Byb3h5
KikgY29uc3Q7CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgV2ViUmVzb3VyY2VDYWNoZU1hbmFn
ZXJQcm94eShXZWJDb250ZXh0Kik7CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
QXBwbGljYXRpb25DYWNoZS9XZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9BcHBsaWNhdGlvbkNhY2hlL1dlYkFwcGxp
Y2F0aW9uQ2FjaGVNYW5hZ2VyLmNwcAkocmV2aXNpb24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL0FwcGxpY2F0aW9uQ2FjaGUvV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXIu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC03OSw2ICs3OSw3IEBAIHZvaWQgV2ViQXBwbGljYXRpb25D
YWNoZU1hbmFnZXI6OmdldEFwcGwKICAgICB9CiAKICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5j
b25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyUHJv
eHk6OkRpZEdldEFwcGxpY2F0aW9uQ2FjaGVPcmlnaW5zKGlkZW50aWZpZXJzLCBjYWxsYmFja0lE
KSwgMCk7CisgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQb3NzaWJsZSgpOwog
fQogCiB2b2lkIFdlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyOjpkZWxldGVFbnRyaWVzRm9yT3Jp
Z2luKGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYgb3JpZ2luRGF0YSkKQEAgLTkwLDYgKzkxLDcg
QEAgdm9pZCBXZWJBcHBsaWNhdGlvbkNhY2hlTWFuYWdlcjo6ZGVsZXRlRQogICAgIAogICAgIEFw
cGxpY2F0aW9uQ2FjaGU6OmRlbGV0ZUNhY2hlRm9yT3JpZ2luKG9yaWdpbi5nZXQoKSk7CiAjZW5k
aWYKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAK
IHZvaWQgV2ViQXBwbGljYXRpb25DYWNoZU1hbmFnZXI6OmRlbGV0ZUFsbEVudHJpZXMoKQpAQCAt
OTcsNiArOTksNyBAQCB2b2lkIFdlYkFwcGxpY2F0aW9uQ2FjaGVNYW5hZ2VyOjpkZWxldGVBCiAj
aWYgRU5BQkxFKE9GRkxJTkVfV0VCX0FQUExJQ0FUSU9OUykKICAgICBjYWNoZVN0b3JhZ2UoKS5k
ZWxldGVBbGxFbnRyaWVzKCk7CiAjZW5kaWYKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS50ZXJt
aW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRleDogU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9Db29raWVzL1dlYkNvb2tpZU1hbmFnZXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvQ29va2llcy9XZWJDb29raWVNYW5h
Z2VyLmNwcAkocmV2aXNpb24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0Nv
b2tpZXMvV2ViQ29va2llTWFuYWdlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYyLDIxICs2Miwy
NSBAQCB2b2lkIFdlYkNvb2tpZU1hbmFnZXI6OmdldEhvc3RuYW1lc1dpdGhDCiAgICAgY29weVRv
VmVjdG9yKGhvc3RuYW1lcywgaG9zdG5hbWVMaXN0KTsKIAogICAgIFdlYlByb2Nlc3M6OnNoYXJl
ZCgpLmNvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViQ29va2llTWFuYWdlclByb3h5OjpE
aWRHZXRIb3N0bmFtZXNXaXRoQ29va2llcyhob3N0bmFtZUxpc3QsIGNhbGxiYWNrSUQpLCAwKTsK
KyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIHZv
aWQgV2ViQ29va2llTWFuYWdlcjo6ZGVsZXRlQ29va2llc0Zvckhvc3RuYW1lKGNvbnN0IFN0cmlu
ZyYgaG9zdG5hbWUpCiB7CiAgICAgV2ViQ29yZTo6ZGVsZXRlQ29va2llc0Zvckhvc3RuYW1lKGhv
c3RuYW1lKTsKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7
CiB9CiAKIHZvaWQgV2ViQ29va2llTWFuYWdlcjo6ZGVsZXRlQWxsQ29va2llcygpCiB7CiAgICAg
V2ViQ29yZTo6ZGVsZXRlQWxsQ29va2llcygpOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLnRl
cm1pbmF0ZUlmUG9zc2libGUoKTsKIH0KIAogdm9pZCBXZWJDb29raWVNYW5hZ2VyOjpzdGFydE9i
c2VydmluZ0Nvb2tpZUNoYW5nZXMoKQogewogICAgIFdlYkNvcmU6OnN0YXJ0T2JzZXJ2aW5nQ29v
a2llQ2hhbmdlcygpOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLnRlcm1pbmF0ZUlmUG9zc2li
bGUoKTsKIH0KIAogdm9pZCBXZWJDb29raWVNYW5hZ2VyOjpzdG9wT2JzZXJ2aW5nQ29va2llQ2hh
bmdlcygpCkBAIC05MiwxMSArOTYsMTMgQEAgdm9pZCBXZWJDb29raWVNYW5hZ2VyOjpkaXNwYXRj
aENvb2tpZXNEaQogdm9pZCBXZWJDb29raWVNYW5hZ2VyOjpzZXRIVFRQQ29va2llQWNjZXB0UG9s
aWN5KEhUVFBDb29raWVBY2NlcHRQb2xpY3kgcG9saWN5KQogewogICAgIHBsYXRmb3JtU2V0SFRU
UENvb2tpZUFjY2VwdFBvbGljeShwb2xpY3kpOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLnRl
cm1pbmF0ZUlmUG9zc2libGUoKTsKIH0KIAogdm9pZCBXZWJDb29raWVNYW5hZ2VyOjpnZXRIVFRQ
Q29va2llQWNjZXB0UG9saWN5KHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7CiAgICAgV2ViUHJvY2Vz
czo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kKE1lc3NhZ2VzOjpXZWJDb29raWVNYW5hZ2Vy
UHJveHk6OkRpZEdldEhUVFBDb29raWVBY2NlcHRQb2xpY3kocGxhdGZvcm1HZXRIVFRQQ29va2ll
QWNjZXB0UG9saWN5KCksIGNhbGxiYWNrSUQpLCAwKTsKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQo
KS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApJbmRl
eDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9LZXlWYWx1ZVN0b3JhZ2UvV2ViS2V5VmFsdWVT
dG9yYWdlTWFuYWdlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9LZXlWYWx1ZVN0b3JhZ2UvV2ViS2V5VmFsdWVTdG9yYWdlTWFuYWdlci5jcHAJKHJldmlzaW9u
IDgyMjUwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9LZXlWYWx1ZVN0b3JhZ2UvV2Vi
S2V5VmFsdWVTdG9yYWdlTWFuYWdlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc2LDYgKzc2LDcg
QEAgdm9pZCBXZWJLZXlWYWx1ZVN0b3JhZ2VNYW5hZ2VyOjpnZXRLZXlWYQogICAgIH0KIAogICAg
IFdlYlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViS2V5
VmFsdWVTdG9yYWdlTWFuYWdlclByb3h5OjpEaWRHZXRLZXlWYWx1ZVN0b3JhZ2VPcmlnaW5zKGlk
ZW50aWZpZXJzLCBjYWxsYmFja0lEKSwgMCk7CisgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkudGVy
bWluYXRlSWZQb3NzaWJsZSgpOwogfQogCiB2b2lkIFdlYktleVZhbHVlU3RvcmFnZU1hbmFnZXI6
OmRlbGV0ZUVudHJpZXNGb3JPcmlnaW4oY29uc3QgU2VjdXJpdHlPcmlnaW5EYXRhJiBvcmlnaW5E
YXRhKQpAQCAtODUsMTEgKzg2LDEzIEBAIHZvaWQgV2ViS2V5VmFsdWVTdG9yYWdlTWFuYWdlcjo6
ZGVsZXRlRW4KICAgICAgICAgcmV0dXJuOwogCiAgICAgU3RvcmFnZVRyYWNrZXI6OnRyYWNrZXIo
KS5kZWxldGVPcmlnaW4ob3JpZ2luLmdldCgpKTsKKyAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS50
ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIHZvaWQgV2ViS2V5VmFsdWVTdG9yYWdlTWFuYWdl
cjo6ZGVsZXRlQWxsRW50cmllcygpCiB7CiAgICAgU3RvcmFnZVRyYWNrZXI6OnRyYWNrZXIoKS5k
ZWxldGVBbGxPcmlnaW5zKCk7CisgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQ
b3NzaWJsZSgpOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvTWVkaWFDYWNoZS9XZWJNZWRpYUNhY2hlTWFuYWdlci5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9NZWRpYUNhY2hlL1dlYk1lZGlhQ2Fj
aGVNYW5hZ2VyLmNwcAkocmV2aXNpb24gODIyNTApCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL01lZGlhQ2FjaGUvV2ViTWVkaWFDYWNoZU1hbmFnZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC02MCw2ICs2MCw3IEBAIHZvaWQgV2ViTWVkaWFDYWNoZU1hbmFnZXI6OmdldEhvc3RuYW1lc1cK
ICNlbmRpZgogCiAgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkuY29ubmVjdGlvbigpLT5zZW5kKE1l
c3NhZ2VzOjpXZWJNZWRpYUNhY2hlTWFuYWdlclByb3h5OjpEaWRHZXRIb3N0bmFtZXNXaXRoTWVk
aWFDYWNoZShtZWRpYUNhY2hlSG9zdG5hbWVzLCBjYWxsYmFja0lEKSwgMCk7CisgICAgV2ViUHJv
Y2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQb3NzaWJsZSgpOwogfQogCiB2b2lkIFdlYk1lZGlh
Q2FjaGVNYW5hZ2VyOjpjbGVhckNhY2hlRm9ySG9zdG5hbWUoY29uc3QgU3RyaW5nJiBob3N0bmFt
ZSkKQEAgLTY3LDYgKzY4LDcgQEAgdm9pZCBXZWJNZWRpYUNhY2hlTWFuYWdlcjo6Y2xlYXJDYWNo
ZUZvcgogI2lmIEVOQUJMRShWSURFTykKICAgICBIVE1MTWVkaWFFbGVtZW50OjpjbGVhck1lZGlh
Q2FjaGVGb3JTaXRlKGhvc3RuYW1lKTsKICNlbmRpZgorICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgp
LnRlcm1pbmF0ZUlmUG9zc2libGUoKTsKIH0KIAogdm9pZCBXZWJNZWRpYUNhY2hlTWFuYWdlcjo6
Y2xlYXJDYWNoZUZvckFsbEhvc3RuYW1lcygpCkBAIC03NCw2ICs3Niw3IEBAIHZvaWQgV2ViTWVk
aWFDYWNoZU1hbmFnZXI6OmNsZWFyQ2FjaGVGb3IKICNpZiBFTkFCTEUoVklERU8pCiAgICAgSFRN
TE1lZGlhRWxlbWVudDo6Y2xlYXJNZWRpYUNhY2hlKCk7CiAjZW5kaWYKKyAgICBXZWJQcm9jZXNz
OjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YktpdApJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9SZXNvdXJjZUNhY2hlL1dlYlJl
c291cmNlQ2FjaGVNYW5hZ2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1Jlc291cmNlQ2FjaGUvV2ViUmVzb3VyY2VDYWNoZU1hbmFnZXIuY3BwCShyZXZpc2lv
biA4MjI1MCkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUmVzb3VyY2VDYWNoZS9XZWJS
ZXNvdXJjZUNhY2hlTWFuYWdlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkzLDYgKzkzLDcgQEAg
dm9pZCBXZWJSZXNvdXJjZUNhY2hlTWFuYWdlcjo6Z2V0Q2FjaGVPcgogICAgIH0KIAogICAgIFdl
YlByb2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViUmVzb3Vy
Y2VDYWNoZU1hbmFnZXJQcm94eTo6RGlkR2V0Q2FjaGVPcmlnaW5zKGlkZW50aWZpZXJzLCBjYWxs
YmFja0lEKSwgMCk7CisgICAgV2ViUHJvY2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQb3NzaWJs
ZSgpOwogfQogCiB2b2lkIFdlYlJlc291cmNlQ2FjaGVNYW5hZ2VyOjpjbGVhckNhY2hlRm9yT3Jp
Z2luKFNlY3VyaXR5T3JpZ2luRGF0YSBvcmlnaW5EYXRhKSBjb25zdApAQCAtMTEwLDExICsxMTEs
MTMgQEAgdm9pZCBXZWJSZXNvdXJjZUNhY2hlTWFuYWdlcjo6Y2xlYXJDYWNoZQogCiAgICAgY2xl
YXJDRlVSTENhY2hlRm9ySG9zdE5hbWVzKGhvc3RBcnJheS5nZXQoKSk7CiAjZW5kaWYKKyAgICBX
ZWJQcm9jZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIHZvaWQgV2Vi
UmVzb3VyY2VDYWNoZU1hbmFnZXI6OmNsZWFyQ2FjaGVGb3JBbGxPcmlnaW5zKCkgY29uc3QKIHsK
ICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5jbGVhclJlc291cmNlQ2FjaGVzKCk7CisgICAgV2Vi
UHJvY2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQb3NzaWJsZSgpOwogfQogCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViRGF0YWJhc2VNYW5hZ2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkRhdGFiYXNlTWFuYWdlci5jcHAJKHJldmlzaW9u
IDgyMjUwKQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJE
YXRhYmFzZU1hbmFnZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDUsNiArMTA1LDcgQEAgdm9p
ZCBXZWJEYXRhYmFzZU1hbmFnZXI6OmdldERhdGFiYXNlc0J5TwogICAgIH0KIAogICAgIFdlYlBy
b2Nlc3M6OnNoYXJlZCgpLmNvbm5lY3Rpb24oKS0+c2VuZChNZXNzYWdlczo6V2ViRGF0YWJhc2VN
YW5hZ2VyUHJveHk6OkRpZEdldERhdGFiYXNlc0J5T3JpZ2luKG9yaWdpbkFuZERhdGFiYXNlc1Zl
Y3RvciwgY2FsbGJhY2tJRCksIDApOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLnRlcm1pbmF0
ZUlmUG9zc2libGUoKTsKIH0KIAogdm9pZCBXZWJEYXRhYmFzZU1hbmFnZXI6OmdldERhdGFiYXNl
T3JpZ2lucyh1aW50NjRfdCBjYWxsYmFja0lEKSBjb25zdApAQCAtMTE4LDYgKzExOSw3IEBAIHZv
aWQgV2ViRGF0YWJhc2VNYW5hZ2VyOjpnZXREYXRhYmFzZU9yaWcKICAgICBmb3IgKHNpemVfdCBp
ID0gMDsgaSA8IG51bU9yaWdpbnM7ICsraSkKICAgICAgICAgaWRlbnRpZmllcnNbaV0gPSBvcmln
aW5zW2ldLT5kYXRhYmFzZUlkZW50aWZpZXIoKTsKICAgICBXZWJQcm9jZXNzOjpzaGFyZWQoKS5j
b25uZWN0aW9uKCktPnNlbmQoTWVzc2FnZXM6OldlYkRhdGFiYXNlTWFuYWdlclByb3h5OjpEaWRH
ZXREYXRhYmFzZU9yaWdpbnMoaWRlbnRpZmllcnMsIGNhbGxiYWNrSUQpLCAwKTsKKyAgICBXZWJQ
cm9jZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIHZvaWQgV2ViRGF0
YWJhc2VNYW5hZ2VyOjpkZWxldGVEYXRhYmFzZVdpdGhOYW1lRm9yT3JpZ2luKGNvbnN0IFN0cmlu
ZyYgZGF0YWJhc2VJZGVudGlmaWVyLCBjb25zdCBTdHJpbmcmIG9yaWdpbklkZW50aWZpZXIpIGNv
bnN0CkBAIC0xMjcsNiArMTI5LDcgQEAgdm9pZCBXZWJEYXRhYmFzZU1hbmFnZXI6OmRlbGV0ZURh
dGFiYXNlVwogICAgICAgICByZXR1cm47CiAKICAgICBEYXRhYmFzZVRyYWNrZXI6OnRyYWNrZXIo
KS5kZWxldGVEYXRhYmFzZShvcmlnaW4uZ2V0KCksIGRhdGFiYXNlSWRlbnRpZmllcik7CisgICAg
V2ViUHJvY2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQb3NzaWJsZSgpOwogfQogCiB2b2lkIFdl
YkRhdGFiYXNlTWFuYWdlcjo6ZGVsZXRlRGF0YWJhc2VzRm9yT3JpZ2luKGNvbnN0IFN0cmluZyYg
b3JpZ2luSWRlbnRpZmllcikgY29uc3QKQEAgLTEzNiwxMSArMTM5LDEzIEBAIHZvaWQgV2ViRGF0
YWJhc2VNYW5hZ2VyOjpkZWxldGVEYXRhYmFzZXMKICAgICAgICAgcmV0dXJuOwogCiAgICAgRGF0
YWJhc2VUcmFja2VyOjp0cmFja2VyKCkuZGVsZXRlT3JpZ2luKG9yaWdpbi5nZXQoKSk7CisgICAg
V2ViUHJvY2Vzczo6c2hhcmVkKCkudGVybWluYXRlSWZQb3NzaWJsZSgpOwogfQogCiB2b2lkIFdl
YkRhdGFiYXNlTWFuYWdlcjo6ZGVsZXRlQWxsRGF0YWJhc2VzKCkgY29uc3QKIHsKICAgICBEYXRh
YmFzZVRyYWNrZXI6OnRyYWNrZXIoKS5kZWxldGVBbGxEYXRhYmFzZXMoKTsKKyAgICBXZWJQcm9j
ZXNzOjpzaGFyZWQoKS50ZXJtaW5hdGVJZlBvc3NpYmxlKCk7CiB9CiAKIHZvaWQgV2ViRGF0YWJh
c2VNYW5hZ2VyOjpzZXRRdW90YUZvck9yaWdpbihjb25zdCBTdHJpbmcmIG9yaWdpbklkZW50aWZp
ZXIsIHVuc2lnbmVkIGxvbmcgbG9uZyBxdW90YSkgY29uc3QKQEAgLTE1NCw2ICsxNTksNyBAQCB2
b2lkIFdlYkRhdGFiYXNlTWFuYWdlcjo6c2V0UXVvdGFGb3JPcmlnCiAgICAgICAgIHJldHVybjsK
IAogICAgIERhdGFiYXNlVHJhY2tlcjo6dHJhY2tlcigpLnNldFF1b3RhKG9yaWdpbi5nZXQoKSwg
cXVvdGEpOworICAgIFdlYlByb2Nlc3M6OnNoYXJlZCgpLnRlcm1pbmF0ZUlmUG9zc2libGUoKTsK
IH0KIAogdm9pZCBXZWJEYXRhYmFzZU1hbmFnZXI6OmRpc3BhdGNoRGlkTW9kaWZ5T3JpZ2luKFNl
Y3VyaXR5T3JpZ2luKiBvcmlnaW4pCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>