<?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>77231</bug_id>
          
          <creation_ts>2012-01-27 11:00:50 -0800</creation_ts>
          <short_desc>HTMLPreloadScanner should understand the &lt;base&gt; element</short_desc>
          <delta_ts>2012-01-31 20:08:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Page Loading</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 name="WebKit Review Bot">webkit.review.bot</reporter>
          <assigned_to name="Adam Barth">abarth</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>eric</cc>
    
    <cc>koivisto</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>544190</commentid>
    <comment_count>0</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-27 11:00:50 -0800</bug_when>
    <thetext>HTMLPreloadScanner should understand the &lt;base&gt; element
Requested by abarth_ on #webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544539</commentid>
    <comment_count>1</comment_count>
      <attachid>124407</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-01-27 17:41:28 -0800</bug_when>
    <thetext>Created attachment 124407
sketch (not working)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546636</commentid>
    <comment_count>2</comment_count>
      <attachid>124848</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-01-31 16:45:25 -0800</bug_when>
    <thetext>Created attachment 124848
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546685</commentid>
    <comment_count>3</comment_count>
      <attachid>124848</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-01-31 17:35:35 -0800</bug_when>
    <thetext>Comment on attachment 124848
Patch

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

LGTM.

&gt; Source/WebCore/ChangeLog:9
&gt; +        preloadnig resources.  If there was a &lt;base&gt; tag, this could cause the

ah preloadnig!

&gt; Source/WebCore/html/parser/HTMLPreloadScanner.cpp:219
&gt; +    // The first baseElementURL is the one that counts.

You probably want to say the first &lt;base&gt; element wins.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546703</commentid>
    <comment_count>4</comment_count>
      <attachid>124863</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-01-31 18:03:59 -0800</bug_when>
    <thetext>Created attachment 124863
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546758</commentid>
    <comment_count>5</comment_count>
      <attachid>124863</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-31 20:08:10 -0800</bug_when>
    <thetext>Comment on attachment 124863
Patch for landing

Clearing flags on attachment: 124863

Committed r106426: &lt;http://trac.webkit.org/changeset/106426&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546759</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-31 20:08:15 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124407</attachid>
            <date>2012-01-27 17:41:28 -0800</date>
            <delta_ts>2012-01-31 16:45:21 -0800</delta_ts>
            <desc>sketch (not working)</desc>
            <filename>bug-77231-20120127174127.patch</filename>
            <type>text/plain</type>
            <size>4732</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCShyZXZpc2lvbiAxMDYxNTQpCisrKyBTb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNjAwLDkgKzYwMCwxMiBAQCBw
dWJsaWM6CiAgICAgY29uc3QgS1VSTCYgdXJsKCkgY29uc3QgeyByZXR1cm4gbV91cmw7IH0KICAg
ICB2b2lkIHNldFVSTChjb25zdCBLVVJMJik7CiAKKyAgICAvLyBUbyB1bmRlcnN0YW5kIGhvdyB0
aGVzZSBjb25jZXB0cyByZWxhdGUgdG8gb25lIGFub3RoZXIsIHBsZWFzZSBzZWUgdGhlCisgICAg
Ly8gY29tbWVudHMgc3Vycm91bmRpbmcgdGhlaXIgZGVjbGFyYXRpb24uCiAgICAgY29uc3QgS1VS
TCYgYmFzZVVSTCgpIGNvbnN0IHsgcmV0dXJuIG1fYmFzZVVSTDsgfQogICAgIHZvaWQgc2V0QmFz
ZVVSTE92ZXJyaWRlKGNvbnN0IEtVUkwmKTsKICAgICBjb25zdCBLVVJMJiBiYXNlVVJMT3ZlcnJp
ZGUoKSBjb25zdCB7IHJldHVybiBtX2Jhc2VVUkxPdmVycmlkZTsgfQorICAgIGNvbnN0IEtVUkwm
IGJhc2VFbGVtZW50VVJMKCkgY29uc3QgeyByZXR1cm4gbV9iYXNlRWxlbWVudFVSTDsgfQogICAg
IGNvbnN0IFN0cmluZyYgYmFzZVRhcmdldCgpIGNvbnN0IHsgcmV0dXJuIG1fYmFzZVRhcmdldDsg
fQogICAgIHZvaWQgcHJvY2Vzc0Jhc2VFbGVtZW50KCk7CiAKQEAgLTEyMDEsNyArMTIwNCw3IEBA
IHByaXZhdGU6CiAgICAgLy8gRG9jdW1lbnQgVVJMcy4KICAgICBLVVJMIG1fdXJsOyAvLyBEb2N1
bWVudC5VUkw6IFRoZSBVUkwgZnJvbSB3aGljaCB0aGlzIGRvY3VtZW50IHdhcyByZXRyaWV2ZWQu
CiAgICAgS1VSTCBtX2Jhc2VVUkw7IC8vIE5vZGUuYmFzZVVSSTogVGhlIFVSTCB0byB1c2Ugd2hl
biByZXNvbHZpbmcgcmVsYXRpdmUgVVJMcy4KLSAgICBLVVJMIG1fYmFzZVVSTE92ZXJyaWRlOyAv
LyBBbiBhbHRlcm5hdGl2ZSBiYXNlIFVSTCB0aGF0IHRha2VzIHByZWNlZGVuY2Ugb3ZlIG1fYmFz
ZVVSTCAoYnV0IG5vdCBtX2Jhc2VFbGVtZW50VVJMKS4KKyAgICBLVVJMIG1fYmFzZVVSTE92ZXJy
aWRlOyAvLyBBbiBhbHRlcm5hdGl2ZSBiYXNlIFVSTCB0aGF0IHRha2VzIHByZWNlZGVuY2Ugb3Zl
ciBtX2Jhc2VVUkwgKGJ1dCBub3QgbV9iYXNlRWxlbWVudFVSTCkuCiAgICAgS1VSTCBtX2Jhc2VF
bGVtZW50VVJMOyAvLyBUaGUgVVJMIHNldCBieSB0aGUgPGJhc2U+IGVsZW1lbnQuCiAgICAgS1VS
TCBtX2Nvb2tpZVVSTDsgLy8gVGhlIFVSTCB0byB1c2UgZm9yIGNvb2tpZSBhY2Nlc3MuCiAgICAg
S1VSTCBtX2ZpcnN0UGFydHlGb3JDb29raWVzOyAvLyBUaGUgcG9saWN5IFVSTCBmb3IgdGhpcmQt
cGFydHkgY29va2llIGJsb2NraW5nLgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFByZWxvYWRTY2FubmVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1s
L3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCShyZXZpc2lvbiAxMDYxNTQpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC00Nyw3ICs0Nyw3IEBAIG5hbWVzcGFjZSB7CiAKIGNsYXNzIFByZWxvYWRUYXNrIHsK
IHB1YmxpYzoKLSAgICBQcmVsb2FkVGFzayhjb25zdCBIVE1MVG9rZW4mIHRva2VuKQorICAgIGV4
cGxpY2l0IFByZWxvYWRUYXNrKGNvbnN0IEhUTUxUb2tlbiYgdG9rZW4pCiAgICAgICAgIDogbV90
YWdOYW1lKHRva2VuLm5hbWUoKS5kYXRhKCksIHRva2VuLm5hbWUoKS5zaXplKCkpCiAgICAgICAg
ICwgbV9saW5rSXNTdHlsZVNoZWV0KGZhbHNlKQogICAgICAgICAsIG1fbGlua01lZGlhQXR0cmli
dXRlSXNTY3JlZW4odHJ1ZSkKQEAgLTg3LDYgKzg3LDkgQEAgcHVibGljOgogICAgICAgICAgICAg
ICAgICAgICBzZXRVcmxUb0xvYWQoYXR0cmlidXRlVmFsdWUpOwogICAgICAgICAgICAgICAgIGVs
c2UgaWYgKGF0dHJpYnV0ZU5hbWUgPT0gdHlwZUF0dHIpCiAgICAgICAgICAgICAgICAgICAgIG1f
aW5wdXRJc0ltYWdlID0gZXF1YWxJZ25vcmluZ0Nhc2UoYXR0cmlidXRlVmFsdWUsIElucHV0VHlw
ZU5hbWVzOjppbWFnZSgpKTsKKyAgICAgICAgICAgIH0gZWxzZSBpZiAobV90YWdOYW1lID09IGJh
c2VUYWcpIHsKKyAgICAgICAgICAgICAgICBpZiAoYXR0cmlidXRlTmFtZSA9PSBocmVmQXR0cikK
KyAgICAgICAgICAgICAgICAgICAgbV9iYXNlRWxlbWVudFVSTCA9IEtVUkwoZG9jdW1lbnQtPnVy
bCgpLCBzdHJpcExlYWRpbmdBbmRUcmFpbGluZ0hUTUxTcGFjZXMoYXR0cmlidXRlVmFsdWUpKTsK
ICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTEzNSwxMSArMTM4LDEzIEBAIHB1
YmxpYzoKICAgICB9CiAKICAgICBjb25zdCBBdG9taWNTdHJpbmcmIHRhZ05hbWUoKSBjb25zdCB7
IHJldHVybiBtX3RhZ05hbWU7IH0KKyAgICBjb25zdCBLVVJMJiBiYXNlRWxlbWVudFVSTCgpIGNv
bnN0IHsgcmV0dXJuIG1fYmFzZUVsZW1lbnRVUkw7IH0KIAogcHJpdmF0ZToKICAgICBBdG9taWNT
dHJpbmcgbV90YWdOYW1lOwogICAgIFN0cmluZyBtX3VybFRvTG9hZDsKICAgICBTdHJpbmcgbV9j
aGFyc2V0OworICAgIEtVUkwgbV9iYXNlRWxlbWVudFVSTDsKICAgICBib29sIG1fbGlua0lzU3R5
bGVTaGVldDsKICAgICBib29sIG1fbGlua01lZGlhQXR0cmlidXRlSXNTY3JlZW47CiAgICAgYm9v
bCBtX2lucHV0SXNJbWFnZTsKQEAgLTE2Myw2ICsxNjgsOCBAQCB2b2lkIEhUTUxQcmVsb2FkU2Nh
bm5lcjo6YXBwZW5kVG9FbmQoY29uCiAKIHZvaWQgSFRNTFByZWxvYWRTY2FubmVyOjpzY2FuKCkK
IHsKKyAgICB1cGRhdGVCYXNlVVJMKCk7CisKICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIHNhdmUg
YW5kIHJlLXVzZSB0aGVzZSB0b2tlbnMgaW4gSFRNTERvY3VtZW50UGFyc2VyIGlmCiAgICAgLy8g
dGhlIHBlbmRpbmcgc2NyaXB0IGRvZXNuJ3QgZW5kIHVwIGNhbGxpbmcgZG9jdW1lbnQud3JpdGUu
CiAgICAgd2hpbGUgKG1fdG9rZW5pemVyLT5uZXh0VG9rZW4obV9zb3VyY2UsIG1fdG9rZW4pKSB7
CkBAIC0xOTQsNyArMjAxLDEwIEBAIHZvaWQgSFRNTFByZWxvYWRTY2FubmVyOjpwcm9jZXNzVG9r
ZW4oKQogICAgIGlmICh0YXNrLnRhZ05hbWUoKSA9PSBzdHlsZVRhZykKICAgICAgICAgbV9pblN0
eWxlID0gdHJ1ZTsKIAotICAgIHRhc2sucHJlbG9hZChtX2RvY3VtZW50LCBzY2FubmluZ0JvZHko
KSk7CisgICAgaWYgKHRhc2sudGFnTmFtZSgpID09IGJhc2VUYWcpCisgICAgICAgIHVwZGF0ZUJh
c2VVUkwodGFzay5iYXNlRWxlbWVudFVSTCgpKTsKKworICAgIHRhc2sucHJlbG9hZChtX2RvY3Vt
ZW50LCBzY2FubmluZ0JvZHkoKSwgYmFzZVVSTCgpKTsKIH0KIAogYm9vbCBIVE1MUHJlbG9hZFNj
YW5uZXI6OnNjYW5uaW5nQm9keSgpIGNvbnN0CkBAIC0yMDIsNCArMjEyLDExIEBAIGJvb2wgSFRN
TFByZWxvYWRTY2FubmVyOjpzY2FubmluZ0JvZHkoKSAKICAgICByZXR1cm4gbV9kb2N1bWVudC0+
Ym9keSgpIHx8IG1fYm9keVNlZW47CiB9CiAKK3ZvaWQgSFRNTFByZWxvYWRTY2FubmVyOjp1cGRh
dGVCYXNlVVJMKGNvbnN0IEtVUkwmIGJhc2VFbGVtZW50VVJMKQoreworICAgIGlmICghbV9kb2N1
bWVudC0+YmFzZUVsZW1lbnRVUkwoKS5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKyAgICBt
X2Jhc2VFbGVtZW50VVJMID0gYmFzZUVsZW1lbnRVUkw7Cit9CisKIH0KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5oCShyZXZpc2lvbiAx
MDYxNTQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIu
aAkod29ya2luZyBjb3B5KQpAQCAtNDEsNyArNDEsNyBAQCBjbGFzcyBTZWdtZW50ZWRTdHJpbmc7
CiBjbGFzcyBIVE1MUHJlbG9hZFNjYW5uZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEhU
TUxQcmVsb2FkU2Nhbm5lcik7IFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAg
IEhUTUxQcmVsb2FkU2Nhbm5lcihEb2N1bWVudCopOworICAgIGV4cGxpY2l0IEhUTUxQcmVsb2Fk
U2Nhbm5lcihEb2N1bWVudCopOwogCiAgICAgdm9pZCBhcHBlbmRUb0VuZChjb25zdCBTZWdtZW50
ZWRTdHJpbmcmKTsKICAgICB2b2lkIHNjYW4oKTsKQEAgLTQ5LDYgKzQ5LDcgQEAgcHVibGljOgog
cHJpdmF0ZToKICAgICB2b2lkIHByb2Nlc3NUb2tlbigpOwogICAgIGJvb2wgc2Nhbm5pbmdCb2R5
KCkgY29uc3Q7CisgICAgY29uc3QgS1VSTCYgYmFzZVVSTCgpOwogCiAgICAgRG9jdW1lbnQqIG1f
ZG9jdW1lbnQ7CiAgICAgU2VnbWVudGVkU3RyaW5nIG1fc291cmNlOwpAQCAtNTcsNiArNTgsNyBA
QCBwcml2YXRlOgogICAgIEhUTUxUb2tlbiBtX3Rva2VuOwogICAgIGJvb2wgbV9ib2R5U2VlbjsK
ICAgICBib29sIG1faW5TdHlsZTsKKyAgICBLVVJMIG1fYmFzZUVsZW1lbnRVUkw7CiB9OwogCiB9
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124848</attachid>
            <date>2012-01-31 16:45:25 -0800</date>
            <delta_ts>2012-01-31 18:03:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77231-20120131164524.patch</filename>
            <type>text/plain</type>
            <size>15587</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNjQxMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDEyLTAxLTMxICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSFRNTFByZWxvYWRTY2FubmVyIHNo
b3VsZCB1bmRlcnN0YW5kIHRoZSA8YmFzZT4gZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzcyMzEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQcmV2aW91c2x5LCB0aGUgSFRNTFByZWxvYWRTY2Fu
bmVyIHdvdWxkIGlnbm9yZSB0aGUgPGJhc2U+IGVsZW1lbnQgd2hlbgorICAgICAgICBwcmVsb2Fk
bmlnIHJlc291cmNlcy4gIElmIHRoZXJlIHdhcyBhIDxiYXNlPiB0YWcsIHRoaXMgY291bGQgY2F1
c2UgdGhlCisgICAgICAgIHByZWxvYWQgc2Nhbm5lciB0byBtYWtlIGEgYnVuY2ggb2YgdXNlbGVz
cyByZXF1ZXN0cy4KKworICAgICAgICBUaGlzIHBhdGNoIHRlYWNoZXMgdGhlIHByZWxvYWQgc2Nh
bm5lciB0byB1c2UgPGJhc2U+IHRhZ3MgdG8gYmV0dGVyCisgICAgICAgIHByZWRpY3Qgd2hpY2gg
VVJMcyB3aWxsIGJlIHVzZWQgYnkgdGhlIGRvY3VtZW50LgorCisgICAgICAgIFRlc3RzOiBmYXN0
L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy1zY2FubmVkLXdpbnMuaHRtbAorICAgICAgICAgICAg
ICAgZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctd2lucy5odG1sCisgICAgICAgICAgICAg
ICBmYXN0L3ByZWxvYWRlci91bmRlcnN0YW5kcy1iYXNlLXRhZy5odG1sCisKKyAgICAgICAgKiBk
b20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmNvbXBsZXRlVVJM
KToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgorICAgICAg
ICAoRG9jdW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmJhc2VFbGVtZW50VVJM
KToKKyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6UHJlbG9hZFRhc2spOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6cHJvY2Vzc0F0dHJpYnV0ZXMpOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6cHJlbG9hZCk6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MTmFtZXM6OlByZWxvYWRUYXNrOjpiYXNlRWxlbWVudEhyZWYpOgor
ICAgICAgICAoUHJlbG9hZFRhc2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFByZWxvYWRTY2Fu
bmVyOjpzY2FuKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQcmVsb2FkU2Nhbm5lcjo6cHJvY2Vz
c1Rva2VuKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQcmVsb2FkU2Nhbm5lcjo6dXBkYXRlUHJl
ZGljdGVkQmFzZUVsZW1lbnRVUkwpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogaHRt
bC9wYXJzZXIvSFRNTFByZWxvYWRTY2FubmVyLmg6CisgICAgICAgIChIVE1MUHJlbG9hZFNjYW5u
ZXIpOgorCiAyMDEyLTAxLTMxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+
CiAKICAgICAgICAgVGlsZUNhY2hlOjpzZXROZWVkc0Rpc3BsYXlJblJlY3QgY2xlYW51cApJbmRl
eDogU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCShyZXZpc2lvbiAxMDYzMDQpCisrKyBTb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MDE4LDE5ICs0MDE4LDI0
IEBAIHZvaWQgRG9jdW1lbnQ6OnNldERlY29kZXIoUGFzc1JlZlB0cjxUZXgKICAgICBtX2RlY29k
ZXIgPSBkZWNvZGVyOwogfQogCi1LVVJMIERvY3VtZW50Ojpjb21wbGV0ZVVSTChjb25zdCBTdHJp
bmcmIHVybCkgY29uc3QKK0tVUkwgRG9jdW1lbnQ6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYg
dXJsLCBjb25zdCBLVVJMJiBiYXNlVVJMT3ZlcnJpZGUpIGNvbnN0CiB7CiAgICAgLy8gQWx3YXlz
IHJldHVybiBhIG51bGwgVVJMIHdoZW4gcGFzc2VkIGEgbnVsbCBzdHJpbmcuCiAgICAgLy8gRklY
TUU6IFNob3VsZCB3ZSBjaGFuZ2UgdGhlIEtVUkwgY29uc3RydWN0b3IgdG8gaGF2ZSB0aGlzIGJl
aGF2aW9yPwogICAgIC8vIFNlZSBhbHNvIFtDU1NdU3R5bGVTaGVldDo6Y29tcGxldGVVUkwoY29u
c3QgU3RyaW5nJikKICAgICBpZiAodXJsLmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gS1VSTCgp
OwotICAgIGNvbnN0IEtVUkwmIGJhc2VVUkwgPSAoKG1fYmFzZVVSTC5pc0VtcHR5KCkgfHwgbV9i
YXNlVVJMID09IGJsYW5rVVJMKCkpICYmIHBhcmVudERvY3VtZW50KCkpID8gcGFyZW50RG9jdW1l
bnQoKS0+YmFzZVVSTCgpIDogbV9iYXNlVVJMOworICAgIGNvbnN0IEtVUkwmIGJhc2VVUkwgPSAo
KGJhc2VVUkxPdmVycmlkZS5pc0VtcHR5KCkgfHwgYmFzZVVSTE92ZXJyaWRlID09IGJsYW5rVVJM
KCkpICYmIHBhcmVudERvY3VtZW50KCkpID8gcGFyZW50RG9jdW1lbnQoKS0+YmFzZVVSTCgpIDog
YmFzZVVSTE92ZXJyaWRlOwogICAgIGlmICghbV9kZWNvZGVyKQogICAgICAgICByZXR1cm4gS1VS
TChiYXNlVVJMLCB1cmwpOwogICAgIHJldHVybiBLVVJMKGJhc2VVUkwsIHVybCwgbV9kZWNvZGVy
LT5lbmNvZGluZygpKTsKIH0KIAorS1VSTCBEb2N1bWVudDo6Y29tcGxldGVVUkwoY29uc3QgU3Ry
aW5nJiB1cmwpIGNvbnN0Cit7CisgICAgcmV0dXJuIGNvbXBsZXRlVVJMKHVybCwgbV9iYXNlVVJM
KTsKK30KKwogdm9pZCBEb2N1bWVudDo6c2V0SW5QYWdlQ2FjaGUoYm9vbCBmbGFnKQogewogICAg
IGlmIChtX2luUGFnZUNhY2hlID09IGZsYWcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAkocmV2
aXNpb24gMTA2MzA0KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTYwMCwxMyArNjAwLDE3IEBAIHB1YmxpYzoKICAgICBjb25zdCBLVVJMJiB1cmwo
KSBjb25zdCB7IHJldHVybiBtX3VybDsgfQogICAgIHZvaWQgc2V0VVJMKGNvbnN0IEtVUkwmKTsK
IAorICAgIC8vIFRvIHVuZGVyc3RhbmQgaG93IHRoZXNlIGNvbmNlcHRzIHJlbGF0ZSB0byBvbmUg
YW5vdGhlciwgcGxlYXNlIHNlZSB0aGUKKyAgICAvLyBjb21tZW50cyBzdXJyb3VuZGluZyB0aGVp
ciBkZWNsYXJhdGlvbi4KICAgICBjb25zdCBLVVJMJiBiYXNlVVJMKCkgY29uc3QgeyByZXR1cm4g
bV9iYXNlVVJMOyB9CiAgICAgdm9pZCBzZXRCYXNlVVJMT3ZlcnJpZGUoY29uc3QgS1VSTCYpOwog
ICAgIGNvbnN0IEtVUkwmIGJhc2VVUkxPdmVycmlkZSgpIGNvbnN0IHsgcmV0dXJuIG1fYmFzZVVS
TE92ZXJyaWRlOyB9CisgICAgY29uc3QgS1VSTCYgYmFzZUVsZW1lbnRVUkwoKSBjb25zdCB7IHJl
dHVybiBtX2Jhc2VFbGVtZW50VVJMOyB9CiAgICAgY29uc3QgU3RyaW5nJiBiYXNlVGFyZ2V0KCkg
Y29uc3QgeyByZXR1cm4gbV9iYXNlVGFyZ2V0OyB9CiAgICAgdm9pZCBwcm9jZXNzQmFzZUVsZW1l
bnQoKTsKIAogICAgIEtVUkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CisgICAg
S1VSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBLVVJMJiBiYXNlVVJMT3ZlcnJp
ZGUpIGNvbnN0OwogCiAgICAgdmlydHVhbCBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtVUkwmKSBj
b25zdDsKIApAQCAtMTIwMSw3ICsxMjA1LDcgQEAgcHJpdmF0ZToKICAgICAvLyBEb2N1bWVudCBV
UkxzLgogICAgIEtVUkwgbV91cmw7IC8vIERvY3VtZW50LlVSTDogVGhlIFVSTCBmcm9tIHdoaWNo
IHRoaXMgZG9jdW1lbnQgd2FzIHJldHJpZXZlZC4KICAgICBLVVJMIG1fYmFzZVVSTDsgLy8gTm9k
ZS5iYXNlVVJJOiBUaGUgVVJMIHRvIHVzZSB3aGVuIHJlc29sdmluZyByZWxhdGl2ZSBVUkxzLgot
ICAgIEtVUkwgbV9iYXNlVVJMT3ZlcnJpZGU7IC8vIEFuIGFsdGVybmF0aXZlIGJhc2UgVVJMIHRo
YXQgdGFrZXMgcHJlY2VkZW5jZSBvdmUgbV9iYXNlVVJMIChidXQgbm90IG1fYmFzZUVsZW1lbnRV
UkwpLgorICAgIEtVUkwgbV9iYXNlVVJMT3ZlcnJpZGU7IC8vIEFuIGFsdGVybmF0aXZlIGJhc2Ug
VVJMIHRoYXQgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIG1fYmFzZVVSTCAoYnV0IG5vdCBtX2Jhc2VF
bGVtZW50VVJMKS4KICAgICBLVVJMIG1fYmFzZUVsZW1lbnRVUkw7IC8vIFRoZSBVUkwgc2V0IGJ5
IHRoZSA8YmFzZT4gZWxlbWVudC4KICAgICBLVVJMIG1fY29va2llVVJMOyAvLyBUaGUgVVJMIHRv
IHVzZSBmb3IgY29va2llIGFjY2Vzcy4KICAgICBLVVJMIG1fZmlyc3RQYXJ0eUZvckNvb2tpZXM7
IC8vIFRoZSBwb2xpY3kgVVJMIGZvciB0aGlyZC1wYXJ0eSBjb29raWUgYmxvY2tpbmcuCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5j
cHAJKHJldmlzaW9uIDEwNjMwNCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQ
cmVsb2FkU2Nhbm5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNw
YWNlIHsKIAogY2xhc3MgUHJlbG9hZFRhc2sgewogcHVibGljOgotICAgIFByZWxvYWRUYXNrKGNv
bnN0IEhUTUxUb2tlbiYgdG9rZW4pCisgICAgZXhwbGljaXQgUHJlbG9hZFRhc2soY29uc3QgSFRN
TFRva2VuJiB0b2tlbikKICAgICAgICAgOiBtX3RhZ05hbWUodG9rZW4ubmFtZSgpLmRhdGEoKSwg
dG9rZW4ubmFtZSgpLnNpemUoKSkKICAgICAgICAgLCBtX2xpbmtJc1N0eWxlU2hlZXQoZmFsc2Up
CiAgICAgICAgICwgbV9saW5rTWVkaWFBdHRyaWJ1dGVJc1NjcmVlbih0cnVlKQpAQCAtNjEsNyAr
NjEsOCBAQCBwdWJsaWM6CiAgICAgICAgIGlmIChtX3RhZ05hbWUgIT0gaW1nVGFnCiAgICAgICAg
ICAgICAmJiBtX3RhZ05hbWUgIT0gaW5wdXRUYWcKICAgICAgICAgICAgICYmIG1fdGFnTmFtZSAh
PSBsaW5rVGFnCi0gICAgICAgICAgICAmJiBtX3RhZ05hbWUgIT0gc2NyaXB0VGFnKQorICAgICAg
ICAgICAgJiYgbV90YWdOYW1lICE9IHNjcmlwdFRhZworICAgICAgICAgICAgJiYgbV90YWdOYW1l
ICE9IGJhc2VUYWcpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgZm9yIChIVE1MVG9r
ZW46OkF0dHJpYnV0ZUxpc3Q6OmNvbnN0X2l0ZXJhdG9yIGl0ZXIgPSBhdHRyaWJ1dGVzLmJlZ2lu
KCk7CkBAIC04Nyw2ICs4OCw5IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICAgICAgc2V0VXJs
VG9Mb2FkKGF0dHJpYnV0ZVZhbHVlKTsKICAgICAgICAgICAgICAgICBlbHNlIGlmIChhdHRyaWJ1
dGVOYW1lID09IHR5cGVBdHRyKQogICAgICAgICAgICAgICAgICAgICBtX2lucHV0SXNJbWFnZSA9
IGVxdWFsSWdub3JpbmdDYXNlKGF0dHJpYnV0ZVZhbHVlLCBJbnB1dFR5cGVOYW1lczo6aW1hZ2Uo
KSk7CisgICAgICAgICAgICB9IGVsc2UgaWYgKG1fdGFnTmFtZSA9PSBiYXNlVGFnKSB7CisgICAg
ICAgICAgICAgICAgaWYgKGF0dHJpYnV0ZU5hbWUgPT0gaHJlZkF0dHIpCisgICAgICAgICAgICAg
ICAgICAgIG1fYmFzZUVsZW1lbnRIcmVmID0gc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdIVE1MU3Bh
Y2VzKGF0dHJpYnV0ZVZhbHVlKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAg
LTExOSwxMyArMTIzLDEzIEBAIHB1YmxpYzoKICAgICAgICAgbV91cmxUb0xvYWQgPSBzdHJpcExl
YWRpbmdBbmRUcmFpbGluZ0hUTUxTcGFjZXMoYXR0cmlidXRlVmFsdWUpOwogICAgIH0KIAotICAg
IHZvaWQgcHJlbG9hZChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgc2Nhbm5pbmdCb2R5KQorICAg
IHZvaWQgcHJlbG9hZChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgc2Nhbm5pbmdCb2R5LCBjb25z
dCBLVVJMJiBiYXNlVVJMKQogICAgIHsKICAgICAgICAgaWYgKG1fdXJsVG9Mb2FkLmlzRW1wdHko
KSkKICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICBDYWNoZWRSZXNvdXJjZUxvYWRlciog
Y2FjaGVkUmVzb3VyY2VMb2FkZXIgPSBkb2N1bWVudC0+Y2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsK
LSAgICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgPSBkb2N1bWVudC0+Y29tcGxldGVVUkwo
bV91cmxUb0xvYWQpOworICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCA9IGRvY3VtZW50
LT5jb21wbGV0ZVVSTChtX3VybFRvTG9hZCwgYmFzZVVSTCk7CiAgICAgICAgIGlmIChtX3RhZ05h
bWUgPT0gc2NyaXB0VGFnKQogICAgICAgICAgICAgY2FjaGVkUmVzb3VyY2VMb2FkZXItPnByZWxv
YWQoQ2FjaGVkUmVzb3VyY2U6OlNjcmlwdCwgcmVxdWVzdCwgbV9jaGFyc2V0LCBzY2FubmluZ0Jv
ZHkpOwogICAgICAgICBlbHNlIGlmIChtX3RhZ05hbWUgPT0gaW1nVGFnIHx8IChtX3RhZ05hbWUg
PT0gaW5wdXRUYWcgJiYgbV9pbnB1dElzSW1hZ2UpKQpAQCAtMTM1LDExICsxMzksMTMgQEAgcHVi
bGljOgogICAgIH0KIAogICAgIGNvbnN0IEF0b21pY1N0cmluZyYgdGFnTmFtZSgpIGNvbnN0IHsg
cmV0dXJuIG1fdGFnTmFtZTsgfQorICAgIGNvbnN0IFN0cmluZyYgYmFzZUVsZW1lbnRIcmVmKCkg
Y29uc3QgeyByZXR1cm4gbV9iYXNlRWxlbWVudEhyZWY7IH0KIAogcHJpdmF0ZToKICAgICBBdG9t
aWNTdHJpbmcgbV90YWdOYW1lOwogICAgIFN0cmluZyBtX3VybFRvTG9hZDsKICAgICBTdHJpbmcg
bV9jaGFyc2V0OworICAgIFN0cmluZyBtX2Jhc2VFbGVtZW50SHJlZjsKICAgICBib29sIG1fbGlu
a0lzU3R5bGVTaGVldDsKICAgICBib29sIG1fbGlua01lZGlhQXR0cmlidXRlSXNTY3JlZW47CiAg
ICAgYm9vbCBtX2lucHV0SXNJbWFnZTsKQEAgLTE2Myw2ICsxNjksOSBAQCB2b2lkIEhUTUxQcmVs
b2FkU2Nhbm5lcjo6YXBwZW5kVG9FbmQoY29uCiAKIHZvaWQgSFRNTFByZWxvYWRTY2FubmVyOjpz
Y2FuKCkKIHsKKyAgICAvLyBXaGVuIHdlIHN0YXJ0IHNjYW5uaW5nLCBvdXIgYmVzdCBwcmVkaWN0
aW9uIG9mIHRoZSBiYXNlRWxlbWVudFVSTCBpcyB0aGUgcmVhbCBvbmUhCisgICAgbV9wcmVkaWN0
ZWRCYXNlRWxlbWVudFVSTCA9IG1fZG9jdW1lbnQtPmJhc2VFbGVtZW50VVJMKCk7CisKICAgICAv
LyBGSVhNRTogV2Ugc2hvdWxkIHNhdmUgYW5kIHJlLXVzZSB0aGVzZSB0b2tlbnMgaW4gSFRNTERv
Y3VtZW50UGFyc2VyIGlmCiAgICAgLy8gdGhlIHBlbmRpbmcgc2NyaXB0IGRvZXNuJ3QgZW5kIHVw
IGNhbGxpbmcgZG9jdW1lbnQud3JpdGUuCiAgICAgd2hpbGUgKG1fdG9rZW5pemVyLT5uZXh0VG9r
ZW4obV9zb3VyY2UsIG1fdG9rZW4pKSB7CkBAIC0xOTQsNyArMjAzLDEwIEBAIHZvaWQgSFRNTFBy
ZWxvYWRTY2FubmVyOjpwcm9jZXNzVG9rZW4oKQogICAgIGlmICh0YXNrLnRhZ05hbWUoKSA9PSBz
dHlsZVRhZykKICAgICAgICAgbV9pblN0eWxlID0gdHJ1ZTsKIAotICAgIHRhc2sucHJlbG9hZCht
X2RvY3VtZW50LCBzY2FubmluZ0JvZHkoKSk7CisgICAgaWYgKHRhc2sudGFnTmFtZSgpID09IGJh
c2VUYWcpCisgICAgICAgIHVwZGF0ZVByZWRpY3RlZEJhc2VFbGVtZW50VVJMKEtVUkwobV9kb2N1
bWVudC0+dXJsKCksIHRhc2suYmFzZUVsZW1lbnRIcmVmKCkpKTsKKworICAgIHRhc2sucHJlbG9h
ZChtX2RvY3VtZW50LCBzY2FubmluZ0JvZHkoKSwgbV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTC5p
c0VtcHR5KCkgPyBtX2RvY3VtZW50LT5iYXNlVVJMKCkgOiBtX3ByZWRpY3RlZEJhc2VFbGVtZW50
VVJMKTsKIH0KIAogYm9vbCBIVE1MUHJlbG9hZFNjYW5uZXI6OnNjYW5uaW5nQm9keSgpIGNvbnN0
CkBAIC0yMDIsNCArMjE0LDEyIEBAIGJvb2wgSFRNTFByZWxvYWRTY2FubmVyOjpzY2FubmluZ0Jv
ZHkoKSAKICAgICByZXR1cm4gbV9kb2N1bWVudC0+Ym9keSgpIHx8IG1fYm9keVNlZW47CiB9CiAK
K3ZvaWQgSFRNTFByZWxvYWRTY2FubmVyOjp1cGRhdGVQcmVkaWN0ZWRCYXNlRWxlbWVudFVSTChj
b25zdCBLVVJMJiBiYXNlRWxlbWVudFVSTCkKK3sKKyAgICAvLyBUaGUgZmlyc3QgYmFzZUVsZW1l
bnRVUkwgaXMgdGhlIG9uZSB0aGF0IGNvdW50cy4KKyAgICBpZiAoIW1fcHJlZGljdGVkQmFzZUVs
ZW1lbnRVUkwuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisgICAgbV9wcmVkaWN0ZWRCYXNl
RWxlbWVudFVSTCA9IGJhc2VFbGVtZW50VVJMOworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuaAkocmV2aXNpb24gMTA2MzA0
KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFByZWxvYWRTY2FubmVyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTQxLDcgKzQxLDcgQEAgY2xhc3MgU2VnbWVudGVkU3RyaW5nOwogY2xh
c3MgSFRNTFByZWxvYWRTY2FubmVyIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShIVE1MUHJl
bG9hZFNjYW5uZXIpOyBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKIHB1YmxpYzoKLSAgICBIVE1M
UHJlbG9hZFNjYW5uZXIoRG9jdW1lbnQqKTsKKyAgICBleHBsaWNpdCBIVE1MUHJlbG9hZFNjYW5u
ZXIoRG9jdW1lbnQqKTsKIAogICAgIHZvaWQgYXBwZW5kVG9FbmQoY29uc3QgU2VnbWVudGVkU3Ry
aW5nJik7CiAgICAgdm9pZCBzY2FuKCk7CkBAIC00OSw2ICs0OSw3IEBAIHB1YmxpYzoKIHByaXZh
dGU6CiAgICAgdm9pZCBwcm9jZXNzVG9rZW4oKTsKICAgICBib29sIHNjYW5uaW5nQm9keSgpIGNv
bnN0OworICAgIHZvaWQgdXBkYXRlUHJlZGljdGVkQmFzZUVsZW1lbnRVUkwoY29uc3QgS1VSTCYg
YmFzZUVsZW1lbnRVUkwpOwogCiAgICAgRG9jdW1lbnQqIG1fZG9jdW1lbnQ7CiAgICAgU2VnbWVu
dGVkU3RyaW5nIG1fc291cmNlOwpAQCAtNTcsNiArNTgsNyBAQCBwcml2YXRlOgogICAgIEhUTUxU
b2tlbiBtX3Rva2VuOwogICAgIGJvb2wgbV9ib2R5U2VlbjsKICAgICBib29sIG1faW5TdHlsZTsK
KyAgICBLVVJMIG1fcHJlZGljdGVkQmFzZUVsZW1lbnRVUkw7CiB9OwogCiB9CkluZGV4OiBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShy
ZXZpc2lvbiAxMDY0MTIpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkK
QEAgLTEsMyArMSwyMyBAQAorMjAxMi0wMS0zMSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQu
b3JnPgorCisgICAgICAgIEhUTUxQcmVsb2FkU2Nhbm5lciBzaG91bGQgdW5kZXJzdGFuZCB0aGUg
PGJhc2U+IGVsZW1lbnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTc3MjMxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgVGhlc2UgdGVzdHMgZW5zdXJlIHRoYXQgd2UgdW5kZXJzdGFuZCB0aGUgPGJhc2U+IGVs
ZW1lbnQgYW5kIHRoYXQgd2UKKyAgICAgICAgdW5kZXJzdGFuZCB0aGF0IHRoZSBmaXJzdCA8YmFz
ZT4gZWxlbWVudCBpcyB0aGUgb25lIHRoYXQgbWF0ZXJzLgorCisgICAgICAgICogZmFzdC9wcmVs
b2FkZXIvZmlyc3QtYmFzZS10YWctc2Nhbm5lZC13aW5zLWV4cGVjdGVkLnR4dDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctc2Nhbm5lZC13aW5zLmh0bWw6
IEFkZGVkLgorICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL2ZpcnN0LWJhc2UtdGFnLXdpbnMtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRh
Zy13aW5zLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9i
YXNlLWltYWdlMS5wbmc6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jl
c291cmNlcy9pbWFnZTEucG5nLgorICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9i
YXNlLWltYWdlMi5wbmc6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jl
c291cmNlcy9pbWFnZTEucG5nLgorICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9i
YXNlLWltYWdlMy5wbmc6IENvcGllZCBmcm9tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jl
c291cmNlcy9pbWFnZTEucG5nLgorICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL3VuZGVyc3RhbmRz
LWJhc2UtdGFnLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9wcmVsb2FkZXIv
dW5kZXJzdGFuZHMtYmFzZS10YWcuaHRtbDogQWRkZWQuCisKIDIwMTItMDEtMzEgIE9saXZlciBI
dW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBJbXBsZW1lbnQgRXJyb3Iuc3RhY2sK
SW5kZXg6IExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL2ZpcnN0LWJhc2UtdGFnLXNjYW5uZWQt
d2lucy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2Fk
ZXIvZmlyc3QtYmFzZS10YWctc2Nhbm5lZC13aW5zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
KysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL2ZpcnN0LWJhc2UtdGFnLXNjYW5uZWQtd2lu
cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNyBAQAorYmFzZS1pbWFnZTMu
cG5nIGhhcyBNSU1FIHR5cGUgaW1hZ2UvcG5nCitUaGlzIHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRl
clRyZWUgdG8gc2VlIHRoZSBsb2cgb2Ygd2hhdCByZXNvdXJjZXMgYXJlIGxvYWRlZC4KKworPGJh
c2UgaHJlZj0icmVzb3VyY2VzL2Zvby5odG1sIj4KKzxiYXNlIGhyZWY9ImJvZ3VzL2Zvby5odG1s
Ij4KKzxpbWcgc3JjPSJiYXNlLWltYWdlMy5wbmciPgorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0
L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy1zY2FubmVkLXdpbnMuaHRtbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy1zY2FubmVkLXdpbnMu
aHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL2ZpcnN0LWJh
c2UtdGFnLXNjYW5uZWQtd2lucy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDEzIEBACis8
Ym9keT4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBSZXNvdXJjZVJlc3BvbnNlTUlNRVR5cGVzKCk7Cit9Cis8L3NjcmlwdD4KK1RoaXMg
dGVzdCByZXF1aXJlcyBEdW1wUmVuZGVyVHJlZSB0byBzZWUgdGhlIGxvZyBvZiB3aGF0IHJlc291
cmNlcyBhcmUgbG9hZGVkLgorPHNjcmlwdCBzcmM9cmVzb3VyY2VzL25vbi1leGlzdGFudC5qcz48
L3NjcmlwdD4KKzxzY3JpcHQ+ZG9jdW1lbnQud3JpdGUoIjxwbGFpbnRleHQ+Iik7PC9zY3JpcHQ+
Cis8YmFzZSBocmVmPSJyZXNvdXJjZXMvZm9vLmh0bWwiPgorPGJhc2UgaHJlZj0iYm9ndXMvZm9v
Lmh0bWwiPgorPGltZyBzcmM9ImJhc2UtaW1hZ2UzLnBuZyI+CkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy13aW5zLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy13aW5zLWV4cGVj
dGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL2ZpcnN0
LWJhc2UtdGFnLXdpbnMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDYgQEAK
K2Jhc2UtaW1hZ2UyLnBuZyBoYXMgTUlNRSB0eXBlIGltYWdlL3BuZworVGhpcyB0ZXN0IHJlcXVp
cmVzIER1bXBSZW5kZXJUcmVlIHRvIHNlZSB0aGUgbG9nIG9mIHdoYXQgcmVzb3VyY2VzIGFyZSBs
b2FkZWQuCisKKzxiYXNlIGhyZWY9ImJvZ3VzL2Zvby5odG1sIj4KKzxpbWcgc3JjPSJiYXNlLWlt
YWdlMi5wbmciPgorCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNl
LXRhZy13aW5zLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIv
Zmlyc3QtYmFzZS10YWctd2lucy5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFz
dC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctd2lucy5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDEzIEBACis8Ym9keT4KKzxzY3JpcHQ+CitpZiAod2luZG93LmxheW91dFRlc3RDb250cm9s
bGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgIGxheW91
dFRlc3RDb250cm9sbGVyLmR1bXBSZXNvdXJjZVJlc3BvbnNlTUlNRVR5cGVzKCk7Cit9Cis8L3Nj
cmlwdD4KKzxiYXNlIGhyZWY9InJlc291cmNlcy9mb28uaHRtbCI+CitUaGlzIHRlc3QgcmVxdWly
ZXMgRHVtcFJlbmRlclRyZWUgdG8gc2VlIHRoZSBsb2cgb2Ygd2hhdCByZXNvdXJjZXMgYXJlIGxv
YWRlZC4KKzxzY3JpcHQgc3JjPXJlc291cmNlcy9ub24tZXhpc3RhbnQuanM+PC9zY3JpcHQ+Cis8
c2NyaXB0PmRvY3VtZW50LndyaXRlKCI8cGxhaW50ZXh0PiIpOzwvc2NyaXB0PgorPGJhc2UgaHJl
Zj0iYm9ndXMvZm9vLmh0bWwiPgorPGltZyBzcmM9ImJhc2UtaW1hZ2UyLnBuZyI+CkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci91bmRlcnN0YW5kcy1iYXNlLXRhZy1leHBlY3RlZC50
eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvdW5kZXJzdGFuZHMt
YmFzZS10YWctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvZmFzdC9w
cmVsb2FkZXIvdW5kZXJzdGFuZHMtYmFzZS10YWctZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDYgQEAKK2Jhc2UtaW1hZ2UxLnBuZyBoYXMgTUlNRSB0eXBlIGltYWdlL3BuZwor
VGhpcyB0ZXN0IHJlcXVpcmVzIER1bXBSZW5kZXJUcmVlIHRvIHNlZSB0aGUgbG9nIG9mIHdoYXQg
cmVzb3VyY2VzIGFyZSBsb2FkZWQuCisKKzxiYXNlIGhyZWY9InJlc291cmNlcy9mb28uaHRtbCI+
Cis8aW1nIHNyYz0iYmFzZS1pbWFnZTEucG5nIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9w
cmVsb2FkZXIvdW5kZXJzdGFuZHMtYmFzZS10YWcuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9mYXN0L3ByZWxvYWRlci91bmRlcnN0YW5kcy1iYXNlLXRhZy5odG1sCShyZXZpc2lvbiAw
KQorKysgTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvdW5kZXJzdGFuZHMtYmFzZS10YWcuaHRt
bAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMiBAQAorPGJvZHk+Cis8c2NyaXB0PgoraWYgKHdp
bmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1
bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wUmVzb3VyY2VSZXNwb25z
ZU1JTUVUeXBlcygpOworfQorPC9zY3JpcHQ+CitUaGlzIHRlc3QgcmVxdWlyZXMgRHVtcFJlbmRl
clRyZWUgdG8gc2VlIHRoZSBsb2cgb2Ygd2hhdCByZXNvdXJjZXMgYXJlIGxvYWRlZC4KKzxzY3Jp
cHQgc3JjPXJlc291cmNlcy9ub24tZXhpc3RhbnQuanM+PC9zY3JpcHQ+Cis8c2NyaXB0PmRvY3Vt
ZW50LndyaXRlKCI8cGxhaW50ZXh0PiIpOzwvc2NyaXB0PgorPGJhc2UgaHJlZj0icmVzb3VyY2Vz
L2Zvby5odG1sIj4KKzxpbWcgc3JjPSJiYXNlLWltYWdlMS5wbmciPgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2Jhc2UtaW1hZ2UxLnBuZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvYmFzZS1pbWFnZTEucG5nCShy
ZXZpc2lvbiAxMDYzMDQpCShmcm9tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jlc291cmNl
cy9pbWFnZTEucG5nOjEwNjMwNCkKKysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jlc291
cmNlcy9iYXNlLWltYWdlMS5wbmcJKHdvcmtpbmcgY29weSkKSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvcHJlbG9hZGVyL3Jlc291cmNlcy9iYXNlLWltYWdlMi5wbmcKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2Jhc2UtaW1hZ2UyLnBuZwkocmV2aXNp
b24gMTA2MzA0KQkoZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvaW1h
Z2UxLnBuZzoxMDYzMDQpCisrKyBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMv
YmFzZS1pbWFnZTIucG5nCSh3b3JraW5nIGNvcHkpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3By
ZWxvYWRlci9yZXNvdXJjZXMvYmFzZS1pbWFnZTMucG5nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL2Zhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9iYXNlLWltYWdlMy5wbmcJKHJldmlzaW9uIDEw
NjMwNCkJKGZyb20gTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2ltYWdlMS5w
bmc6MTA2MzA0KQorKysgTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2Jhc2Ut
aW1hZ2UzLnBuZwkod29ya2luZyBjb3B5KQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124863</attachid>
            <date>2012-01-31 18:03:59 -0800</date>
            <delta_ts>2012-01-31 20:08:10 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-77231-20120131180358.patch</filename>
            <type>text/plain</type>
            <size>15579</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNjQxMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDEyLTAxLTMxICBBZGFtIEJh
cnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSFRNTFByZWxvYWRTY2FubmVyIHNo
b3VsZCB1bmRlcnN0YW5kIHRoZSA8YmFzZT4gZWxlbWVudAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzcyMzEKKworICAgICAgICBSZXZpZXdlZCBieSBF
cmljIFNlaWRlbC4KKworICAgICAgICBQcmV2aW91c2x5LCB0aGUgSFRNTFByZWxvYWRTY2FubmVy
IHdvdWxkIGlnbm9yZSB0aGUgPGJhc2U+IGVsZW1lbnQgd2hlbgorICAgICAgICBwcmVsb2FkaW5n
IHJlc291cmNlcy4gIElmIHRoZXJlIHdhcyBhIDxiYXNlPiB0YWcsIHRoaXMgY291bGQgY2F1c2Ug
dGhlCisgICAgICAgIHByZWxvYWQgc2Nhbm5lciB0byBtYWtlIGEgYnVuY2ggb2YgdXNlbGVzcyBy
ZXF1ZXN0cy4KKworICAgICAgICBUaGlzIHBhdGNoIHRlYWNoZXMgdGhlIHByZWxvYWQgc2Nhbm5l
ciB0byB1c2UgPGJhc2U+IHRhZ3MgdG8gYmV0dGVyCisgICAgICAgIHByZWRpY3Qgd2hpY2ggVVJM
cyB3aWxsIGJlIHVzZWQgYnkgdGhlIGRvY3VtZW50LgorCisgICAgICAgIFRlc3RzOiBmYXN0L3By
ZWxvYWRlci9maXJzdC1iYXNlLXRhZy1zY2FubmVkLXdpbnMuaHRtbAorICAgICAgICAgICAgICAg
ZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctd2lucy5odG1sCisgICAgICAgICAgICAgICBm
YXN0L3ByZWxvYWRlci91bmRlcnN0YW5kcy1iYXNlLXRhZy5odG1sCisKKyAgICAgICAgKiBkb20v
RG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmNvbXBsZXRlVVJMKToK
KyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5oOgorICAgICAgICAo
RG9jdW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmJhc2VFbGVtZW50VVJMKToK
KyAgICAgICAgKiBodG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6UHJlbG9hZFRhc2spOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6cHJvY2Vzc0F0dHJpYnV0ZXMpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTE5hbWVzOjpQcmVsb2FkVGFzazo6cHJlbG9hZCk6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MTmFtZXM6OlByZWxvYWRUYXNrOjpiYXNlRWxlbWVudEhyZWYpOgorICAg
ICAgICAoUHJlbG9hZFRhc2spOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFByZWxvYWRTY2FubmVy
OjpzY2FuKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQcmVsb2FkU2Nhbm5lcjo6cHJvY2Vzc1Rv
a2VuKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQcmVsb2FkU2Nhbm5lcjo6dXBkYXRlUHJlZGlj
dGVkQmFzZUVsZW1lbnRVUkwpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogaHRtbC9w
YXJzZXIvSFRNTFByZWxvYWRTY2FubmVyLmg6CisgICAgICAgIChIVE1MUHJlbG9hZFNjYW5uZXIp
OgorCiAyMDEyLTAxLTMxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAK
ICAgICAgICAgVGlsZUNhY2hlOjpzZXROZWVkc0Rpc3BsYXlJblJlY3QgY2xlYW51cApJbmRleDog
U291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9kb20vRG9jdW1lbnQuY3BwCShyZXZpc2lvbiAxMDYzMDQpCisrKyBTb3VyY2UvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MDE4LDE5ICs0MDE4LDI0IEBA
IHZvaWQgRG9jdW1lbnQ6OnNldERlY29kZXIoUGFzc1JlZlB0cjxUZXgKICAgICBtX2RlY29kZXIg
PSBkZWNvZGVyOwogfQogCi1LVVJMIERvY3VtZW50Ojpjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcm
IHVybCkgY29uc3QKK0tVUkwgRG9jdW1lbnQ6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJs
LCBjb25zdCBLVVJMJiBiYXNlVVJMT3ZlcnJpZGUpIGNvbnN0CiB7CiAgICAgLy8gQWx3YXlzIHJl
dHVybiBhIG51bGwgVVJMIHdoZW4gcGFzc2VkIGEgbnVsbCBzdHJpbmcuCiAgICAgLy8gRklYTUU6
IFNob3VsZCB3ZSBjaGFuZ2UgdGhlIEtVUkwgY29uc3RydWN0b3IgdG8gaGF2ZSB0aGlzIGJlaGF2
aW9yPwogICAgIC8vIFNlZSBhbHNvIFtDU1NdU3R5bGVTaGVldDo6Y29tcGxldGVVUkwoY29uc3Qg
U3RyaW5nJikKICAgICBpZiAodXJsLmlzTnVsbCgpKQogICAgICAgICByZXR1cm4gS1VSTCgpOwot
ICAgIGNvbnN0IEtVUkwmIGJhc2VVUkwgPSAoKG1fYmFzZVVSTC5pc0VtcHR5KCkgfHwgbV9iYXNl
VVJMID09IGJsYW5rVVJMKCkpICYmIHBhcmVudERvY3VtZW50KCkpID8gcGFyZW50RG9jdW1lbnQo
KS0+YmFzZVVSTCgpIDogbV9iYXNlVVJMOworICAgIGNvbnN0IEtVUkwmIGJhc2VVUkwgPSAoKGJh
c2VVUkxPdmVycmlkZS5pc0VtcHR5KCkgfHwgYmFzZVVSTE92ZXJyaWRlID09IGJsYW5rVVJMKCkp
ICYmIHBhcmVudERvY3VtZW50KCkpID8gcGFyZW50RG9jdW1lbnQoKS0+YmFzZVVSTCgpIDogYmFz
ZVVSTE92ZXJyaWRlOwogICAgIGlmICghbV9kZWNvZGVyKQogICAgICAgICByZXR1cm4gS1VSTChi
YXNlVVJMLCB1cmwpOwogICAgIHJldHVybiBLVVJMKGJhc2VVUkwsIHVybCwgbV9kZWNvZGVyLT5l
bmNvZGluZygpKTsKIH0KIAorS1VSTCBEb2N1bWVudDo6Y29tcGxldGVVUkwoY29uc3QgU3RyaW5n
JiB1cmwpIGNvbnN0Cit7CisgICAgcmV0dXJuIGNvbXBsZXRlVVJMKHVybCwgbV9iYXNlVVJMKTsK
K30KKwogdm9pZCBEb2N1bWVudDo6c2V0SW5QYWdlQ2FjaGUoYm9vbCBmbGFnKQogewogICAgIGlm
IChtX2luUGFnZUNhY2hlID09IGZsYWcpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1l
bnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuaAkocmV2aXNp
b24gMTA2MzA0KQorKysgU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTYwMCwxMyArNjAwLDE3IEBAIHB1YmxpYzoKICAgICBjb25zdCBLVVJMJiB1cmwoKSBj
b25zdCB7IHJldHVybiBtX3VybDsgfQogICAgIHZvaWQgc2V0VVJMKGNvbnN0IEtVUkwmKTsKIAor
ICAgIC8vIFRvIHVuZGVyc3RhbmQgaG93IHRoZXNlIGNvbmNlcHRzIHJlbGF0ZSB0byBvbmUgYW5v
dGhlciwgcGxlYXNlIHNlZSB0aGUKKyAgICAvLyBjb21tZW50cyBzdXJyb3VuZGluZyB0aGVpciBk
ZWNsYXJhdGlvbi4KICAgICBjb25zdCBLVVJMJiBiYXNlVVJMKCkgY29uc3QgeyByZXR1cm4gbV9i
YXNlVVJMOyB9CiAgICAgdm9pZCBzZXRCYXNlVVJMT3ZlcnJpZGUoY29uc3QgS1VSTCYpOwogICAg
IGNvbnN0IEtVUkwmIGJhc2VVUkxPdmVycmlkZSgpIGNvbnN0IHsgcmV0dXJuIG1fYmFzZVVSTE92
ZXJyaWRlOyB9CisgICAgY29uc3QgS1VSTCYgYmFzZUVsZW1lbnRVUkwoKSBjb25zdCB7IHJldHVy
biBtX2Jhc2VFbGVtZW50VVJMOyB9CiAgICAgY29uc3QgU3RyaW5nJiBiYXNlVGFyZ2V0KCkgY29u
c3QgeyByZXR1cm4gbV9iYXNlVGFyZ2V0OyB9CiAgICAgdm9pZCBwcm9jZXNzQmFzZUVsZW1lbnQo
KTsKIAogICAgIEtVUkwgY29tcGxldGVVUkwoY29uc3QgU3RyaW5nJikgY29uc3Q7CisgICAgS1VS
TCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmLCBjb25zdCBLVVJMJiBiYXNlVVJMT3ZlcnJpZGUp
IGNvbnN0OwogCiAgICAgdmlydHVhbCBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtVUkwmKSBjb25z
dDsKIApAQCAtMTIwMSw3ICsxMjA1LDcgQEAgcHJpdmF0ZToKICAgICAvLyBEb2N1bWVudCBVUkxz
LgogICAgIEtVUkwgbV91cmw7IC8vIERvY3VtZW50LlVSTDogVGhlIFVSTCBmcm9tIHdoaWNoIHRo
aXMgZG9jdW1lbnQgd2FzIHJldHJpZXZlZC4KICAgICBLVVJMIG1fYmFzZVVSTDsgLy8gTm9kZS5i
YXNlVVJJOiBUaGUgVVJMIHRvIHVzZSB3aGVuIHJlc29sdmluZyByZWxhdGl2ZSBVUkxzLgotICAg
IEtVUkwgbV9iYXNlVVJMT3ZlcnJpZGU7IC8vIEFuIGFsdGVybmF0aXZlIGJhc2UgVVJMIHRoYXQg
dGFrZXMgcHJlY2VkZW5jZSBvdmUgbV9iYXNlVVJMIChidXQgbm90IG1fYmFzZUVsZW1lbnRVUkwp
LgorICAgIEtVUkwgbV9iYXNlVVJMT3ZlcnJpZGU7IC8vIEFuIGFsdGVybmF0aXZlIGJhc2UgVVJM
IHRoYXQgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIG1fYmFzZVVSTCAoYnV0IG5vdCBtX2Jhc2VFbGVt
ZW50VVJMKS4KICAgICBLVVJMIG1fYmFzZUVsZW1lbnRVUkw7IC8vIFRoZSBVUkwgc2V0IGJ5IHRo
ZSA8YmFzZT4gZWxlbWVudC4KICAgICBLVVJMIG1fY29va2llVVJMOyAvLyBUaGUgVVJMIHRvIHVz
ZSBmb3IgY29va2llIGFjY2Vzcy4KICAgICBLVVJMIG1fZmlyc3RQYXJ0eUZvckNvb2tpZXM7IC8v
IFRoZSBwb2xpY3kgVVJMIGZvciB0aGlyZC1wYXJ0eSBjb29raWUgYmxvY2tpbmcuCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MUHJlbG9hZFNjYW5uZXIuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5jcHAJ
KHJldmlzaW9uIDEwNjMwNCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVs
b2FkU2Nhbm5lci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDcgKzQ3LDcgQEAgbmFtZXNwYWNl
IHsKIAogY2xhc3MgUHJlbG9hZFRhc2sgewogcHVibGljOgotICAgIFByZWxvYWRUYXNrKGNvbnN0
IEhUTUxUb2tlbiYgdG9rZW4pCisgICAgZXhwbGljaXQgUHJlbG9hZFRhc2soY29uc3QgSFRNTFRv
a2VuJiB0b2tlbikKICAgICAgICAgOiBtX3RhZ05hbWUodG9rZW4ubmFtZSgpLmRhdGEoKSwgdG9r
ZW4ubmFtZSgpLnNpemUoKSkKICAgICAgICAgLCBtX2xpbmtJc1N0eWxlU2hlZXQoZmFsc2UpCiAg
ICAgICAgICwgbV9saW5rTWVkaWFBdHRyaWJ1dGVJc1NjcmVlbih0cnVlKQpAQCAtNjEsNyArNjEs
OCBAQCBwdWJsaWM6CiAgICAgICAgIGlmIChtX3RhZ05hbWUgIT0gaW1nVGFnCiAgICAgICAgICAg
ICAmJiBtX3RhZ05hbWUgIT0gaW5wdXRUYWcKICAgICAgICAgICAgICYmIG1fdGFnTmFtZSAhPSBs
aW5rVGFnCi0gICAgICAgICAgICAmJiBtX3RhZ05hbWUgIT0gc2NyaXB0VGFnKQorICAgICAgICAg
ICAgJiYgbV90YWdOYW1lICE9IHNjcmlwdFRhZworICAgICAgICAgICAgJiYgbV90YWdOYW1lICE9
IGJhc2VUYWcpCiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgZm9yIChIVE1MVG9rZW46
OkF0dHJpYnV0ZUxpc3Q6OmNvbnN0X2l0ZXJhdG9yIGl0ZXIgPSBhdHRyaWJ1dGVzLmJlZ2luKCk7
CkBAIC04Nyw2ICs4OCw5IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICAgICAgc2V0VXJsVG9M
b2FkKGF0dHJpYnV0ZVZhbHVlKTsKICAgICAgICAgICAgICAgICBlbHNlIGlmIChhdHRyaWJ1dGVO
YW1lID09IHR5cGVBdHRyKQogICAgICAgICAgICAgICAgICAgICBtX2lucHV0SXNJbWFnZSA9IGVx
dWFsSWdub3JpbmdDYXNlKGF0dHJpYnV0ZVZhbHVlLCBJbnB1dFR5cGVOYW1lczo6aW1hZ2UoKSk7
CisgICAgICAgICAgICB9IGVsc2UgaWYgKG1fdGFnTmFtZSA9PSBiYXNlVGFnKSB7CisgICAgICAg
ICAgICAgICAgaWYgKGF0dHJpYnV0ZU5hbWUgPT0gaHJlZkF0dHIpCisgICAgICAgICAgICAgICAg
ICAgIG1fYmFzZUVsZW1lbnRIcmVmID0gc3RyaXBMZWFkaW5nQW5kVHJhaWxpbmdIVE1MU3BhY2Vz
KGF0dHJpYnV0ZVZhbHVlKTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KQEAgLTEx
OSwxMyArMTIzLDEzIEBAIHB1YmxpYzoKICAgICAgICAgbV91cmxUb0xvYWQgPSBzdHJpcExlYWRp
bmdBbmRUcmFpbGluZ0hUTUxTcGFjZXMoYXR0cmlidXRlVmFsdWUpOwogICAgIH0KIAotICAgIHZv
aWQgcHJlbG9hZChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgc2Nhbm5pbmdCb2R5KQorICAgIHZv
aWQgcHJlbG9hZChEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgc2Nhbm5pbmdCb2R5LCBjb25zdCBL
VVJMJiBiYXNlVVJMKQogICAgIHsKICAgICAgICAgaWYgKG1fdXJsVG9Mb2FkLmlzRW1wdHkoKSkK
ICAgICAgICAgICAgIHJldHVybjsKIAogICAgICAgICBDYWNoZWRSZXNvdXJjZUxvYWRlciogY2Fj
aGVkUmVzb3VyY2VMb2FkZXIgPSBkb2N1bWVudC0+Y2FjaGVkUmVzb3VyY2VMb2FkZXIoKTsKLSAg
ICAgICAgUmVzb3VyY2VSZXF1ZXN0IHJlcXVlc3QgPSBkb2N1bWVudC0+Y29tcGxldGVVUkwobV91
cmxUb0xvYWQpOworICAgICAgICBSZXNvdXJjZVJlcXVlc3QgcmVxdWVzdCA9IGRvY3VtZW50LT5j
b21wbGV0ZVVSTChtX3VybFRvTG9hZCwgYmFzZVVSTCk7CiAgICAgICAgIGlmIChtX3RhZ05hbWUg
PT0gc2NyaXB0VGFnKQogICAgICAgICAgICAgY2FjaGVkUmVzb3VyY2VMb2FkZXItPnByZWxvYWQo
Q2FjaGVkUmVzb3VyY2U6OlNjcmlwdCwgcmVxdWVzdCwgbV9jaGFyc2V0LCBzY2FubmluZ0JvZHkp
OwogICAgICAgICBlbHNlIGlmIChtX3RhZ05hbWUgPT0gaW1nVGFnIHx8IChtX3RhZ05hbWUgPT0g
aW5wdXRUYWcgJiYgbV9pbnB1dElzSW1hZ2UpKQpAQCAtMTM1LDExICsxMzksMTMgQEAgcHVibGlj
OgogICAgIH0KIAogICAgIGNvbnN0IEF0b21pY1N0cmluZyYgdGFnTmFtZSgpIGNvbnN0IHsgcmV0
dXJuIG1fdGFnTmFtZTsgfQorICAgIGNvbnN0IFN0cmluZyYgYmFzZUVsZW1lbnRIcmVmKCkgY29u
c3QgeyByZXR1cm4gbV9iYXNlRWxlbWVudEhyZWY7IH0KIAogcHJpdmF0ZToKICAgICBBdG9taWNT
dHJpbmcgbV90YWdOYW1lOwogICAgIFN0cmluZyBtX3VybFRvTG9hZDsKICAgICBTdHJpbmcgbV9j
aGFyc2V0OworICAgIFN0cmluZyBtX2Jhc2VFbGVtZW50SHJlZjsKICAgICBib29sIG1fbGlua0lz
U3R5bGVTaGVldDsKICAgICBib29sIG1fbGlua01lZGlhQXR0cmlidXRlSXNTY3JlZW47CiAgICAg
Ym9vbCBtX2lucHV0SXNJbWFnZTsKQEAgLTE2Myw2ICsxNjksOSBAQCB2b2lkIEhUTUxQcmVsb2Fk
U2Nhbm5lcjo6YXBwZW5kVG9FbmQoY29uCiAKIHZvaWQgSFRNTFByZWxvYWRTY2FubmVyOjpzY2Fu
KCkKIHsKKyAgICAvLyBXaGVuIHdlIHN0YXJ0IHNjYW5uaW5nLCBvdXIgYmVzdCBwcmVkaWN0aW9u
IG9mIHRoZSBiYXNlRWxlbWVudFVSTCBpcyB0aGUgcmVhbCBvbmUhCisgICAgbV9wcmVkaWN0ZWRC
YXNlRWxlbWVudFVSTCA9IG1fZG9jdW1lbnQtPmJhc2VFbGVtZW50VVJMKCk7CisKICAgICAvLyBG
SVhNRTogV2Ugc2hvdWxkIHNhdmUgYW5kIHJlLXVzZSB0aGVzZSB0b2tlbnMgaW4gSFRNTERvY3Vt
ZW50UGFyc2VyIGlmCiAgICAgLy8gdGhlIHBlbmRpbmcgc2NyaXB0IGRvZXNuJ3QgZW5kIHVwIGNh
bGxpbmcgZG9jdW1lbnQud3JpdGUuCiAgICAgd2hpbGUgKG1fdG9rZW5pemVyLT5uZXh0VG9rZW4o
bV9zb3VyY2UsIG1fdG9rZW4pKSB7CkBAIC0xOTQsNyArMjAzLDEwIEBAIHZvaWQgSFRNTFByZWxv
YWRTY2FubmVyOjpwcm9jZXNzVG9rZW4oKQogICAgIGlmICh0YXNrLnRhZ05hbWUoKSA9PSBzdHls
ZVRhZykKICAgICAgICAgbV9pblN0eWxlID0gdHJ1ZTsKIAotICAgIHRhc2sucHJlbG9hZChtX2Rv
Y3VtZW50LCBzY2FubmluZ0JvZHkoKSk7CisgICAgaWYgKHRhc2sudGFnTmFtZSgpID09IGJhc2VU
YWcpCisgICAgICAgIHVwZGF0ZVByZWRpY3RlZEJhc2VFbGVtZW50VVJMKEtVUkwobV9kb2N1bWVu
dC0+dXJsKCksIHRhc2suYmFzZUVsZW1lbnRIcmVmKCkpKTsKKworICAgIHRhc2sucHJlbG9hZCht
X2RvY3VtZW50LCBzY2FubmluZ0JvZHkoKSwgbV9wcmVkaWN0ZWRCYXNlRWxlbWVudFVSTC5pc0Vt
cHR5KCkgPyBtX2RvY3VtZW50LT5iYXNlVVJMKCkgOiBtX3ByZWRpY3RlZEJhc2VFbGVtZW50VVJM
KTsKIH0KIAogYm9vbCBIVE1MUHJlbG9hZFNjYW5uZXI6OnNjYW5uaW5nQm9keSgpIGNvbnN0CkBA
IC0yMDIsNCArMjE0LDEyIEBAIGJvb2wgSFRNTFByZWxvYWRTY2FubmVyOjpzY2FubmluZ0JvZHko
KSAKICAgICByZXR1cm4gbV9kb2N1bWVudC0+Ym9keSgpIHx8IG1fYm9keVNlZW47CiB9CiAKK3Zv
aWQgSFRNTFByZWxvYWRTY2FubmVyOjp1cGRhdGVQcmVkaWN0ZWRCYXNlRWxlbWVudFVSTChjb25z
dCBLVVJMJiBiYXNlRWxlbWVudFVSTCkKK3sKKyAgICAvLyBUaGUgZmlyc3QgPGJhc2U+IGVsZW1l
bnQgaXMgdGhlIG9uZSB0aGF0IHdpbnMuCisgICAgaWYgKCFtX3ByZWRpY3RlZEJhc2VFbGVtZW50
VVJMLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOworICAgIG1fcHJlZGljdGVkQmFzZUVsZW1l
bnRVUkwgPSBiYXNlRWxlbWVudFVSTDsKK30KKwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9wYXJzZXIvSFRNTFByZWxvYWRTY2FubmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvaHRtbC9wYXJzZXIvSFRNTFByZWxvYWRTY2FubmVyLmgJKHJldmlzaW9uIDEwNjMwNCkKKysr
IFNvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxQcmVsb2FkU2Nhbm5lci5oCSh3b3JraW5n
IGNvcHkpCkBAIC00MSw3ICs0MSw3IEBAIGNsYXNzIFNlZ21lbnRlZFN0cmluZzsKIGNsYXNzIEhU
TUxQcmVsb2FkU2Nhbm5lciB7CiAgICAgV1RGX01BS0VfTk9OQ09QWUFCTEUoSFRNTFByZWxvYWRT
Y2FubmVyKTsgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6Ci0gICAgSFRNTFByZWxv
YWRTY2FubmVyKERvY3VtZW50Kik7CisgICAgZXhwbGljaXQgSFRNTFByZWxvYWRTY2FubmVyKERv
Y3VtZW50Kik7CiAKICAgICB2b2lkIGFwcGVuZFRvRW5kKGNvbnN0IFNlZ21lbnRlZFN0cmluZyYp
OwogICAgIHZvaWQgc2NhbigpOwpAQCAtNDksNiArNDksNyBAQCBwdWJsaWM6CiBwcml2YXRlOgog
ICAgIHZvaWQgcHJvY2Vzc1Rva2VuKCk7CiAgICAgYm9vbCBzY2FubmluZ0JvZHkoKSBjb25zdDsK
KyAgICB2b2lkIHVwZGF0ZVByZWRpY3RlZEJhc2VFbGVtZW50VVJMKGNvbnN0IEtVUkwmIGJhc2VF
bGVtZW50VVJMKTsKIAogICAgIERvY3VtZW50KiBtX2RvY3VtZW50OwogICAgIFNlZ21lbnRlZFN0
cmluZyBtX3NvdXJjZTsKQEAgLTU3LDYgKzU4LDcgQEAgcHJpdmF0ZToKICAgICBIVE1MVG9rZW4g
bV90b2tlbjsKICAgICBib29sIG1fYm9keVNlZW47CiAgICAgYm9vbCBtX2luU3R5bGU7CisgICAg
S1VSTCBtX3ByZWRpY3RlZEJhc2VFbGVtZW50VVJMOwogfTsKIAogfQpJbmRleDogTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNp
b24gMTA2NDEyKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMjMgQEAKKzIwMTItMDEtMzEgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4K
KworICAgICAgICBIVE1MUHJlbG9hZFNjYW5uZXIgc2hvdWxkIHVuZGVyc3RhbmQgdGhlIDxiYXNl
PiBlbGVtZW50CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD03NzIzMQorCisgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgorCisgICAgICAgIFRo
ZXNlIHRlc3RzIGVuc3VyZSB0aGF0IHdlIHVuZGVyc3RhbmQgdGhlIDxiYXNlPiBlbGVtZW50IGFu
ZCB0aGF0IHdlCisgICAgICAgIHVuZGVyc3RhbmQgdGhhdCB0aGUgZmlyc3QgPGJhc2U+IGVsZW1l
bnQgaXMgdGhlIG9uZSB0aGF0IG1hdGVycy4KKworICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL2Zp
cnN0LWJhc2UtdGFnLXNjYW5uZWQtd2lucy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IGZhc3QvcHJlbG9hZGVyL2ZpcnN0LWJhc2UtdGFnLXNjYW5uZWQtd2lucy5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy13aW5zLWV4cGVjdGVkLnR4
dDogQWRkZWQuCisgICAgICAgICogZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctd2lucy5o
dG1sOiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvYmFzZS1pbWFn
ZTEucG5nOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMv
aW1hZ2UxLnBuZy4KKyAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvYmFzZS1pbWFn
ZTIucG5nOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMv
aW1hZ2UxLnBuZy4KKyAgICAgICAgKiBmYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvYmFzZS1pbWFn
ZTMucG5nOiBDb3BpZWQgZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMv
aW1hZ2UxLnBuZy4KKyAgICAgICAgKiBmYXN0L3ByZWxvYWRlci91bmRlcnN0YW5kcy1iYXNlLXRh
Zy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvcHJlbG9hZGVyL3VuZGVyc3Rh
bmRzLWJhc2UtdGFnLmh0bWw6IEFkZGVkLgorCiAyMDEyLTAxLTMxICBPbGl2ZXIgSHVudCAgPG9s
aXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgSW1wbGVtZW50IEVycm9yLnN0YWNrCkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy1zY2FubmVkLXdpbnMtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL2ZpcnN0
LWJhc2UtdGFnLXNjYW5uZWQtd2lucy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlv
dXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy1zY2FubmVkLXdpbnMtZXhwZWN0
ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDcgQEAKK2Jhc2UtaW1hZ2UzLnBuZyBoYXMg
TUlNRSB0eXBlIGltYWdlL3BuZworVGhpcyB0ZXN0IHJlcXVpcmVzIER1bXBSZW5kZXJUcmVlIHRv
IHNlZSB0aGUgbG9nIG9mIHdoYXQgcmVzb3VyY2VzIGFyZSBsb2FkZWQuCisKKzxiYXNlIGhyZWY9
InJlc291cmNlcy9mb28uaHRtbCI+Cis8YmFzZSBocmVmPSJib2d1cy9mb28uaHRtbCI+Cis8aW1n
IHNyYz0iYmFzZS1pbWFnZTMucG5nIj4KKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2Fk
ZXIvZmlyc3QtYmFzZS10YWctc2Nhbm5lZC13aW5zLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctc2Nhbm5lZC13aW5zLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRhZy1z
Y2FubmVkLXdpbnMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBAQAorPGJvZHk+Cis8
c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1w
UmVzb3VyY2VSZXNwb25zZU1JTUVUeXBlcygpOworfQorPC9zY3JpcHQ+CitUaGlzIHRlc3QgcmVx
dWlyZXMgRHVtcFJlbmRlclRyZWUgdG8gc2VlIHRoZSBsb2cgb2Ygd2hhdCByZXNvdXJjZXMgYXJl
IGxvYWRlZC4KKzxzY3JpcHQgc3JjPXJlc291cmNlcy9ub24tZXhpc3RhbnQuanM+PC9zY3JpcHQ+
Cis8c2NyaXB0PmRvY3VtZW50LndyaXRlKCI8cGxhaW50ZXh0PiIpOzwvc2NyaXB0PgorPGJhc2Ug
aHJlZj0icmVzb3VyY2VzL2Zvby5odG1sIj4KKzxiYXNlIGhyZWY9ImJvZ3VzL2Zvby5odG1sIj4K
KzxpbWcgc3JjPSJiYXNlLWltYWdlMy5wbmciPgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9wcmVs
b2FkZXIvZmlyc3QtYmFzZS10YWctd2lucy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctd2lucy1leHBlY3RlZC50eHQJ
KHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9maXJzdC1iYXNlLXRh
Zy13aW5zLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2IEBACitiYXNlLWlt
YWdlMi5wbmcgaGFzIE1JTUUgdHlwZSBpbWFnZS9wbmcKK1RoaXMgdGVzdCByZXF1aXJlcyBEdW1w
UmVuZGVyVHJlZSB0byBzZWUgdGhlIGxvZyBvZiB3aGF0IHJlc291cmNlcyBhcmUgbG9hZGVkLgor
Cis8YmFzZSBocmVmPSJib2d1cy9mb28uaHRtbCI+Cis8aW1nIHNyYz0iYmFzZS1pbWFnZTIucG5n
Ij4KKwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvZmlyc3QtYmFzZS10YWctd2lu
cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL2ZpcnN0LWJh
c2UtdGFnLXdpbnMuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9h
ZGVyL2ZpcnN0LWJhc2UtdGFnLXdpbnMuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxMyBA
QAorPGJvZHk+Cis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewor
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5kdW1wUmVzb3VyY2VSZXNwb25zZU1JTUVUeXBlcygpOworfQorPC9zY3JpcHQ+Cis8
YmFzZSBocmVmPSJyZXNvdXJjZXMvZm9vLmh0bWwiPgorVGhpcyB0ZXN0IHJlcXVpcmVzIER1bXBS
ZW5kZXJUcmVlIHRvIHNlZSB0aGUgbG9nIG9mIHdoYXQgcmVzb3VyY2VzIGFyZSBsb2FkZWQuCis8
c2NyaXB0IHNyYz1yZXNvdXJjZXMvbm9uLWV4aXN0YW50LmpzPjwvc2NyaXB0PgorPHNjcmlwdD5k
b2N1bWVudC53cml0ZSgiPHBsYWludGV4dD4iKTs8L3NjcmlwdD4KKzxiYXNlIGhyZWY9ImJvZ3Vz
L2Zvby5odG1sIj4KKzxpbWcgc3JjPSJiYXNlLWltYWdlMi5wbmciPgpJbmRleDogTGF5b3V0VGVz
dHMvZmFzdC9wcmVsb2FkZXIvdW5kZXJzdGFuZHMtYmFzZS10YWctZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3VuZGVyc3RhbmRzLWJhc2UtdGFn
LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVy
L3VuZGVyc3RhbmRzLWJhc2UtdGFnLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCAr
MSw2IEBACitiYXNlLWltYWdlMS5wbmcgaGFzIE1JTUUgdHlwZSBpbWFnZS9wbmcKK1RoaXMgdGVz
dCByZXF1aXJlcyBEdW1wUmVuZGVyVHJlZSB0byBzZWUgdGhlIGxvZyBvZiB3aGF0IHJlc291cmNl
cyBhcmUgbG9hZGVkLgorCis8YmFzZSBocmVmPSJyZXNvdXJjZXMvZm9vLmh0bWwiPgorPGltZyBz
cmM9ImJhc2UtaW1hZ2UxLnBuZyI+CisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVy
L3VuZGVyc3RhbmRzLWJhc2UtdGFnLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFz
dC9wcmVsb2FkZXIvdW5kZXJzdGFuZHMtYmFzZS10YWcuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3VuZGVyc3RhbmRzLWJhc2UtdGFnLmh0bWwJKHJldmlz
aW9uIDApCkBAIC0wLDAgKzEsMTIgQEAKKzxib2R5PgorPHNjcmlwdD4KK2lmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0
KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcFJlc291cmNlUmVzcG9uc2VNSU1FVHlw
ZXMoKTsKK30KKzwvc2NyaXB0PgorVGhpcyB0ZXN0IHJlcXVpcmVzIER1bXBSZW5kZXJUcmVlIHRv
IHNlZSB0aGUgbG9nIG9mIHdoYXQgcmVzb3VyY2VzIGFyZSBsb2FkZWQuCis8c2NyaXB0IHNyYz1y
ZXNvdXJjZXMvbm9uLWV4aXN0YW50LmpzPjwvc2NyaXB0PgorPHNjcmlwdD5kb2N1bWVudC53cml0
ZSgiPHBsYWludGV4dD4iKTs8L3NjcmlwdD4KKzxiYXNlIGhyZWY9InJlc291cmNlcy9mb28uaHRt
bCI+Cis8aW1nIHNyYz0iYmFzZS1pbWFnZTEucG5nIj4KSW5kZXg6IExheW91dFRlc3RzL2Zhc3Qv
cHJlbG9hZGVyL3Jlc291cmNlcy9iYXNlLWltYWdlMS5wbmcKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2Jhc2UtaW1hZ2UxLnBuZwkocmV2aXNpb24g
MTA2MzA0KQkoZnJvbSBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvaW1hZ2Ux
LnBuZzoxMDYzMDQpCisrKyBMYXlvdXRUZXN0cy9mYXN0L3ByZWxvYWRlci9yZXNvdXJjZXMvYmFz
ZS1pbWFnZTEucG5nCSh3b3JraW5nIGNvcHkpCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L3ByZWxv
YWRlci9yZXNvdXJjZXMvYmFzZS1pbWFnZTIucG5nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9iYXNlLWltYWdlMi5wbmcJKHJldmlzaW9uIDEwNjMw
NCkJKGZyb20gTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2ltYWdlMS5wbmc6
MTA2MzA0KQorKysgTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIvcmVzb3VyY2VzL2Jhc2UtaW1h
Z2UyLnBuZwkod29ya2luZyBjb3B5KQpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9wcmVsb2FkZXIv
cmVzb3VyY2VzL2Jhc2UtaW1hZ2UzLnBuZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0
L3ByZWxvYWRlci9yZXNvdXJjZXMvYmFzZS1pbWFnZTMucG5nCShyZXZpc2lvbiAxMDYzMDQpCShm
cm9tIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9pbWFnZTEucG5nOjEwNjMw
NCkKKysrIExheW91dFRlc3RzL2Zhc3QvcHJlbG9hZGVyL3Jlc291cmNlcy9iYXNlLWltYWdlMy5w
bmcJKHdvcmtpbmcgY29weSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>