<?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>22638</bug_id>
          
          <creation_ts>2008-12-03 16:19:24 -0800</creation_ts>
          <short_desc>Add POST method support to WML &lt;go&gt; element</short_desc>
          <delta_ts>2008-12-21 18:05:56 -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>XML</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>22949</dependson>
          <blocked>20393</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>101275</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-03 16:19:24 -0800</bug_when>
    <thetext>Add POST method support to WML &lt;go&gt; element.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103087</commentid>
    <comment_count>1</comment_count>
      <attachid>26174</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-20 17:26:19 -0800</bug_when>
    <thetext>Created attachment 26174
Initial patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103088</commentid>
    <comment_count>2</comment_count>
      <attachid>26175</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-20 17:26:41 -0800</bug_when>
    <thetext>Created attachment 26175
Layout test results</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103094</commentid>
    <comment_count>3</comment_count>
      <attachid>26174</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-20 18:49:11 -0800</bug_when>
    <thetext>Comment on attachment 26174
Initial patch

Clearing review flag for now. As suggested by Holger, a better approach would be to create a FormDataBuilder class, which encapsulates the Vector&lt;char&gt; instead of having to pass it to several functions, as it is in this patch. Uploading a revised version soon - see bug 22949.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103150</commentid>
    <comment_count>4</comment_count>
      <attachid>26193</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-21 17:50:58 -0800</bug_when>
    <thetext>Created attachment 26193
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103151</commentid>
    <comment_count>5</comment_count>
      <attachid>26194</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-21 17:51:26 -0800</bug_when>
    <thetext>Created attachment 26194
Updated layout test results</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103152</commentid>
    <comment_count>6</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-21 17:52:33 -0800</bug_when>
    <thetext>Adapted to changes in bug 22949 - helper class is now called &apos;FormDataBuilder&apos;, not &apos;FormElementData&apos;.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103153</commentid>
    <comment_count>7</comment_count>
      <attachid>26195</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-21 18:02:10 -0800</bug_when>
    <thetext>Created attachment 26195
WebKitTools changes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>103154</commentid>
    <comment_count>8</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2008-12-21 18:05:56 -0800</bug_when>
    <thetext>Landed in r39431.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26174</attachid>
            <date>2008-12-20 17:26:19 -0800</date>
            <delta_ts>2008-12-21 17:50:58 -0800</delta_ts>
            <desc>Initial patch</desc>
            <filename>WMLPost.diff</filename>
            <type>text/plain</type>
            <size>10454</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTQyNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzEgQEAKKzIwMDgtMTItMjAgIE5pa29sYXMgWmltbWVybWFubiAgPG5pa29sYXMu
emltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRml4ZXM6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjYzOAorCisgICAgICAgIEFkZCBQT1NUIG1ldGhvZCBzdXBwb3J0IHRvIFdN
TEdvRWxlbWVudC4gR0VUICYgUE9TVCBvdmVyIEhUVFAKKyAgICAgICAgY292ZXJlZCBieSBhIG5l
dyBzZXQgb2YgV01MIEhUVFAgbGF5b3V0IHRlc3RzLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rl
c3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRtbAorICAgICAgICAg
ICAgICAgaHR0cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLmh0bWwKKyAgICAgICAgICAg
ICAgIGh0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRt
bAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy93bWwvZ28tdGFzay1wb3N0LW1ldGhvZC5odG1s
CisKKyAgICAgICAgKiB3bWwvV01MR29FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldN
TEdvRWxlbWVudDo6V01MR29FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldNTEdvRWxlbWVu
dDo6cmVnaXN0ZXJQb3N0ZmllbGRFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldNTEdvRWxl
bWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6V01MR29FbGVt
ZW50OjpleGVjdXRlVGFzayk6CisgICAgICAgIChXZWJDb3JlOjpXTUxHb0VsZW1lbnQ6OnByZXBh
cmVQT1NUUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpXTUxHb0VsZW1lbnQ6OnByZXBhcmVH
RVRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OldNTEdvRWxlbWVudDo6Y3JlYXRlRm9ybURh
dGEpOgorICAgICAgICAqIHdtbC9XTUxHb0VsZW1lbnQuaDoKKyAgICAgICAgKiB3bWwvV01MUG9z
dGZpZWxkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjplbmNvZGVkU3RyaW5nKToKKyAg
ICAgICAgKFdlYkNvcmU6OldNTFBvc3RmaWVsZEVsZW1lbnQ6OmVuY29kZURhdGEpOgorICAgICAg
ICAqIHdtbC9XTUxQb3N0ZmllbGRFbGVtZW50Lmg6CisKIDIwMDgtMTItMjAgIERhdmlkIEtpbHpl
ciAgPGRka2lsemVyQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggdHlwbyAiQ1NTQWZlclJ1bGVW
YWx1ZSIgdG8gIkNTU0FmdGVyUnVsZVZhbHVlIgpJbmRleDogV2ViQ29yZS93bWwvV01MR29FbGVt
ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dtbC9XTUxHb0VsZW1lbnQuY3BwCShyZXZp
c2lvbiAzOTQyNSkKKysrIFdlYkNvcmUvd21sL1dNTEdvRWxlbWVudC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDEwICsyNCwxMyBAQAogI2lmIEVOQUJMRShXTUwpCiAjaW5jbHVkZSAiV01MR29F
bGVtZW50LmgiCiAKKyNpbmNsdWRlICJDU3RyaW5nLmgiCisjaW5jbHVkZSAiRm9ybURhdGEuaCIK
ICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAi
SFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0LmgiCisjaW5jbHVkZSAiVGV4
dEVuY29kaW5nLmgiCiAjaW5jbHVkZSAiV01MQ2FyZEVsZW1lbnQuaCIKICNpbmNsdWRlICJXTUxE
b2N1bWVudC5oIgogI2luY2x1ZGUgIldNTE5hbWVzLmgiCkBAIC00MiwzMCArNDUsMjIgQEAgdXNp
bmcgbmFtZXNwYWNlIFdNTE5hbWVzOwogCiBXTUxHb0VsZW1lbnQ6OldNTEdvRWxlbWVudChjb25z
dCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jKQogICAgIDogV01MVGFza0Vs
ZW1lbnQodGFnTmFtZSwgZG9jKQotICAgICwgbV9jb250ZW50VHlwZSgiYXBwbGljYXRpb24veC13
d3ctZm9ybS11cmxlbmNvZGVkIikKLSAgICAsIG1faXNNdWx0aVBhcnQoZmFsc2UpCi0gICAgLCBt
X2lzUG9zdE1ldGhvZChmYWxzZSkKIHsKIH0KICAKIHZvaWQgV01MR29FbGVtZW50OjpyZWdpc3Rl
clBvc3RmaWVsZEVsZW1lbnQoV01MUG9zdGZpZWxkRWxlbWVudCogcG9zdGZpZWxkKQogewotICAg
IG1fcG9zdGZpZWxkRWxlbWVudHMuYWRkKHBvc3RmaWVsZCk7CisgICAgbV9wb3N0ZmllbGRFbGVt
ZW50cy5hcHBlbmQocG9zdGZpZWxkKTsKIH0KIAogdm9pZCBXTUxHb0VsZW1lbnQ6OnBhcnNlTWFw
cGVkQXR0cmlidXRlKE1hcHBlZEF0dHJpYnV0ZSogYXR0cikKIHsKLSAgICBpZiAoYXR0ci0+bmFt
ZSgpID09IEhUTUxOYW1lczo6bWV0aG9kQXR0cikgewotICAgICAgICBjb25zdCBBdG9taWNTdHJp
bmcmIHZhbHVlID0gYXR0ci0+dmFsdWUoKTsKLQotICAgICAgICBpZiAodmFsdWUgPT0gIlBPU1Qi
KQotICAgICAgICAgICAgbV9pc1Bvc3RNZXRob2QgPSB0cnVlOwotICAgICAgICBlbHNlIGlmICh2
YWx1ZSA9PSAiR0VUIikKLSAgICAgICAgICAgIG1faXNQb3N0TWV0aG9kID0gZmFsc2U7Ci0gICAg
fSBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gSFRNTE5hbWVzOjplbmN0eXBlQXR0cikKLSAgICAg
ICAgcGFyc2VDb250ZW50VHlwZShwYXJzZVZhbHVlU3Vic3RpdHV0aW5nVmFyaWFibGVSZWZlcmVu
Y2VzKGF0dHItPnZhbHVlKCkpKTsKKyAgICBpZiAoYXR0ci0+bmFtZSgpID09IEhUTUxOYW1lczo6
bWV0aG9kQXR0cikKKyAgICAgICAgbV9kYXRhLnBhcnNlTWV0aG9kVHlwZShhdHRyLT52YWx1ZSgp
KTsKKyAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gSFRNTE5hbWVzOjplbmN0eXBlQXR0cikK
KyAgICAgICAgbV9kYXRhLnBhcnNlRW5jb2RpbmdUeXBlKHBhcnNlVmFsdWVTdWJzdGl0dXRpbmdW
YXJpYWJsZVJlZmVyZW5jZXMoYXR0ci0+dmFsdWUoKSkpOwogICAgIGVsc2UgaWYgKGF0dHItPm5h
bWUoKSA9PSBIVE1MTmFtZXM6OmFjY2VwdF9jaGFyc2V0QXR0cikKLSAgICAgICAgbV9hY2NlcHRD
aGFyc2V0ID0gcGFyc2VWYWx1ZUZvcmJpZGRpbmdWYXJpYWJsZVJlZmVyZW5jZXMoYXR0ci0+dmFs
dWUoKSk7CisgICAgICAgIG1fZGF0YS5zZXRBY2NlcHRDaGFyc2V0KHBhcnNlVmFsdWVGb3JiaWRk
aW5nVmFyaWFibGVSZWZlcmVuY2VzKGF0dHItPnZhbHVlKCkpKTsKICAgICBlbHNlCiAgICAgICAg
IFdNTFRhc2tFbGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KQEAgLTEyNCwx
NSArMTE5LDEwIEBAIHZvaWQgV01MR29FbGVtZW50OjpleGVjdXRlVGFzayhFdmVudCogZXYKIAog
ICAgIFN0cmluZyBjYWNoZUNvbnRyb2wgPSBnZXRBdHRyaWJ1dGUoY2FjaGVfY29udHJvbEF0dHIp
OwogCi0gICAgaWYgKG1faXNQb3N0TWV0aG9kKQorICAgIGlmIChtX2RhdGEuaXNQb3N0TWV0aG9k
KCkpCiAgICAgICAgIHByZXBhcmVQT1NUUmVxdWVzdChyZXF1ZXN0LCBpblNhbWVEZWNrLCBjYWNo
ZUNvbnRyb2wpOwotICAgIGVsc2UgewotICAgICAgICAvLyBFdmVudHVhbGx5IGRpc3BsYXkgZXJy
b3IgbWVzc2FnZT8KLSAgICAgICAgaWYgKG1faXNNdWx0aVBhcnQpCi0gICAgICAgICAgICByZXR1
cm47Ci0KKyAgICBlbHNlCiAgICAgICAgIHByZXBhcmVHRVRSZXF1ZXN0KHJlcXVlc3QsIHVybCk7
Ci0gICAgfQogCiAgICAgLy8gU2V0IEhUVFAgY2FjaGUtY29udHJvbCBoZWFkZXIgaWYgbmVlZGVk
CiAgICAgaWYgKCFjYWNoZUNvbnRyb2wuaXNFbXB0eSgpKSB7CkBAIC0xNDUsMTcgKzEzNSw2IEBA
IHZvaWQgV01MR29FbGVtZW50OjpleGVjdXRlVGFzayhFdmVudCogZXYKICAgICBsb2FkZXItPmxv
YWQocmVxdWVzdCk7CiB9CiAKLXZvaWQgV01MR29FbGVtZW50OjpwYXJzZUNvbnRlbnRUeXBlKGNv
bnN0IFN0cmluZyYgdHlwZSkKLXsKLSAgICBpZiAodHlwZS5jb250YWlucygibXVsdGlwYXJ0Iiwg
ZmFsc2UpIHx8IHR5cGUuY29udGFpbnMoImZvcm0tZGF0YSIsIGZhbHNlKSkgewotICAgICAgICBt
X2NvbnRlbnRUeXBlID0gIm11bHRpcGFydC9mb3JtLWRhdGEiOwotICAgICAgICBtX2lzTXVsdGlQ
YXJ0ID0gdHJ1ZTsKLSAgICB9IGVsc2UgewotICAgICAgICBtX2NvbnRlbnRUeXBlID0gImFwcGxp
Y2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI7Ci0gICAgICAgIG1faXNNdWx0aVBhcnQgPSBm
YWxzZTsKLSAgICB9Ci19Ci0KIHZvaWQgV01MR29FbGVtZW50OjpwcmVwYXJlUE9TVFJlcXVlc3Qo
UmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBib29sIGluU2FtZURlY2ssIGNvbnN0IFN0cmluZyYg
Y2FjaGVDb250cm9sKQogewogICAgIHJlcXVlc3Quc2V0SFRUUE1ldGhvZCgiUE9TVCIpOwpAQCAt
MTY1LDQ5ICsxNDQsNzEgQEAgdm9pZCBXTUxHb0VsZW1lbnQ6OnByZXBhcmVQT1NUUmVxdWVzdChS
ZQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgLy8gRklYTUU6IEltcGxlbWVudCBQT1NU
IG1ldGhvZC4KLSAgICAvKgogICAgIFJlZlB0cjxGb3JtRGF0YT4gZGF0YTsKIAotICAgIGlmICht
X2lzTXVsdGlQYXJ0KSB7IC8vIG11bHRpcGFydC9mb3JtLWRhdGEKKyAgICBpZiAobV9kYXRhLmlz
TXVsdGlQYXJ0Rm9ybSgpKSB7IC8vIG11bHRpcGFydC9mb3JtLWRhdGEKICAgICAgICAgVmVjdG9y
PGNoYXI+IGJvdW5kYXJ5OwotICAgICAgICBnZXRVbmlxdWVCb3VuZGFyeVN0cmluZyhib3VuZGFy
eSk7Ci0gICAgICAgIGRhdGEgPSBjcmVhdGVGb3JtRGF0YShsb2FkZXIsIGJvdW5kYXJ5LmRhdGEo
KSk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SFRUUENvbnRlbnRUeXBlKG1fY29udGVudFR5cGUgKyAi
OyBib3VuZGFyeT0iICsgYm91bmRhcnkuZGF0YSgpKTsKKyAgICAgICAgbV9kYXRhLmdlbmVyYXRl
VW5pcXVlQm91bmRhcnlTdHJpbmcoYm91bmRhcnkpOworICAgICAgICBkYXRhID0gY3JlYXRlRm9y
bURhdGEoYm91bmRhcnkuZGF0YSgpKTsKKyAgICAgICAgcmVxdWVzdC5zZXRIVFRQQ29udGVudFR5
cGUobV9kYXRhLmVuY29kaW5nVHlwZSgpICsgIjsgYm91bmRhcnk9IiArIGJvdW5kYXJ5LmRhdGEo
KSk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgLy8gdGV4dC9wbGFpbiBvciBhcHBsaWNhdGlvbi94
LXd3dy1mb3JtLXVybGVuY29kZWQKLSAgICAgICAgZGF0YSA9IGNyZWF0ZUZvcm1EYXRhKGxvYWRl
ciwgMCk7Ci0gICAgICAgIHJlcXVlc3Quc2V0SFRUUENvbnRlbnRUeXBlKG1fY29udGVudFR5cGUp
OworICAgICAgICBkYXRhID0gY3JlYXRlRm9ybURhdGEoQ1N0cmluZygpKTsKKyAgICAgICAgcmVx
dWVzdC5zZXRIVFRQQ29udGVudFR5cGUobV9kYXRhLmVuY29kaW5nVHlwZSgpKTsKICAgICB9CiAK
ICAgICByZXF1ZXN0LnNldEhUVFBCb2R5KGRhdGEuZ2V0KCkpOwotICAgICovCiB9CiAKIHZvaWQg
V01MR29FbGVtZW50OjpwcmVwYXJlR0VUUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3Qs
IGNvbnN0IEtVUkwmIHVybCkKIHsKLSAgICBTdHJpbmcgcXVlcnlTdHJpbmc7CisgICAgcmVxdWVz
dC5zZXRIVFRQTWV0aG9kKCJHRVQiKTsKIAotICAgIEhhc2hTZXQ8V01MUG9zdGZpZWxkRWxlbWVu
dCo+OjppdGVyYXRvciBpdCA9IG1fcG9zdGZpZWxkRWxlbWVudHMuYmVnaW4oKTsKLSAgICBIYXNo
U2V0PFdNTFBvc3RmaWVsZEVsZW1lbnQqPjo6aXRlcmF0b3IgZW5kID0gbV9wb3N0ZmllbGRFbGVt
ZW50cy5lbmQoKTsKKyAgICAvLyBFdmVudHVhbGx5IGRpc3BsYXkgZXJyb3IgbWVzc2FnZT8KKyAg
ICBpZiAobV9kYXRhLmlzTXVsdGlQYXJ0Rm9ybSgpKQorICAgICAgICByZXR1cm47CiAKLSAgICBm
b3IgKDsgaXQgIT0gZW5kOyArK2l0KSB7Ci0gICAgICAgIFdNTFBvc3RmaWVsZEVsZW1lbnQqIHBv
c3RmaWVsZCA9ICgqaXQpOworICAgIFJlZlB0cjxGb3JtRGF0YT4gZGF0YSA9IGNyZWF0ZUZvcm1E
YXRhKENTdHJpbmcoKSk7CisKKyAgICBLVVJMIHJlbW90ZVVSTCh1cmwpOworICAgIHJlbW90ZVVS
TC5zZXRRdWVyeShkYXRhLT5mbGF0dGVuVG9TdHJpbmcoKSk7CisgICAgcmVxdWVzdC5zZXRVUkwo
cmVtb3RlVVJMKTsKK30KIAotICAgICAgICBpZiAoIXF1ZXJ5U3RyaW5nLmlzRW1wdHkoKSkKLSAg
ICAgICAgICAgIHF1ZXJ5U3RyaW5nICs9ICImIjsKK1Bhc3NSZWZQdHI8Rm9ybURhdGE+IFdNTEdv
RWxlbWVudDo6Y3JlYXRlRm9ybURhdGEoY29uc3QgQ1N0cmluZyYgYm91bmRhcnkpCit7CisgICAg
Q1N0cmluZyBrZXk7CisgICAgQ1N0cmluZyB2YWx1ZTsKIAotICAgICAgICBxdWVyeVN0cmluZyAr
PSBlbmNvZGVXaXRoVVJMRXNjYXBlU2VxdWVuY2VzKHBvc3RmaWVsZC0+bmFtZSgpKSArICJtIiAr
Ci0gICAgICAgICAgICAgICAgICAgICAgIGVuY29kZVdpdGhVUkxFc2NhcGVTZXF1ZW5jZXMocG9z
dGZpZWxkLT52YWx1ZSgpKTsKLSAgICB9CisgICAgVmVjdG9yPGNoYXI+IGVuY29kZWREYXRhOwor
ICAgIFRleHRFbmNvZGluZyBlbmNvZGluZyA9IG1fZGF0YS5kYXRhRW5jb2RpbmcoZG9jdW1lbnQo
KSkuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lvbigpOwogCi0gICAgS1VSTCByZW1vdGVVUkwodXJs
KTsKLSAgICByZW1vdGVVUkwuc2V0UXVlcnkocXVlcnlTdHJpbmcpOworICAgIFZlY3RvcjxXTUxQ
b3N0ZmllbGRFbGVtZW50Kj46Oml0ZXJhdG9yIGl0ID0gbV9wb3N0ZmllbGRFbGVtZW50cy5iZWdp
bigpOworICAgIFZlY3RvcjxXTUxQb3N0ZmllbGRFbGVtZW50Kj46Oml0ZXJhdG9yIGVuZCA9IG1f
cG9zdGZpZWxkRWxlbWVudHMuZW5kKCk7CiAKLSAgICByZXF1ZXN0LnNldFVSTChyZW1vdGVVUkwp
OwotICAgIHJlcXVlc3Quc2V0SFRUUE1ldGhvZCgiR0VUIik7CisgICAgUmVmUHRyPEZvcm1EYXRh
PiByZXN1bHQgPSBGb3JtRGF0YTo6Y3JlYXRlKCk7CisgICAgZm9yICg7IGl0ICE9IGVuZDsgKytp
dCkgeworICAgICAgICAoKml0KS0+ZW5jb2RlRGF0YShlbmNvZGluZywga2V5LCB2YWx1ZSk7CisK
KyAgICAgICAgaWYgKG1fZGF0YS5pc011bHRpUGFydEZvcm0oKSkgeworICAgICAgICAgICAgVmVj
dG9yPGNoYXI+IGhlYWRlcjsKKyAgICAgICAgICAgIG1fZGF0YS5iZWdpbk11bHRpUGFydEhlYWRl
cihoZWFkZXIsIGJvdW5kYXJ5LCBrZXkpOworICAgICAgICAgICAgbV9kYXRhLmZpbmlzaE11bHRp
UGFydEhlYWRlcihoZWFkZXIpOworICAgICAgICAgICAgcmVzdWx0LT5hcHBlbmREYXRhKGhlYWRl
ci5kYXRhKCksIGhlYWRlci5zaXplKCkpOworCisgICAgICAgICAgICBpZiAoc2l6ZV90IGRhdGFT
aXplID0gdmFsdWUubGVuZ3RoKCkpCisgICAgICAgICAgICAgICAgcmVzdWx0LT5hcHBlbmREYXRh
KHZhbHVlLmRhdGEoKSwgZGF0YVNpemUpOworCisgICAgICAgICAgICByZXN1bHQtPmFwcGVuZERh
dGEoIlxyXG4iLCAyKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBtX2RhdGEuYWRkS2V5
VmFsdWVQYWlyQXNGb3JtRGF0YShlbmNvZGVkRGF0YSwga2V5LCB2YWx1ZSk7CisgICAgfQogCisg
ICAgaWYgKG1fZGF0YS5pc011bHRpUGFydEZvcm0oKSkKKyAgICAgICAgbV9kYXRhLmFkZEJvdW5k
YXJ5VG9NdWx0aVBhcnRIZWFkZXIoZW5jb2RlZERhdGEsIGJvdW5kYXJ5LCB0cnVlKTsKIAorICAg
IHJlc3VsdC0+YXBwZW5kRGF0YShlbmNvZGVkRGF0YS5kYXRhKCksIGVuY29kZWREYXRhLnNpemUo
KSk7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogfQpJbmRleDogV2ViQ29yZS93bWwvV01MR29F
bGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS93bWwvV01MR29FbGVtZW50LmgJKHJldmlz
aW9uIDM5NDI1KQorKysgV2ViQ29yZS93bWwvV01MR29FbGVtZW50LmgJKHdvcmtpbmcgY29weSkK
QEAgLTIzLDEwICsyMywxMiBAQAogI2RlZmluZSBXTUxHb0VsZW1lbnRfaAogCiAjaWYgRU5BQkxF
KFdNTCkKKyNpbmNsdWRlICJGb3JtRWxlbWVudERhdGEuaCIKICNpbmNsdWRlICJXTUxUYXNrRWxl
bWVudC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIEZvcm1EYXRhOwogY2xhc3Mg
UmVzb3VyY2VSZXF1ZXN0OwogY2xhc3MgV01MUG9zdGZpZWxkRWxlbWVudDsKIApAQCAtNDAsMTgg
KzQyLDEzIEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgZXhlY3V0ZVRhc2soRXZlbnQqKTsK
IAogcHJpdmF0ZToKLSAgICB2b2lkIHBhcnNlQ29udGVudFR5cGUoY29uc3QgU3RyaW5nJik7Ci0K
ICAgICB2b2lkIHByZXBhcmVQT1NUUmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmLCBib29sIGluU2Ft
ZURlY2ssIGNvbnN0IFN0cmluZyYgY2FjaGVDb250cm9sKTsKICAgICB2b2lkIHByZXBhcmVHRVRS
ZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYsIGNvbnN0IEtVUkwmKTsKIAotICAgIEhhc2hTZXQ8V01M
UG9zdGZpZWxkRWxlbWVudCo+IG1fcG9zdGZpZWxkRWxlbWVudHM7Ci0KLSAgICBTdHJpbmcgbV9j
b250ZW50VHlwZTsKLSAgICBTdHJpbmcgbV9hY2NlcHRDaGFyc2V0OworICAgIFBhc3NSZWZQdHI8
Rm9ybURhdGE+IGNyZWF0ZUZvcm1EYXRhKGNvbnN0IENTdHJpbmcmIGJvdW5kYXJ5KTsKIAotICAg
IGJvb2wgbV9pc011bHRpUGFydDsKLSAgICBib29sIG1faXNQb3N0TWV0aG9kOworICAgIFZlY3Rv
cjxXTUxQb3N0ZmllbGRFbGVtZW50Kj4gbV9wb3N0ZmllbGRFbGVtZW50czsKKyAgICBGb3JtRWxl
bWVudERhdGEgbV9kYXRhOwogfTsKIAogfQpJbmRleDogV2ViQ29yZS93bWwvV01MUG9zdGZpZWxk
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS93bWwvV01MUG9zdGZpZWxkRWxlbWVu
dC5jcHAJKHJldmlzaW9uIDM5NDI1KQorKysgV2ViQ29yZS93bWwvV01MUG9zdGZpZWxkRWxlbWVu
dC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDYgKzI0LDggQEAKICNpZiBFTkFCTEUoV01MKQog
I2luY2x1ZGUgIldNTFBvc3RmaWVsZEVsZW1lbnQuaCIKIAorI2luY2x1ZGUgIkNTdHJpbmcuaCIK
KyNpbmNsdWRlICJUZXh0RW5jb2RpbmcuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKICNpbmNs
dWRlICJXTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIldNTEdvRWxlbWVudC5oIgpAQCAtNjEsNiAr
NjMsMTcgQEAgdm9pZCBXTUxQb3N0ZmllbGRFbGVtZW50OjppbnNlcnRlZEludG9EbwogICAgIHN0
YXRpY19jYXN0PFdNTEdvRWxlbWVudCo+KHBhcmVudCktPnJlZ2lzdGVyUG9zdGZpZWxkRWxlbWVu
dCh0aGlzKTsKIH0KIAorc3RhdGljIGlubGluZSBDU3RyaW5nIGVuY29kZWRTdHJpbmcoY29uc3Qg
VGV4dEVuY29kaW5nJiBlbmNvZGluZywgY29uc3QgU3RyaW5nJiBkYXRhKQoreworICAgIHJldHVy
biBlbmNvZGluZy5lbmNvZGUoZGF0YS5jaGFyYWN0ZXJzKCksIGRhdGEubGVuZ3RoKCksIEVudGl0
aWVzRm9yVW5lbmNvZGFibGVzKTsKK30KKwordm9pZCBXTUxQb3N0ZmllbGRFbGVtZW50OjplbmNv
ZGVEYXRhKGNvbnN0IFRleHRFbmNvZGluZyYgZW5jb2RpbmcsIENTdHJpbmcmIG5hbWUsIENTdHJp
bmcmIHZhbHVlKQoreworICAgIG5hbWUgPSBlbmNvZGVkU3RyaW5nKGVuY29kaW5nLCBtX25hbWUp
OworICAgIHZhbHVlID0gZW5jb2RlZFN0cmluZyhlbmNvZGluZywgbV92YWx1ZSk7Cit9CisKIH0K
IAogI2VuZGlmCkluZGV4OiBXZWJDb3JlL3dtbC9XTUxQb3N0ZmllbGRFbGVtZW50LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS93bWwvV01MUG9zdGZpZWxkRWxlbWVudC5oCShyZXZpc2lvbiAzOTQy
NSkKKysrIFdlYkNvcmUvd21sL1dNTFBvc3RmaWVsZEVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMjUsOCArMjUsNiBAQAogI2lmIEVOQUJMRShXTUwpCiAjaW5jbHVkZSAiV01MRWxlbWVudC5o
IgogCi0jaW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KLQogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBXTUxQb3N0ZmllbGRFbGVtZW50IDogcHVibGljIFdNTEVsZW1lbnQgewpAQCAtMzksNiAr
MzcsOSBAQCBwdWJsaWM6CiAgICAgU3RyaW5nIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7
IH0KICAgICBTdHJpbmcgdmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlOyB9CiAKKyAgICAv
LyBFbmNvZGUgbmFtZSgpIGFuZCB2YWx1ZSgpIGluIGEgQ1N0cmluZyB1c2luZyB0aGUgcGFzc2Vk
IGVuY29kaW5nCisgICAgdm9pZCBlbmNvZGVEYXRhKGNvbnN0IFRleHRFbmNvZGluZyYsIENTdHJp
bmcmIG5hbWUsIENTdHJpbmcmIHZhbHVlKTsKKwogcHJpdmF0ZToKICAgICBTdHJpbmcgbV9uYW1l
OwogICAgIFN0cmluZyBtX3ZhbHVlOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26175</attachid>
            <date>2008-12-20 17:26:41 -0800</date>
            <delta_ts>2008-12-21 17:51:26 -0800</delta_ts>
            <desc>Layout test results</desc>
            <filename>WMLPostTests.diff</filename>
            <type>text/plain</type>
            <size>23644</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDM5NDI1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsNDkgQEAKKzIwMDgtMTItMjAgIE5pa29sYXMgWmltbWVybWFu
biAgPG5pa29sYXMuemltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFdNTCBIVFRQIGxheW91dCB0ZXN0
cyBhbmQgYW4gaW5pdGl0YWwgc2V0IG9mIHJlc3VsdHMuCisgICAgICAgIElnbm9yZWQgaWYgV01M
IGlzIGRpc2FibGVkLCBhcyB1c3VhbC4KKworICAgICAgICAqIGh0dHAvdGVzdHMvd21sOiBBZGRl
ZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNo
YXJzZXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9nby10
YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0
cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAg
ICAgICogaHR0cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLmh0bWw6IEFkZGVkLgorICAg
ICAgICAqIGh0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQt
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9nby10YXNrLXBv
c3QtbWV0aG9kLWFjY2VwdC1jaGFyc2V0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBodHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvd21sL3Jlc291cmNlczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy93bWwvcmVzb3VyY2VzL1RFTVBMQVRFLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvd21sL3Jlc291cmNlcy9hbnN3ZXItdXRmOC5jZ2k6IEFkZGVkLgorICAgICAgICAqIGh0dHAv
dGVzdHMvd21sL3Jlc291cmNlcy9hbnN3ZXIuY2dpOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rl
c3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1nZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LmpzOiBB
ZGRlZC4KKyAgICAgICAgKHNldHVwVGVzdERvY3VtZW50KToKKyAgICAgICAgKHByZXBhcmVUZXN0
KToKKyAgICAgICAgKGV4ZWN1dGVUZXN0KToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9yZXNv
dXJjZXMvZ28tdGFzay1nZXQtbWV0aG9kLmpzOiBBZGRlZC4KKyAgICAgICAgKHNldHVwVGVzdERv
Y3VtZW50KToKKyAgICAgICAgKHByZXBhcmVUZXN0KToKKyAgICAgICAgKGV4ZWN1dGVUZXN0KToK
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC1h
Y2NlcHQtY2hhcnNldC5qczogQWRkZWQuCisgICAgICAgIChzZXR1cFRlc3REb2N1bWVudCk6Cisg
ICAgICAgIChwcmVwYXJlVGVzdCk6CisgICAgICAgIChleGVjdXRlVGVzdCk6CisgICAgICAgICog
aHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2stcG9zdC1tZXRob2QuanM6IEFkZGVkLgor
ICAgICAgICAoc2V0dXBUZXN0RG9jdW1lbnQpOgorICAgICAgICAocHJlcGFyZVRlc3QpOgorICAg
ICAgICAoZXhlY3V0ZVRlc3QpOgorICAgICAgICAqIHdtbC9nby10YXNrLWFuaW1hdGlvbi5odG1s
OgorICAgICAgICAqIHdtbC9nby10YXNrLWdldC1tZXRob2QtZXh0ZXJuYWwtZGVjay13aXRoLWhy
ZWYuaHRtbDoKKyAgICAgICAgKiB3bWwvZ28tdGFzay1nZXQtbWV0aG9kLWV4dGVybmFsLWRlY2su
aHRtbDoKKyAgICAgICAgKiB3bWwvZ28tdGFzay1nZXQtbWV0aG9kLXNhbWUtZGVjay5odG1sOgor
ICAgICAgICAqIHdtbC9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbDoKKyAgICAgICAgKiB3bWwvcmVz
b3VyY2VzL1dNTFRlc3RDYXNlLmpzOgorICAgICAgICAoY29tcGxldGVUZXN0KToKKyAgICAgICAg
KiB3bWwvdmFyaWFibGUtcmVmZXJlbmNlLWludmFsaWQtY2hhcmFjdGVyLmh0bWw6CisgICAgICAg
ICogd21sL3ZhcmlhYmxlLXJlZmVyZW5jZS12YWxpZC5odG1sOgorCiAyMDA4LTEyLTE5ICBaYW4g
RG9iZXJzZWsgIDx6YW5kb2JlcnNla0BnbWFpbC5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
SG9sZ2VyIEZyZXl0aGVyLgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFz
ay1nZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJz
ZXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
bWwvZ28tdGFzay1nZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNp
b24gMCkKQEAgLTAsMCArMSwyMiBAQAorV01MIGh0dHAgbmF2aWdhdGlvbiBsYXlvdXQgdGVzdHMg
LSB1c2luZyBYSFRNTCBzY3JpcHRpbmcKKworCitUZXN0cyBHRVQgbWV0aG9kIG9mIDxnbz4gZWxl
bWVudCAtIGFjY2VwdC1jaGFyc2V0IGF0dHJpYnV0ZQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBz
ZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVU
RSIuCisKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4n
CistLS0tLS0tLQorVGhpcyBwYWdlIHdhcyByZXF1ZXN0ZWQgd2l0aCBhbiBIVFRQIEdFVAorCitU
aGUgcXVlcnkgcGFyYW1ldGVycyBhcmU6IHZhcjE9VGV4dCUyMHdpdGglMjB3aGl0ZXNwYWNlO3Zh
cjI9VGV4dCUyMHdpdGglMjBub24tbGF0aW4xJTIwY2hhcmFjdGVycyUzQSUyMFNjaCVDMyVCNm4l
MkMlMjBkYSVDMyU5RiUyMGVzJTIwJUMzJTg0JTI2T3VtbCUzQiVDMyU5QyUyMGdpYnQlMjEKK0Zv
cm0gY29udGVudCB2YXIxOiAnVGV4dCB3aXRoIHdoaXRlc3BhY2UnCitGb3JtIGNvbnRlbnQgdmFy
MjogJ1RleHQgd2l0aCBub24tbGF0aW4xIGNoYXJhY3RlcnM6IFNjaMO2biwgZGHDnyBlcyDDhMOW
w5wgZ2lidCEnCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stZ2V0
LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5odG1sCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9k
LWFjY2VwdC1jaGFyc2V0Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTUgQEAKKzwhRE9D
VFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhlYWQ+
Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2Vz
L2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJlbGF0aXZlUGF0aFRvTGF5b3V0VGVz
dHMgPSAiLi4vLi4vLi4iOzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3dtbC9yZXNv
dXJjZXMvV01MVGVzdENhc2UuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5
PgorPGgxPldNTCBodHRwIG5hdmlnYXRpb24gbGF5b3V0IHRlc3RzIC0gdXNpbmcgWEhUTUwgc2Ny
aXB0aW5nPC9oMT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+
PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2dvLXRhc2stZ2V0LW1ldGhvZC1hY2NlcHQt
Y2hhcnNldC5qcyIgY2hhcnNldD0idXRmOCI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cklu
ZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtZXhwZWN0
ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2st
Z2V0LW1ldGhvZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDIyIEBACitXTUwgaHR0cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0cyAtIHVzaW5n
IFhIVE1MIHNjcmlwdGluZworCisKK1Rlc3RzIEdFVCBtZXRob2Qgb2YgPGdvPiBlbGVtZW50CisK
K09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZv
bGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBp
cyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKworCistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQ
YXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0tLS0tLS0tCitUaGlzIHBhZ2Ugd2FzIHJlcXVlc3Rl
ZCB3aXRoIGFuIEhUVFAgR0VUCisKK1RoZSBxdWVyeSBwYXJhbWV0ZXJzIGFyZTogdmFyMT1UZXh0
JTIwd2l0aCUyMHdoaXRlc3BhY2U7dmFyMj1UZXh0JTIwd2l0aCUyMGVudGl0aWVzJTNBJTIwJTI2
YXVtbCUzQiUyMGFuZCUyMCUyNm91bWwlM0IKK0Zvcm0gY29udGVudCB2YXIxOiAnVGV4dCB3aXRo
IHdoaXRlc3BhY2UnCitGb3JtIGNvbnRlbnQgdmFyMjogJ1RleHQgd2l0aCBlbnRpdGllczogw6Qg
YW5kIMO2JworCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLWdldC1t
ZXRob2QuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10
YXNrLWdldC1tZXRob2QuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE1
IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRt
bD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9mYXN0L2pz
L3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0PnZhciByZWxhdGl2ZVBhdGhU
b0xheW91dFRlc3RzID0gIi4uLy4uLy4uIjs8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8u
Li93bWwvcmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hl
YWQ+Cis8Ym9keT4KKzxoMT5XTUwgaHR0cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0cyAtIHVzaW5n
IFhIVE1MIHNjcmlwdGluZzwvaDE+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9
ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9nby10YXNrLWdldC1tZXRo
b2QuanMiIGNoYXJzZXQ9InV0ZjgiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hh
cnNldC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
bWwvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC1leHBlY3RlZC50eHQJKHJldmlz
aW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9k
LWFjY2VwdC1jaGFyc2V0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyMiBA
QAorV01MIGh0dHAgbmF2aWdhdGlvbiBsYXlvdXQgdGVzdHMgLSB1c2luZyBYSFRNTCBzY3JpcHRp
bmcKKworCitUZXN0cyBQT1NUIG1ldGhvZCBvZiA8Z28+IGVsZW1lbnQgLSBhY2NlcHQtY2hhcnNl
dCBhdHRyaWJ1dGUKKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNT
IiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgc3VjY2Vz
c2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKy0tLS0tLS0tCitGcmFt
ZTogJzwhLS1mcmFtZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KK1RoaXMgcGFn
ZSB3YXMgcmVxdWVzdGVkIHdpdGggYW4gSFRUUCBQT1NUCisKK1RoZSBxdWVyeSBwYXJhbWV0ZXJz
IGFyZTogdmFyMT1UZXh0JTIwd2l0aCUyMHdoaXRlc3BhY2U7dmFyMj1UZXh0JTIwd2l0aCUyMG5v
bi1sYXRpbjElMjBjaGFyYWN0ZXJzJTNBJTIwU2NoJUMzJUI2biUyQyUyMGRhJUMzJTlGJTIwZXMl
MjAlQzMlODQlMjZPdW1sJTNCJUMzJTlDJTIwZ2lidCUyMQorRm9ybSBjb250ZW50IHZhcjE6ICdU
ZXh0IHdpdGggd2hpdGVzcGFjZScKK0Zvcm0gY29udGVudCB2YXIyOiAnVGV4dCB3aXRoIG5vbi1s
YXRpbjEgY2hhcmFjdGVyczogU2Now7ZuLCBkYcOfIGVzIMOEw5bDnCBnaWJ0IScKKwpJbmRleDog
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hh
cnNldC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRh
c2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQu
aHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElD
ICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5
bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLi8uLi8uLiI7
PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vd21sL3Jlc291cmNlcy9XTUxUZXN0Q2Fz
ZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aDE+V01MIGh0dHAg
bmF2aWdhdGlvbiBsYXlvdXQgdGVzdHMgLSB1c2luZyBYSFRNTCBzY3JpcHRpbmc8L2gxPgorPHAg
aWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQg
c3JjPSJyZXNvdXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qcyIgY2hh
cnNldD0idXRmOCI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0
cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLWV4cGVjdGVkLnR4dAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLWV4
cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dv
LXRhc2stcG9zdC1tZXRob2QtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIy
IEBACitXTUwgaHR0cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0cyAtIHVzaW5nIFhIVE1MIHNjcmlw
dGluZworCisKK1Rlc3RzIFBPU1QgbWV0aG9kIG9mIDxnbz4gZWxlbWVudAorCitPbiBzdWNjZXNz
LCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAi
VEVTVCBDT01QTEVURSIuCisKKworUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitU
RVNUIENPTVBMRVRFCisKKworLS0tLS0tLS0KK0ZyYW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1m
cmFtZTAtLT4tLT4nCistLS0tLS0tLQorVGhpcyBwYWdlIHdhcyByZXF1ZXN0ZWQgd2l0aCBhbiBI
VFRQIFBPU1QKKworVGhlIHF1ZXJ5IHBhcmFtZXRlcnMgYXJlOiB2YXIxPVRleHQlMjB3aXRoJTIw
d2hpdGVzcGFjZTt2YXIyPVRleHQlMjB3aXRoJTIwZW50aXRpZXMlM0ElMjAlMjZhdW1sJTNCJTIw
YW5kJTIwJTI2b3VtbCUzQgorRm9ybSBjb250ZW50IHZhcjE6ICdUZXh0IHdpdGggd2hpdGVzcGFj
ZScKK0Zvcm0gY29udGVudCB2YXIyOiAnVGV4dCB3aXRoIGVudGl0aWVzOiDDpCBhbmQgw7YnCisK
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QuaHRt
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3Qt
bWV0aG9kLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9n
by10YXNrLXBvc3QtbWV0aG9kLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMTUgQEAKKzwh
RE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxodG1sPgorPGhl
YWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3Vy
Y2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJlbGF0aXZlUGF0aFRvTGF5b3V0
VGVzdHMgPSAiLi4vLi4vLi4iOzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4uL3dtbC9y
ZXNvdXJjZXMvV01MVGVzdENhc2UuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uLy4u
L2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxi
b2R5PgorPGgxPldNTCBodHRwIG5hdmlnYXRpb24gbGF5b3V0IHRlc3RzIC0gdXNpbmcgWEhUTUwg
c2NyaXB0aW5nPC9oMT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29s
ZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2dvLXRhc2stcG9zdC1tZXRob2QuanMi
IGNoYXJzZXQ9InV0ZjgiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0
VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL1RFTVBMQVRFLmh0bWwKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL1RFTVBMQVRFLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvVEVNUExB
VEUuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAorPCFET0NUWVBFIEhUTUwgUFVC
TElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHls
ZS5jc3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLi8uLi8u
LiI7PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vd21sL3Jlc291cmNlcy9XTUxUZXN0
Q2FzZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8aDE+V01MIGh0
dHAgbmF2aWdhdGlvbiBsYXlvdXQgdGVzdHMgLSB1c2luZyBYSFRNTCBzY3JpcHRpbmc8L2gxPgor
PHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3Jp
cHQgc3JjPSJZT1VSX0pTX0ZJTEVfSEVSRSIgY2hhcnNldD0idXRmOCI+PC9zY3JpcHQ+Cis8L2Jv
ZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMv
YW5zd2VyLXV0ZjguY2dpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21s
L3Jlc291cmNlcy9hbnN3ZXItdXRmOC5jZ2kJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvYW5zd2VyLXV0ZjguY2dpCShyZXZpc2lvbiAwKQpAQCAt
MCwwICsxLDI0IEBACisjIS91c3IvYmluL3BlcmwgLXcKKwordXNlIENHSTsKKworJHF1ZXJ5ID0g
bmV3IENHSTsKKyRtZXRob2QgPSAkcXVlcnktPnJlcXVlc3RfbWV0aG9kKCk7CiskcXVlcnlTdHJp
bmcgPSAkcXVlcnktPnF1ZXJ5X3N0cmluZzsKKyR2YXIxID0gJHF1ZXJ5LT5wYXJhbSgidmFyMSIp
OworJHZhcjIgPSAkcXVlcnktPnBhcmFtKCJ2YXIyIik7CisKK3ByaW50ICJDb250ZW50LXR5cGU6
IHRleHQvaHRtbDtjaGFyc2V0PXV0Zi04XHJcbiI7CitwcmludCAiQ2FjaGUtQ29udHJvbDogbm8t
c3RvcmUsIG5vLWNhY2hlLCBtdXN0LXJldmFsaWRhdGVcclxuIjsKK3ByaW50ICJcclxuIjsKKwor
cHJpbnQgPDxIRVJFX0RPQ19FTkQ7Cis8aHRtbD4KKzxib2R5PgorVGhpcyBwYWdlIHdhcyByZXF1
ZXN0ZWQgd2l0aCBhbiBIVFRQICRtZXRob2Q8YnIvPjxici8+CitUaGUgcXVlcnkgcGFyYW1ldGVy
cyBhcmU6ICRxdWVyeVN0cmluZzxici8+CitGb3JtIGNvbnRlbnQgdmFyMTogJyR2YXIxJzxici8+
CitGb3JtIGNvbnRlbnQgdmFyMjogJyR2YXIyJzxici8+Cis8L2JvZHk+Cis8L2h0bWw+CitIRVJF
X0RPQ19FTkQKClByb3BlcnR5IGNoYW5nZXMgb246IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21s
L3Jlc291cmNlcy9hbnN3ZXItdXRmOC5jZ2kKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpOYW1lOiBzdm46ZXhlY3V0YWJs
ZQogICArICoKCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvYW5z
d2VyLmNnaQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJj
ZXMvYW5zd2VyLmNnaQkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21s
L3Jlc291cmNlcy9hbnN3ZXIuY2dpCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI0IEBACisjIS91
c3IvYmluL3BlcmwgLXcKKwordXNlIENHSTsKKworJHF1ZXJ5ID0gbmV3IENHSTsKKyRtZXRob2Qg
PSAkcXVlcnktPnJlcXVlc3RfbWV0aG9kKCk7CiskcXVlcnlTdHJpbmcgPSAkcXVlcnktPnF1ZXJ5
X3N0cmluZzsKKyR2YXIxID0gJHF1ZXJ5LT5wYXJhbSgidmFyMSIpOworJHZhcjIgPSAkcXVlcnkt
PnBhcmFtKCJ2YXIyIik7CisKK3ByaW50ICJDb250ZW50LXR5cGU6IHRleHQvaHRtbFxyXG4iOwor
cHJpbnQgIkNhY2hlLUNvbnRyb2w6IG5vLXN0b3JlLCBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRl
XHJcbiI7CitwcmludCAiXHJcbiI7CisKK3ByaW50IDw8SEVSRV9ET0NfRU5EOworPGh0bWw+Cis8
Ym9keT4KK1RoaXMgcGFnZSB3YXMgcmVxdWVzdGVkIHdpdGggYW4gSFRUUCAkbWV0aG9kPGJyLz48
YnIvPgorVGhlIHF1ZXJ5IHBhcmFtZXRlcnMgYXJlOiAkcXVlcnlTdHJpbmc8YnIvPgorRm9ybSBj
b250ZW50IHZhcjE6ICckdmFyMSc8YnIvPgorRm9ybSBjb250ZW50IHZhcjI6ICckdmFyMic8YnIv
PgorPC9ib2R5PgorPC9odG1sPgorSEVSRV9ET0NfRU5ECgpQcm9wZXJ0eSBjaGFuZ2VzIG9uOiBM
YXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvYW5zd2VyLmNnaQpfX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
Ck5hbWU6IHN2bjpleGVjdXRhYmxlCiAgICsgKgoKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVz
dHMvd21sL3Jlc291cmNlcy9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuanMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2st
Z2V0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJz
ZXQuanMJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzggQEAKKy8vIFtOYW1lXSBnby10YXNrLWdl
dC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuanMKKworY3JlYXRlV01MVGVzdENhc2UoIlRlc3RzIEdF
VCBtZXRob2Qgb2YgJmx0O2dvJmd0OyBlbGVtZW50IC0gYWNjZXB0LWNoYXJzZXQgYXR0cmlidXRl
IiwgZmFsc2UpOworCitmdW5jdGlvbiBzZXR1cFRlc3REb2N1bWVudCgpIHsKKyAgICB2YXIgY2Fy
ZEVsZW1lbnQgPSB0ZXN0RG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmZpcnN0Q2hpbGQ7CisKKyAg
ICB2YXIgYW5jaG9yRWxlbWVudCA9IGNyZWF0ZVdNTEVsZW1lbnQoImFuY2hvciIpOworICAgIGFu
Y2hvckVsZW1lbnQuYXBwZW5kQ2hpbGQodGVzdERvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJTdGFy
dCB0ZXN0IikpOworICAgIGNhcmRFbGVtZW50LmFwcGVuZENoaWxkKGFuY2hvckVsZW1lbnQpOwor
CisgICAgdmFyIGdvRWxlbWVudCA9IGNyZWF0ZVdNTEVsZW1lbnQoImdvIik7CisgICAgZ29FbGVt
ZW50LnNldEF0dHJpYnV0ZSgibWV0aG9kIiwgIkdFVCIpOworICAgIGdvRWxlbWVudC5zZXRBdHRy
aWJ1dGUoImFjY2VwdC1jaGFyc2V0IiwgInV0Zi04Iik7CisgICAgZ29FbGVtZW50LnNldEF0dHJp
YnV0ZSgiaHJlZiIsICJodHRwOi8vMTI3LjAuMC4xOjgwMDAvd21sL3Jlc291cmNlcy9hbnN3ZXIt
dXRmOC5jZ2kiKTsKKworICAgIHZhciBwb3N0ZmllbGRFbGVtZW50MSA9IGNyZWF0ZVdNTEVsZW1l
bnQoInBvc3RmaWVsZCIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQxLnNldEF0dHJpYnV0ZSgibmFt
ZSIsICJ2YXIxIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDEuc2V0QXR0cmlidXRlKCJ2YWx1ZSIs
ICJUZXh0IHdpdGggd2hpdGVzcGFjZSIpOworICAgIGdvRWxlbWVudC5hcHBlbmRDaGlsZChwb3N0
ZmllbGRFbGVtZW50MSk7CisKKyAgICB2YXIgcG9zdGZpZWxkRWxlbWVudDIgPSBjcmVhdGVXTUxF
bGVtZW50KCJwb3N0ZmllbGQiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50Mi5zZXRBdHRyaWJ1dGUo
Im5hbWUiLCAidmFyMiIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQyLnNldEF0dHJpYnV0ZSgidmFs
dWUiLCAiVGV4dCB3aXRoIG5vbi1sYXRpbjEgY2hhcmFjdGVyczogU2Now7ZuLCBkYcOfIGVzIMOE
Jk91bWw7w5wgZ2lidCEiKTsKKyAgICBnb0VsZW1lbnQuYXBwZW5kQ2hpbGQocG9zdGZpZWxkRWxl
bWVudDIpOworCisgICAgYW5jaG9yRWxlbWVudC5hcHBlbmRDaGlsZChnb0VsZW1lbnQpOworfQor
CitmdW5jdGlvbiBwcmVwYXJlVGVzdCgpIHsKKyAgICBzdGFydFRlc3QoMjUsIDE1KTsKK30KKwor
ZnVuY3Rpb24gZXhlY3V0ZVRlc3QoKSB7CisgICAgY29tcGxldGVUZXN0KCk7Cit9CisKK3ZhciBz
dWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
bWwvcmVzb3VyY2VzL2dvLXRhc2stZ2V0LW1ldGhvZC5qcwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1nZXQtbWV0aG9kLmpzCShyZXZp
c2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2st
Z2V0LW1ldGhvZC5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzNyBAQAorLy8gW05hbWVdIGdv
LXRhc2stZ2V0LW1ldGhvZC5qcworCitjcmVhdGVXTUxUZXN0Q2FzZSgiVGVzdHMgR0VUIG1ldGhv
ZCBvZiAmbHQ7Z28mZ3Q7IGVsZW1lbnQiLCBmYWxzZSk7CisKK2Z1bmN0aW9uIHNldHVwVGVzdERv
Y3VtZW50KCkgeworICAgIHZhciBjYXJkRWxlbWVudCA9IHRlc3REb2N1bWVudC5kb2N1bWVudEVs
ZW1lbnQuZmlyc3RDaGlsZDsKKworICAgIHZhciBhbmNob3JFbGVtZW50ID0gY3JlYXRlV01MRWxl
bWVudCgiYW5jaG9yIik7CisgICAgYW5jaG9yRWxlbWVudC5hcHBlbmRDaGlsZCh0ZXN0RG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUoIlN0YXJ0IHRlc3QiKSk7CisgICAgY2FyZEVsZW1lbnQuYXBwZW5k
Q2hpbGQoYW5jaG9yRWxlbWVudCk7CisKKyAgICB2YXIgZ29FbGVtZW50ID0gY3JlYXRlV01MRWxl
bWVudCgiZ28iKTsKKyAgICBnb0VsZW1lbnQuc2V0QXR0cmlidXRlKCJtZXRob2QiLCAiR0VUIik7
CisgICAgZ29FbGVtZW50LnNldEF0dHJpYnV0ZSgiaHJlZiIsICJodHRwOi8vMTI3LjAuMC4xOjgw
MDAvd21sL3Jlc291cmNlcy9hbnN3ZXIuY2dpIik7CisKKyAgICB2YXIgcG9zdGZpZWxkRWxlbWVu
dDEgPSBjcmVhdGVXTUxFbGVtZW50KCJwb3N0ZmllbGQiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50
MS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCAidmFyMSIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQxLnNl
dEF0dHJpYnV0ZSgidmFsdWUiLCAiVGV4dCB3aXRoIHdoaXRlc3BhY2UiKTsKKyAgICBnb0VsZW1l
bnQuYXBwZW5kQ2hpbGQocG9zdGZpZWxkRWxlbWVudDEpOworCisgICAgdmFyIHBvc3RmaWVsZEVs
ZW1lbnQyID0gY3JlYXRlV01MRWxlbWVudCgicG9zdGZpZWxkIik7CisgICAgcG9zdGZpZWxkRWxl
bWVudDIuc2V0QXR0cmlidXRlKCJuYW1lIiwgInZhcjIiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50
Mi5zZXRBdHRyaWJ1dGUoInZhbHVlIiwgIlRleHQgd2l0aCBlbnRpdGllczogJmF1bWw7IGFuZCAm
b3VtbDsiKTsKKyAgICBnb0VsZW1lbnQuYXBwZW5kQ2hpbGQocG9zdGZpZWxkRWxlbWVudDIpOwor
CisgICAgYW5jaG9yRWxlbWVudC5hcHBlbmRDaGlsZChnb0VsZW1lbnQpOworfQorCitmdW5jdGlv
biBwcmVwYXJlVGVzdCgpIHsKKyAgICBzdGFydFRlc3QoMjUsIDE1KTsKK30KKworZnVuY3Rpb24g
ZXhlY3V0ZVRlc3QoKSB7CisgICAgY29tcGxldGVUZXN0KCk7Cit9CisKK3ZhciBzdWNjZXNzZnVs
bHlQYXJzZWQgPSB0cnVlOwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3Vy
Y2VzL2dvLXRhc2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuanMKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2stcG9zdC1tZXRob2Qt
YWNjZXB0LWNoYXJzZXQuanMJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dtbC9yZXNvdXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qcwkocmV2
aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorLy8gW05hbWVdIGdvLXRhc2stcG9zdC1tZXRob2Qt
YWNjZXB0LWNoYXJzZXQuanMKKworY3JlYXRlV01MVGVzdENhc2UoIlRlc3RzIFBPU1QgbWV0aG9k
IG9mICZsdDtnbyZndDsgZWxlbWVudCAtIGFjY2VwdC1jaGFyc2V0IGF0dHJpYnV0ZSIsIGZhbHNl
KTsKKworZnVuY3Rpb24gc2V0dXBUZXN0RG9jdW1lbnQoKSB7CisgICAgdmFyIGNhcmRFbGVtZW50
ID0gdGVzdERvY3VtZW50LmRvY3VtZW50RWxlbWVudC5maXJzdENoaWxkOworCisgICAgdmFyIGFu
Y2hvckVsZW1lbnQgPSBjcmVhdGVXTUxFbGVtZW50KCJhbmNob3IiKTsKKyAgICBhbmNob3JFbGVt
ZW50LmFwcGVuZENoaWxkKHRlc3REb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgiU3RhcnQgdGVzdCIp
KTsKKyAgICBjYXJkRWxlbWVudC5hcHBlbmRDaGlsZChhbmNob3JFbGVtZW50KTsKKworICAgIHZh
ciBnb0VsZW1lbnQgPSBjcmVhdGVXTUxFbGVtZW50KCJnbyIpOworICAgIGdvRWxlbWVudC5zZXRB
dHRyaWJ1dGUoIm1ldGhvZCIsICJQT1NUIik7CisgICAgZ29FbGVtZW50LnNldEF0dHJpYnV0ZSgi
YWNjZXB0LWNoYXJzZXQiLCAidXRmLTgiKTsKKyAgICBnb0VsZW1lbnQuc2V0QXR0cmlidXRlKCJo
cmVmIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC93bWwvcmVzb3VyY2VzL2Fuc3dlci11dGY4LmNn
aSIpOworCisgICAgdmFyIHBvc3RmaWVsZEVsZW1lbnQxID0gY3JlYXRlV01MRWxlbWVudCgicG9z
dGZpZWxkIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDEuc2V0QXR0cmlidXRlKCJuYW1lIiwgInZh
cjEiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50MS5zZXRBdHRyaWJ1dGUoInZhbHVlIiwgIlRleHQg
d2l0aCB3aGl0ZXNwYWNlIik7CisgICAgZ29FbGVtZW50LmFwcGVuZENoaWxkKHBvc3RmaWVsZEVs
ZW1lbnQxKTsKKworICAgIHZhciBwb3N0ZmllbGRFbGVtZW50MiA9IGNyZWF0ZVdNTEVsZW1lbnQo
InBvc3RmaWVsZCIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQyLnNldEF0dHJpYnV0ZSgibmFtZSIs
ICJ2YXIyIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDIuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsICJU
ZXh0IHdpdGggbm9uLWxhdGluMSBjaGFyYWN0ZXJzOiBTY2jDtm4sIGRhw58gZXMgw4QmT3VtbDvD
nCBnaWJ0ISIpOworICAgIGdvRWxlbWVudC5hcHBlbmRDaGlsZChwb3N0ZmllbGRFbGVtZW50Mik7
CisKKyAgICBhbmNob3JFbGVtZW50LmFwcGVuZENoaWxkKGdvRWxlbWVudCk7Cit9CisKK2Z1bmN0
aW9uIHByZXBhcmVUZXN0KCkgeworICAgIHN0YXJ0VGVzdCgyNSwgMTUpOworfQorCitmdW5jdGlv
biBleGVjdXRlVGVzdCgpIHsKKyAgICBjb21wbGV0ZVRlc3QoKTsKK30KKwordmFyIHN1Y2Nlc3Nm
dWxseVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNv
dXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9o
dHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC5qcwkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9nby10YXNrLXBvc3Qt
bWV0aG9kLmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACisvLyBbTmFtZV0gZ28tdGFz
ay1wb3N0LW1ldGhvZC5qcworCitjcmVhdGVXTUxUZXN0Q2FzZSgiVGVzdHMgUE9TVCBtZXRob2Qg
b2YgJmx0O2dvJmd0OyBlbGVtZW50IiwgZmFsc2UpOworCitmdW5jdGlvbiBzZXR1cFRlc3REb2N1
bWVudCgpIHsKKyAgICB2YXIgY2FyZEVsZW1lbnQgPSB0ZXN0RG9jdW1lbnQuZG9jdW1lbnRFbGVt
ZW50LmZpcnN0Q2hpbGQ7CisKKyAgICB2YXIgYW5jaG9yRWxlbWVudCA9IGNyZWF0ZVdNTEVsZW1l
bnQoImFuY2hvciIpOworICAgIGFuY2hvckVsZW1lbnQuYXBwZW5kQ2hpbGQodGVzdERvY3VtZW50
LmNyZWF0ZVRleHROb2RlKCJTdGFydCB0ZXN0IikpOworICAgIGNhcmRFbGVtZW50LmFwcGVuZENo
aWxkKGFuY2hvckVsZW1lbnQpOworCisgICAgdmFyIGdvRWxlbWVudCA9IGNyZWF0ZVdNTEVsZW1l
bnQoImdvIik7CisgICAgZ29FbGVtZW50LnNldEF0dHJpYnV0ZSgibWV0aG9kIiwgIlBPU1QiKTsK
KyAgICBnb0VsZW1lbnQuc2V0QXR0cmlidXRlKCJocmVmIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAw
MC93bWwvcmVzb3VyY2VzL2Fuc3dlci5jZ2kiKTsKKworICAgIHZhciBwb3N0ZmllbGRFbGVtZW50
MSA9IGNyZWF0ZVdNTEVsZW1lbnQoInBvc3RmaWVsZCIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQx
LnNldEF0dHJpYnV0ZSgibmFtZSIsICJ2YXIxIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDEuc2V0
QXR0cmlidXRlKCJ2YWx1ZSIsICJUZXh0IHdpdGggd2hpdGVzcGFjZSIpOworICAgIGdvRWxlbWVu
dC5hcHBlbmRDaGlsZChwb3N0ZmllbGRFbGVtZW50MSk7CisKKyAgICB2YXIgcG9zdGZpZWxkRWxl
bWVudDIgPSBjcmVhdGVXTUxFbGVtZW50KCJwb3N0ZmllbGQiKTsKKyAgICBwb3N0ZmllbGRFbGVt
ZW50Mi5zZXRBdHRyaWJ1dGUoIm5hbWUiLCAidmFyMiIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQy
LnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiVGV4dCB3aXRoIGVudGl0aWVzOiAmYXVtbDsgYW5kICZv
dW1sOyIpOworICAgIGdvRWxlbWVudC5hcHBlbmRDaGlsZChwb3N0ZmllbGRFbGVtZW50Mik7CisK
KyAgICBhbmNob3JFbGVtZW50LmFwcGVuZENoaWxkKGdvRWxlbWVudCk7Cit9CisKK2Z1bmN0aW9u
IHByZXBhcmVUZXN0KCkgeworICAgIHN0YXJ0VGVzdCgyNSwgMTUpOworfQorCitmdW5jdGlvbiBl
eGVjdXRlVGVzdCgpIHsKKyAgICBjb21wbGV0ZVRlc3QoKTsKK30KKwordmFyIHN1Y2Nlc3NmdWxs
eVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvZ28tdGFzay1hbmltYXRpb24u
aHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93bWwvZ28tdGFzay1hbmltYXRpb24uaHRt
bAkocmV2aXNpb24gMzk0MjUpCisrKyBMYXlvdXRUZXN0cy93bWwvZ28tdGFzay1hbmltYXRpb24u
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMiw2ICsyLDcgQEAKIDxodG1sPgogPGhlYWQ+CiA8bGlu
ayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5
bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJlbGF0aXZlUGF0aFRvTGF5b3V0VGVzdHMgPSAiLi4iOzwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9XTUxUZXN0Q2FzZS5qcyI+PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgogPC9oZWFkPgpJbmRleDogTGF5b3V0VGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1l
eHRlcm5hbC1kZWNrLXdpdGgtaHJlZi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dt
bC9nby10YXNrLWdldC1tZXRob2QtZXh0ZXJuYWwtZGVjay13aXRoLWhyZWYuaHRtbAkocmV2aXNp
b24gMzk0MjUpCisrKyBMYXlvdXRUZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLWV4dGVybmFs
LWRlY2std2l0aC1ocmVmLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIsNiArMiw3IEBACiA8aHRt
bD4KIDxoZWFkPgogPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0PnZhciByZWxhdGl2ZVBhdGhUb0xheW91
dFRlc3RzID0gIi4uIjs8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvV01MVGVzdENh
c2UuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRl
c3QtcHJlLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KSW5kZXg6IExheW91dFRlc3RzL3dtbC9nby10
YXNrLWdldC1tZXRob2QtZXh0ZXJuYWwtZGVjay5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtZXh0ZXJuYWwtZGVjay5odG1sCShyZXZpc2lvbiAz
OTQyNSkKKysrIExheW91dFRlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtZXh0ZXJuYWwtZGVj
ay5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIsNyBAQAogPGh0bWw+CiA8aGVhZD4KIDxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLiI7
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+CiA8L2hlYWQ+CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9k
LXNhbWUtZGVjay5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dtbC9nby10YXNrLWdl
dC1tZXRob2Qtc2FtZS1kZWNrLmh0bWwJKHJldmlzaW9uIDM5NDI1KQorKysgTGF5b3V0VGVzdHMv
d21sL2dvLXRhc2stZ2V0LW1ldGhvZC1zYW1lLWRlY2suaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
Miw2ICsyLDcgQEAKIDxodG1sPgogPGhlYWQ+CiA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJl
bGF0aXZlUGF0aFRvTGF5b3V0VGVzdHMgPSAiLi4iOzwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJl
c291cmNlcy9XTUxUZXN0Q2FzZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vZmFzdC9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgogPC9oZWFkPgpJbmRleDogTGF5
b3V0VGVzdHMvd21sL3ZhcmlhYmxlLXJlZmVyZW5jZS1pbnZhbGlkLWNoYXJhY3Rlci5odG1sCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dtbC92YXJpYWJsZS1yZWZlcmVuY2UtaW52YWxpZC1j
aGFyYWN0ZXIuaHRtbAkocmV2aXNpb24gMzk0MjUpCisrKyBMYXlvdXRUZXN0cy93bWwvdmFyaWFi
bGUtcmVmZXJlbmNlLWludmFsaWQtY2hhcmFjdGVyLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIs
NiArMiw3IEBACiA8aHRtbD4KIDxoZWFkPgogPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIu
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0PnZhciByZWxh
dGl2ZVBhdGhUb0xheW91dFRlc3RzID0gIi4uIjs8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvV01MVGVzdENhc2UuanMiPjwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMv
cmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KIDwvaGVhZD4KSW5kZXg6IExheW91
dFRlc3RzL3dtbC92YXJpYWJsZS1yZWZlcmVuY2UtdmFsaWQuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy93bWwvdmFyaWFibGUtcmVmZXJlbmNlLXZhbGlkLmh0bWwJKHJldmlzaW9uIDM5
NDI1KQorKysgTGF5b3V0VGVzdHMvd21sL3ZhcmlhYmxlLXJlZmVyZW5jZS12YWxpZC5odG1sCSh3
b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIsNyBAQAogPGh0bWw+CiA8aGVhZD4KIDxsaW5rIHJlbD0i
c3R5bGVzaGVldCIgaHJlZj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3Mi
PgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLiI7PC9zY3JpcHQ+
CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzIj48L3NjcmlwdD4KIDxzY3Jp
cHQgc3JjPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8
L2hlYWQ+CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL1RFTVBMQVRFLmh0bWwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd21sL3Jlc291cmNlcy9URU1QTEFURS5odG1sCShyZXZp
c2lvbiAzOTQyNSkKKysrIExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbAko
d29ya2luZyBjb3B5KQpAQCAtMiw2ICsyLDcgQEAKIDxodG1sPgogPGhlYWQ+CiA8bGluayByZWw9
InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3Nz
Ij4KKzxzY3JpcHQ+dmFyIHJlbGF0aXZlUGF0aFRvTGF5b3V0VGVzdHMgPSAiLi4iOzwvc2NyaXB0
PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9XTUxUZXN0Q2FzZS5qcyI+PC9zY3JpcHQ+CiA8c2Ny
aXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgog
PC9oZWFkPgpJbmRleDogTGF5b3V0VGVzdHMvd21sL3Jlc291cmNlcy9XTUxUZXN0Q2FzZS5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzCShy
ZXZpc2lvbiAzOTQyNSkKKysrIExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvV01MVGVzdENhc2Uu
anMJKHdvcmtpbmcgY29weSkKQEAgLTE2LDcgKzE2LDcgQEAgZnVuY3Rpb24gY3JlYXRlV01MVGVz
dENhc2UoZGVzYywgc3Vic3RpdAogICAgIHZhciBkZWZhdWx0VGVzdCA9IHRydWU7CiAgICAgaWYg
KHRlc3ROYW1lID09IG51bGwpIHsKICAgICAgICAgZGVmYXVsdFRlc3QgPSBmYWxzZTsKLSAgICAg
ICAgdGVzdE5hbWUgPSAicmVzb3VyY2VzL3Rlc3QtZG9jdW1lbnQud21sIjsKKyAgICAgICAgdGVz
dE5hbWUgPSByZWxhdGl2ZVBhdGhUb0xheW91dFRlc3RzICsgIi93bWwvcmVzb3VyY2VzL3Rlc3Qt
ZG9jdW1lbnQud21sIjsKICAgICB9CiAKICAgICBkZXNjcmlwdGlvbihkZXNjKTsKQEAgLTkzLDcg
KzkzLDcgQEAgZnVuY3Rpb24gY29tcGxldGVUZXN0KCkgewogICAgICAgICAgICAgd2luZG93LnNl
dFRpbWVvdXQoImxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKSIsIDApOwogICAgIH07
CiAKLSAgICBzY3JpcHQuc3JjID0gIi4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5q
cyI7CisgICAgc2NyaXB0LnNyYyA9IHJlbGF0aXZlUGF0aFRvTGF5b3V0VGVzdHMgKyAiL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI7CiAgICAgc3VjY2Vzc2Z1bGx5UGFyc2VkID0g
dHJ1ZTsKIAogICAgIGJvZHlFbGVtZW50LmFwcGVuZENoaWxkKHNjcmlwdCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26193</attachid>
            <date>2008-12-21 17:50:58 -0800</date>
            <delta_ts>2008-12-21 17:53:42 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>WMLPost.diff</filename>
            <type>text/plain</type>
            <size>10672</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTQzMCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzEgQEAKKzIwMDgtMTItMjIgIE5pa29sYXMgWmltbWVybWFubiAgPG5pa29sYXMu
emltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRml4ZXM6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0yMjYzOAorCisgICAgICAgIEFkZCBQT1NUIG1ldGhvZCBzdXBwb3J0IHRvIFdN
TEdvRWxlbWVudC4gR0VUICYgUE9TVCBvdmVyIEhUVFAKKyAgICAgICAgY292ZXJlZCBieSBhIG5l
dyBzZXQgb2YgV01MIEhUVFAgbGF5b3V0IHRlc3RzLgorCisgICAgICAgIFRlc3RzOiBodHRwL3Rl
c3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRtbAorICAgICAgICAg
ICAgICAgaHR0cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLmh0bWwKKyAgICAgICAgICAg
ICAgIGh0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRt
bAorICAgICAgICAgICAgICAgaHR0cC90ZXN0cy93bWwvZ28tdGFzay1wb3N0LW1ldGhvZC5odG1s
CisKKyAgICAgICAgKiB3bWwvV01MR29FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldN
TEdvRWxlbWVudDo6V01MR29FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldNTEdvRWxlbWVu
dDo6cmVnaXN0ZXJQb3N0ZmllbGRFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldNTEdvRWxl
bWVudDo6cGFyc2VNYXBwZWRBdHRyaWJ1dGUpOgorICAgICAgICAoV2ViQ29yZTo6V01MR29FbGVt
ZW50OjpleGVjdXRlVGFzayk6CisgICAgICAgIChXZWJDb3JlOjpXTUxHb0VsZW1lbnQ6OnByZXBh
cmVQT1NUUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpXTUxHb0VsZW1lbnQ6OnByZXBhcmVH
RVRSZXF1ZXN0KToKKyAgICAgICAgKFdlYkNvcmU6OldNTEdvRWxlbWVudDo6Y3JlYXRlRm9ybURh
dGEpOgorICAgICAgICAqIHdtbC9XTUxHb0VsZW1lbnQuaDoKKyAgICAgICAgKiB3bWwvV01MUG9z
dGZpZWxkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjplbmNvZGVkU3RyaW5nKToKKyAg
ICAgICAgKFdlYkNvcmU6OldNTFBvc3RmaWVsZEVsZW1lbnQ6OmVuY29kZURhdGEpOgorICAgICAg
ICAqIHdtbC9XTUxQb3N0ZmllbGRFbGVtZW50Lmg6CisKIDIwMDgtMTItMjAgIE5pa29sYXMgWmlt
bWVybWFubiAgPG5pa29sYXMuemltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgRGFyaW4gQWRsZXIgYW5kIEdlb3JnZSBTdGFpa29zLgpJbmRleDogV2ViQ29y
ZS93bWwvV01MR29FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dtbC9XTUxHb0Vs
ZW1lbnQuY3BwCShyZXZpc2lvbiAzOTQzMCkKKysrIFdlYkNvcmUvd21sL1dNTEdvRWxlbWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTI0LDEwICsyNCwxMyBAQAogI2lmIEVOQUJMRShXTUwpCiAj
aW5jbHVkZSAiV01MR29FbGVtZW50LmgiCiAKKyNpbmNsdWRlICJDU3RyaW5nLmgiCisjaW5jbHVk
ZSAiRm9ybURhdGEuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIkZyYW1lTG9hZGVy
LmgiCiAjaW5jbHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0Lmgi
CisjaW5jbHVkZSAiVGV4dEVuY29kaW5nLmgiCiAjaW5jbHVkZSAiV01MQ2FyZEVsZW1lbnQuaCIK
ICNpbmNsdWRlICJXTUxEb2N1bWVudC5oIgogI2luY2x1ZGUgIldNTE5hbWVzLmgiCkBAIC00Miwz
MCArNDUsMjIgQEAgdXNpbmcgbmFtZXNwYWNlIFdNTE5hbWVzOwogCiBXTUxHb0VsZW1lbnQ6OldN
TEdvRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCogZG9jKQog
ICAgIDogV01MVGFza0VsZW1lbnQodGFnTmFtZSwgZG9jKQotICAgICwgbV9jb250ZW50VHlwZSgi
YXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIikKLSAgICAsIG1faXNNdWx0aVBhcnQo
ZmFsc2UpCi0gICAgLCBtX2lzUG9zdE1ldGhvZChmYWxzZSkKIHsKIH0KICAKIHZvaWQgV01MR29F
bGVtZW50OjpyZWdpc3RlclBvc3RmaWVsZEVsZW1lbnQoV01MUG9zdGZpZWxkRWxlbWVudCogcG9z
dGZpZWxkKQogewotICAgIG1fcG9zdGZpZWxkRWxlbWVudHMuYWRkKHBvc3RmaWVsZCk7CisgICAg
bV9wb3N0ZmllbGRFbGVtZW50cy5hcHBlbmQocG9zdGZpZWxkKTsKIH0KIAogdm9pZCBXTUxHb0Vs
ZW1lbnQ6OnBhcnNlTWFwcGVkQXR0cmlidXRlKE1hcHBlZEF0dHJpYnV0ZSogYXR0cikKIHsKLSAg
ICBpZiAoYXR0ci0+bmFtZSgpID09IEhUTUxOYW1lczo6bWV0aG9kQXR0cikgewotICAgICAgICBj
b25zdCBBdG9taWNTdHJpbmcmIHZhbHVlID0gYXR0ci0+dmFsdWUoKTsKLQotICAgICAgICBpZiAo
dmFsdWUgPT0gIlBPU1QiKQotICAgICAgICAgICAgbV9pc1Bvc3RNZXRob2QgPSB0cnVlOwotICAg
ICAgICBlbHNlIGlmICh2YWx1ZSA9PSAiR0VUIikKLSAgICAgICAgICAgIG1faXNQb3N0TWV0aG9k
ID0gZmFsc2U7Ci0gICAgfSBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gSFRNTE5hbWVzOjplbmN0
eXBlQXR0cikKLSAgICAgICAgcGFyc2VDb250ZW50VHlwZShwYXJzZVZhbHVlU3Vic3RpdHV0aW5n
VmFyaWFibGVSZWZlcmVuY2VzKGF0dHItPnZhbHVlKCkpKTsKKyAgICBpZiAoYXR0ci0+bmFtZSgp
ID09IEhUTUxOYW1lczo6bWV0aG9kQXR0cikKKyAgICAgICAgbV9mb3JtRGF0YUJ1aWxkZXIucGFy
c2VNZXRob2RUeXBlKGF0dHItPnZhbHVlKCkpOworICAgIGVsc2UgaWYgKGF0dHItPm5hbWUoKSA9
PSBIVE1MTmFtZXM6OmVuY3R5cGVBdHRyKQorICAgICAgICBtX2Zvcm1EYXRhQnVpbGRlci5wYXJz
ZUVuY29kaW5nVHlwZShwYXJzZVZhbHVlU3Vic3RpdHV0aW5nVmFyaWFibGVSZWZlcmVuY2VzKGF0
dHItPnZhbHVlKCkpKTsKICAgICBlbHNlIGlmIChhdHRyLT5uYW1lKCkgPT0gSFRNTE5hbWVzOjph
Y2NlcHRfY2hhcnNldEF0dHIpCi0gICAgICAgIG1fYWNjZXB0Q2hhcnNldCA9IHBhcnNlVmFsdWVG
b3JiaWRkaW5nVmFyaWFibGVSZWZlcmVuY2VzKGF0dHItPnZhbHVlKCkpOworICAgICAgICBtX2Zv
cm1EYXRhQnVpbGRlci5zZXRBY2NlcHRDaGFyc2V0KHBhcnNlVmFsdWVGb3JiaWRkaW5nVmFyaWFi
bGVSZWZlcmVuY2VzKGF0dHItPnZhbHVlKCkpKTsKICAgICBlbHNlCiAgICAgICAgIFdNTFRhc2tF
bGVtZW50OjpwYXJzZU1hcHBlZEF0dHJpYnV0ZShhdHRyKTsKIH0KQEAgLTEyNCwxNSArMTE5LDEw
IEBAIHZvaWQgV01MR29FbGVtZW50OjpleGVjdXRlVGFzayhFdmVudCogZXYKIAogICAgIFN0cmlu
ZyBjYWNoZUNvbnRyb2wgPSBnZXRBdHRyaWJ1dGUoY2FjaGVfY29udHJvbEF0dHIpOwogCi0gICAg
aWYgKG1faXNQb3N0TWV0aG9kKQorICAgIGlmIChtX2Zvcm1EYXRhQnVpbGRlci5pc1Bvc3RNZXRo
b2QoKSkKICAgICAgICAgcHJlcGFyZVBPU1RSZXF1ZXN0KHJlcXVlc3QsIGluU2FtZURlY2ssIGNh
Y2hlQ29udHJvbCk7Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8vIEV2ZW50dWFsbHkgZGlzcGxheSBl
cnJvciBtZXNzYWdlPwotICAgICAgICBpZiAobV9pc011bHRpUGFydCkKLSAgICAgICAgICAgIHJl
dHVybjsKLQorICAgIGVsc2UKICAgICAgICAgcHJlcGFyZUdFVFJlcXVlc3QocmVxdWVzdCwgdXJs
KTsKLSAgICB9CiAKICAgICAvLyBTZXQgSFRUUCBjYWNoZS1jb250cm9sIGhlYWRlciBpZiBuZWVk
ZWQKICAgICBpZiAoIWNhY2hlQ29udHJvbC5pc0VtcHR5KCkpIHsKQEAgLTE0NSwxNyArMTM1LDYg
QEAgdm9pZCBXTUxHb0VsZW1lbnQ6OmV4ZWN1dGVUYXNrKEV2ZW50KiBldgogICAgIGxvYWRlci0+
bG9hZChyZXF1ZXN0KTsKIH0KIAotdm9pZCBXTUxHb0VsZW1lbnQ6OnBhcnNlQ29udGVudFR5cGUo
Y29uc3QgU3RyaW5nJiB0eXBlKQotewotICAgIGlmICh0eXBlLmNvbnRhaW5zKCJtdWx0aXBhcnQi
LCBmYWxzZSkgfHwgdHlwZS5jb250YWlucygiZm9ybS1kYXRhIiwgZmFsc2UpKSB7Ci0gICAgICAg
IG1fY29udGVudFR5cGUgPSAibXVsdGlwYXJ0L2Zvcm0tZGF0YSI7Ci0gICAgICAgIG1faXNNdWx0
aVBhcnQgPSB0cnVlOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIG1fY29udGVudFR5cGUgPSAiYXBw
bGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkIjsKLSAgICAgICAgbV9pc011bHRpUGFydCA9
IGZhbHNlOwotICAgIH0KLX0KLQogdm9pZCBXTUxHb0VsZW1lbnQ6OnByZXBhcmVQT1NUUmVxdWVz
dChSZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGJvb2wgaW5TYW1lRGVjaywgY29uc3QgU3RyaW5n
JiBjYWNoZUNvbnRyb2wpCiB7CiAgICAgcmVxdWVzdC5zZXRIVFRQTWV0aG9kKCJQT1NUIik7CkBA
IC0xNjUsNDkgKzE0NCw3MCBAQCB2b2lkIFdNTEdvRWxlbWVudDo6cHJlcGFyZVBPU1RSZXF1ZXN0
KFJlCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IFBP
U1QgbWV0aG9kLgotICAgIC8qCiAgICAgUmVmUHRyPEZvcm1EYXRhPiBkYXRhOwogCi0gICAgaWYg
KG1faXNNdWx0aVBhcnQpIHsgLy8gbXVsdGlwYXJ0L2Zvcm0tZGF0YQotICAgICAgICBWZWN0b3I8
Y2hhcj4gYm91bmRhcnk7Ci0gICAgICAgIGdldFVuaXF1ZUJvdW5kYXJ5U3RyaW5nKGJvdW5kYXJ5
KTsKLSAgICAgICAgZGF0YSA9IGNyZWF0ZUZvcm1EYXRhKGxvYWRlciwgYm91bmRhcnkuZGF0YSgp
KTsKLSAgICAgICAgcmVxdWVzdC5zZXRIVFRQQ29udGVudFR5cGUobV9jb250ZW50VHlwZSArICI7
IGJvdW5kYXJ5PSIgKyBib3VuZGFyeS5kYXRhKCkpOworICAgIGlmIChtX2Zvcm1EYXRhQnVpbGRl
ci5pc011bHRpUGFydEZvcm0oKSkgeyAvLyBtdWx0aXBhcnQvZm9ybS1kYXRhCisgICAgICAgIFZl
Y3RvcjxjaGFyPiBib3VuZGFyeSA9IG1fZm9ybURhdGFCdWlsZGVyLmdlbmVyYXRlVW5pcXVlQm91
bmRhcnlTdHJpbmcoKTsKKyAgICAgICAgZGF0YSA9IGNyZWF0ZUZvcm1EYXRhKGJvdW5kYXJ5LmRh
dGEoKSk7CisgICAgICAgIHJlcXVlc3Quc2V0SFRUUENvbnRlbnRUeXBlKG1fZm9ybURhdGFCdWls
ZGVyLmVuY29kaW5nVHlwZSgpICsgIjsgYm91bmRhcnk9IiArIGJvdW5kYXJ5LmRhdGEoKSk7CiAg
ICAgfSBlbHNlIHsKICAgICAgICAgLy8gdGV4dC9wbGFpbiBvciBhcHBsaWNhdGlvbi94LXd3dy1m
b3JtLXVybGVuY29kZWQKLSAgICAgICAgZGF0YSA9IGNyZWF0ZUZvcm1EYXRhKGxvYWRlciwgMCk7
Ci0gICAgICAgIHJlcXVlc3Quc2V0SFRUUENvbnRlbnRUeXBlKG1fY29udGVudFR5cGUpOworICAg
ICAgICBkYXRhID0gY3JlYXRlRm9ybURhdGEoQ1N0cmluZygpKTsKKyAgICAgICAgcmVxdWVzdC5z
ZXRIVFRQQ29udGVudFR5cGUobV9mb3JtRGF0YUJ1aWxkZXIuZW5jb2RpbmdUeXBlKCkpOwogICAg
IH0KIAogICAgIHJlcXVlc3Quc2V0SFRUUEJvZHkoZGF0YS5nZXQoKSk7Ci0gICAgKi8KIH0KIAog
dm9pZCBXTUxHb0VsZW1lbnQ6OnByZXBhcmVHRVRSZXF1ZXN0KFJlc291cmNlUmVxdWVzdCYgcmVx
dWVzdCwgY29uc3QgS1VSTCYgdXJsKQogewotICAgIFN0cmluZyBxdWVyeVN0cmluZzsKKyAgICBy
ZXF1ZXN0LnNldEhUVFBNZXRob2QoIkdFVCIpOwogCi0gICAgSGFzaFNldDxXTUxQb3N0ZmllbGRF
bGVtZW50Kj46Oml0ZXJhdG9yIGl0ID0gbV9wb3N0ZmllbGRFbGVtZW50cy5iZWdpbigpOwotICAg
IEhhc2hTZXQ8V01MUG9zdGZpZWxkRWxlbWVudCo+OjppdGVyYXRvciBlbmQgPSBtX3Bvc3RmaWVs
ZEVsZW1lbnRzLmVuZCgpOworICAgIC8vIEV2ZW50dWFsbHkgZGlzcGxheSBlcnJvciBtZXNzYWdl
PworICAgIGlmIChtX2Zvcm1EYXRhQnVpbGRlci5pc011bHRpUGFydEZvcm0oKSkKKyAgICAgICAg
cmV0dXJuOwogCi0gICAgZm9yICg7IGl0ICE9IGVuZDsgKytpdCkgewotICAgICAgICBXTUxQb3N0
ZmllbGRFbGVtZW50KiBwb3N0ZmllbGQgPSAoKml0KTsKKyAgICBSZWZQdHI8Rm9ybURhdGE+IGRh
dGEgPSBjcmVhdGVGb3JtRGF0YShDU3RyaW5nKCkpOworCisgICAgS1VSTCByZW1vdGVVUkwodXJs
KTsKKyAgICByZW1vdGVVUkwuc2V0UXVlcnkoZGF0YS0+ZmxhdHRlblRvU3RyaW5nKCkpOworICAg
IHJlcXVlc3Quc2V0VVJMKHJlbW90ZVVSTCk7Cit9CiAKLSAgICAgICAgaWYgKCFxdWVyeVN0cmlu
Zy5pc0VtcHR5KCkpCi0gICAgICAgICAgICBxdWVyeVN0cmluZyArPSAiJiI7CitQYXNzUmVmUHRy
PEZvcm1EYXRhPiBXTUxHb0VsZW1lbnQ6OmNyZWF0ZUZvcm1EYXRhKGNvbnN0IENTdHJpbmcmIGJv
dW5kYXJ5KQoreworICAgIENTdHJpbmcga2V5OworICAgIENTdHJpbmcgdmFsdWU7CiAKLSAgICAg
ICAgcXVlcnlTdHJpbmcgKz0gZW5jb2RlV2l0aFVSTEVzY2FwZVNlcXVlbmNlcyhwb3N0ZmllbGQt
Pm5hbWUoKSkgKyAibSIgKwotICAgICAgICAgICAgICAgICAgICAgICBlbmNvZGVXaXRoVVJMRXNj
YXBlU2VxdWVuY2VzKHBvc3RmaWVsZC0+dmFsdWUoKSk7Ci0gICAgfQorICAgIFZlY3RvcjxjaGFy
PiBlbmNvZGVkRGF0YTsKKyAgICBUZXh0RW5jb2RpbmcgZW5jb2RpbmcgPSBtX2Zvcm1EYXRhQnVp
bGRlci5kYXRhRW5jb2RpbmcoZG9jdW1lbnQoKSkuZW5jb2RpbmdGb3JGb3JtU3VibWlzc2lvbigp
OwogCi0gICAgS1VSTCByZW1vdGVVUkwodXJsKTsKLSAgICByZW1vdGVVUkwuc2V0UXVlcnkocXVl
cnlTdHJpbmcpOworICAgIFZlY3RvcjxXTUxQb3N0ZmllbGRFbGVtZW50Kj46Oml0ZXJhdG9yIGl0
ID0gbV9wb3N0ZmllbGRFbGVtZW50cy5iZWdpbigpOworICAgIFZlY3RvcjxXTUxQb3N0ZmllbGRF
bGVtZW50Kj46Oml0ZXJhdG9yIGVuZCA9IG1fcG9zdGZpZWxkRWxlbWVudHMuZW5kKCk7CiAKLSAg
ICByZXF1ZXN0LnNldFVSTChyZW1vdGVVUkwpOwotICAgIHJlcXVlc3Quc2V0SFRUUE1ldGhvZCgi
R0VUIik7CisgICAgUmVmUHRyPEZvcm1EYXRhPiByZXN1bHQgPSBGb3JtRGF0YTo6Y3JlYXRlKCk7
CisgICAgZm9yICg7IGl0ICE9IGVuZDsgKytpdCkgeworICAgICAgICAoKml0KS0+ZW5jb2RlRGF0
YShlbmNvZGluZywga2V5LCB2YWx1ZSk7CisKKyAgICAgICAgaWYgKG1fZm9ybURhdGFCdWlsZGVy
LmlzTXVsdGlQYXJ0Rm9ybSgpKSB7CisgICAgICAgICAgICBWZWN0b3I8Y2hhcj4gaGVhZGVyOwor
ICAgICAgICAgICAgbV9mb3JtRGF0YUJ1aWxkZXIuYmVnaW5NdWx0aVBhcnRIZWFkZXIoaGVhZGVy
LCBib3VuZGFyeSwga2V5KTsKKyAgICAgICAgICAgIG1fZm9ybURhdGFCdWlsZGVyLmZpbmlzaE11
bHRpUGFydEhlYWRlcihoZWFkZXIpOworICAgICAgICAgICAgcmVzdWx0LT5hcHBlbmREYXRhKGhl
YWRlci5kYXRhKCksIGhlYWRlci5zaXplKCkpOworCisgICAgICAgICAgICBpZiAoc2l6ZV90IGRh
dGFTaXplID0gdmFsdWUubGVuZ3RoKCkpCisgICAgICAgICAgICAgICAgcmVzdWx0LT5hcHBlbmRE
YXRhKHZhbHVlLmRhdGEoKSwgZGF0YVNpemUpOworCisgICAgICAgICAgICByZXN1bHQtPmFwcGVu
ZERhdGEoIlxyXG4iLCAyKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBtX2Zvcm1EYXRh
QnVpbGRlci5hZGRLZXlWYWx1ZVBhaXJBc0Zvcm1EYXRhKGVuY29kZWREYXRhLCBrZXksIHZhbHVl
KTsKKyAgICB9CiAKKyAgICBpZiAobV9mb3JtRGF0YUJ1aWxkZXIuaXNNdWx0aVBhcnRGb3JtKCkp
CisgICAgICAgIG1fZm9ybURhdGFCdWlsZGVyLmFkZEJvdW5kYXJ5VG9NdWx0aVBhcnRIZWFkZXIo
ZW5jb2RlZERhdGEsIGJvdW5kYXJ5LCB0cnVlKTsKIAorICAgIHJlc3VsdC0+YXBwZW5kRGF0YShl
bmNvZGVkRGF0YS5kYXRhKCksIGVuY29kZWREYXRhLnNpemUoKSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KIAogfQpJbmRleDogV2ViQ29yZS93bWwvV01MR29FbGVtZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS93bWwvV01MR29FbGVtZW50LmgJKHJldmlzaW9uIDM5NDMwKQorKysgV2ViQ29y
ZS93bWwvV01MR29FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTIzLDEwICsyMywxMiBAQAog
I2RlZmluZSBXTUxHb0VsZW1lbnRfaAogCiAjaWYgRU5BQkxFKFdNTCkKKyNpbmNsdWRlICJGb3Jt
RGF0YUJ1aWxkZXIuaCIKICNpbmNsdWRlICJXTUxUYXNrRWxlbWVudC5oIgogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKK2NsYXNzIEZvcm1EYXRhOwogY2xhc3MgUmVzb3VyY2VSZXF1ZXN0OwogY2xh
c3MgV01MUG9zdGZpZWxkRWxlbWVudDsKIApAQCAtNDAsMTggKzQyLDEzIEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIHZvaWQgZXhlY3V0ZVRhc2soRXZlbnQqKTsKIAogcHJpdmF0ZToKLSAgICB2b2lk
IHBhcnNlQ29udGVudFR5cGUoY29uc3QgU3RyaW5nJik7Ci0KICAgICB2b2lkIHByZXBhcmVQT1NU
UmVxdWVzdChSZXNvdXJjZVJlcXVlc3QmLCBib29sIGluU2FtZURlY2ssIGNvbnN0IFN0cmluZyYg
Y2FjaGVDb250cm9sKTsKICAgICB2b2lkIHByZXBhcmVHRVRSZXF1ZXN0KFJlc291cmNlUmVxdWVz
dCYsIGNvbnN0IEtVUkwmKTsKIAotICAgIEhhc2hTZXQ8V01MUG9zdGZpZWxkRWxlbWVudCo+IG1f
cG9zdGZpZWxkRWxlbWVudHM7Ci0KLSAgICBTdHJpbmcgbV9jb250ZW50VHlwZTsKLSAgICBTdHJp
bmcgbV9hY2NlcHRDaGFyc2V0OworICAgIFBhc3NSZWZQdHI8Rm9ybURhdGE+IGNyZWF0ZUZvcm1E
YXRhKGNvbnN0IENTdHJpbmcmIGJvdW5kYXJ5KTsKIAotICAgIGJvb2wgbV9pc011bHRpUGFydDsK
LSAgICBib29sIG1faXNQb3N0TWV0aG9kOworICAgIFZlY3RvcjxXTUxQb3N0ZmllbGRFbGVtZW50
Kj4gbV9wb3N0ZmllbGRFbGVtZW50czsKKyAgICBGb3JtRGF0YUJ1aWxkZXIgbV9mb3JtRGF0YUJ1
aWxkZXI7CiB9OwogCiB9CkluZGV4OiBXZWJDb3JlL3dtbC9XTUxQb3N0ZmllbGRFbGVtZW50LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dtbC9XTUxQb3N0ZmllbGRFbGVtZW50LmNwcAkocmV2
aXNpb24gMzk0MzApCisrKyBXZWJDb3JlL3dtbC9XTUxQb3N0ZmllbGRFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMjQsNiArMjQsOCBAQAogI2lmIEVOQUJMRShXTUwpCiAjaW5jbHVkZSAi
V01MUG9zdGZpZWxkRWxlbWVudC5oIgogCisjaW5jbHVkZSAiQ1N0cmluZy5oIgorI2luY2x1ZGUg
IlRleHRFbmNvZGluZy5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1ZGUgIldNTERv
Y3VtZW50LmgiCiAjaW5jbHVkZSAiV01MR29FbGVtZW50LmgiCkBAIC02MSw2ICs2MywxNyBAQCB2
b2lkIFdNTFBvc3RmaWVsZEVsZW1lbnQ6Omluc2VydGVkSW50b0RvCiAgICAgc3RhdGljX2Nhc3Q8
V01MR29FbGVtZW50Kj4ocGFyZW50KS0+cmVnaXN0ZXJQb3N0ZmllbGRFbGVtZW50KHRoaXMpOwog
fQogCitzdGF0aWMgaW5saW5lIENTdHJpbmcgZW5jb2RlZFN0cmluZyhjb25zdCBUZXh0RW5jb2Rp
bmcmIGVuY29kaW5nLCBjb25zdCBTdHJpbmcmIGRhdGEpCit7CisgICAgcmV0dXJuIGVuY29kaW5n
LmVuY29kZShkYXRhLmNoYXJhY3RlcnMoKSwgZGF0YS5sZW5ndGgoKSwgRW50aXRpZXNGb3JVbmVu
Y29kYWJsZXMpOworfQorCit2b2lkIFdNTFBvc3RmaWVsZEVsZW1lbnQ6OmVuY29kZURhdGEoY29u
c3QgVGV4dEVuY29kaW5nJiBlbmNvZGluZywgQ1N0cmluZyYgbmFtZSwgQ1N0cmluZyYgdmFsdWUp
Cit7CisgICAgbmFtZSA9IGVuY29kZWRTdHJpbmcoZW5jb2RpbmcsIG1fbmFtZSk7CisgICAgdmFs
dWUgPSBlbmNvZGVkU3RyaW5nKGVuY29kaW5nLCBtX3ZhbHVlKTsKK30KKwogfQogCiAjZW5kaWYK
SW5kZXg6IFdlYkNvcmUvd21sL1dNTFBvc3RmaWVsZEVsZW1lbnQuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3dtbC9XTUxQb3N0ZmllbGRFbGVtZW50LmgJKHJldmlzaW9uIDM5NDMwKQorKysgV2Vi
Q29yZS93bWwvV01MUG9zdGZpZWxkRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4ICsy
NSw2IEBACiAjaWYgRU5BQkxFKFdNTCkKICNpbmNsdWRlICJXTUxFbGVtZW50LmgiCiAKLSNpbmNs
dWRlIDx3dGYvSGFzaFNldC5oPgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIFdNTFBv
c3RmaWVsZEVsZW1lbnQgOiBwdWJsaWMgV01MRWxlbWVudCB7CkBAIC0zOSw2ICszNyw5IEBAIHB1
YmxpYzoKICAgICBTdHJpbmcgbmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fbmFtZTsgfQogICAgIFN0
cmluZyB2YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWU7IH0KIAorICAgIC8vIEVuY29kZSBu
YW1lKCkgYW5kIHZhbHVlKCkgaW4gYSBDU3RyaW5nIHVzaW5nIHRoZSBwYXNzZWQgZW5jb2RpbmcK
KyAgICB2b2lkIGVuY29kZURhdGEoY29uc3QgVGV4dEVuY29kaW5nJiwgQ1N0cmluZyYgbmFtZSwg
Q1N0cmluZyYgdmFsdWUpOworCiBwcml2YXRlOgogICAgIFN0cmluZyBtX25hbWU7CiAgICAgU3Ry
aW5nIG1fdmFsdWU7Cg==
</data>
<flag name="review"
          id="12371"
          type_id="1"
          status="+"
          setter="staikos"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26194</attachid>
            <date>2008-12-21 17:51:26 -0800</date>
            <delta_ts>2008-12-21 17:53:45 -0800</delta_ts>
            <desc>Updated layout test results</desc>
            <filename>WMLPostTests.diff</filename>
            <type>text/plain</type>
            <size>23418</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDM5NDMwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMzcgQEAKKzIwMDgtMTItMjEgIE5pa29sYXMgWmltbWVybWFu
biAgPG5pa29sYXMuemltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIFdNTCBIVFRQIGxheW91dCB0ZXN0
cyBhbmQgYW4gaW5pdGl0YWwgc2V0IG9mIHJlc3VsdHMuCisgICAgICAgIEFsbG93IHRvIHJldXNl
IHRoZSBleGlzdGluZyBXTUxUZXN0Q2FzZS5qcyBmcmFtZXdvcmsgZnJvbSBhbm90aGVyCisgICAg
ICAgIExheW91dFRlc3RzLyB0b3AtbGV2ZWwgZGlyZWN0b3J5IC0gbW9kaWZ5IFRFTVBMQVRFLmh0
bWwgJiBXTUxUZXN0Q2FzZS5qcy4KKworICAgICAgICAqIGh0dHAvdGVzdHMvd21sOiBBZGRlZC4K
KyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJz
ZXQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9nby10YXNr
LWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQuaHRtbDogQWRkZWQuCisgICAgICAgICogaHR0cC90
ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogaHR0cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLmh0bWw6IEFkZGVkLgorICAgICAg
ICAqIGh0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtYWNjZXB0LWNoYXJzZXQtZXhw
ZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3Qt
bWV0aG9kLWFjY2VwdC1jaGFyc2V0Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
d21sL2dvLXRhc2stcG9zdC1tZXRob2QtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBo
dHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IGh0dHAvdGVzdHMvd21sL3Jlc291cmNlczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy93
bWwvcmVzb3VyY2VzL1RFTVBMQVRFLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVzdHMv
d21sL3Jlc291cmNlcy9hbnN3ZXItdXRmOC5jZ2k6IEFkZGVkLgorICAgICAgICAqIGh0dHAvdGVz
dHMvd21sL3Jlc291cmNlcy9hbnN3ZXIuY2dpOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3Rz
L3dtbC9yZXNvdXJjZXMvZ28tdGFzay1nZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LmpzOiBBZGRl
ZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1nZXQtbWV0aG9k
LmpzOiBBZGRlZC4KKyAgICAgICAgKiBodHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1w
b3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qczogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0
cy93bWwvcmVzb3VyY2VzL2dvLXRhc2stcG9zdC1tZXRob2QuanM6IEFkZGVkLgorICAgICAgICAq
IHdtbC9nby10YXNrLWFuaW1hdGlvbi5odG1sOgorICAgICAgICAqIHdtbC9nby10YXNrLWdldC1t
ZXRob2QtZXh0ZXJuYWwtZGVjay13aXRoLWhyZWYuaHRtbDoKKyAgICAgICAgKiB3bWwvZ28tdGFz
ay1nZXQtbWV0aG9kLWV4dGVybmFsLWRlY2suaHRtbDoKKyAgICAgICAgKiB3bWwvZ28tdGFzay1n
ZXQtbWV0aG9kLXNhbWUtZGVjay5odG1sOgorICAgICAgICAqIHdtbC9yZXNvdXJjZXMvVEVNUExB
VEUuaHRtbDoKKyAgICAgICAgKiB3bWwvcmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzOgorICAgICAg
ICAqIHdtbC92YXJpYWJsZS1yZWZlcmVuY2UtaW52YWxpZC1jaGFyYWN0ZXIuaHRtbDoKKyAgICAg
ICAgKiB3bWwvdmFyaWFibGUtcmVmZXJlbmNlLXZhbGlkLmh0bWw6CisKIDIwMDgtMTItMTkgIFph
biBEb2JlcnNlayAgPHphbmRvYmVyc2VrQGdtYWlsLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBIb2xnZXIgRnJleXRoZXIuCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10
YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1hY2NlcHQtY2hh
cnNldC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dtbC9nby10YXNrLWdldC1tZXRob2QtYWNjZXB0LWNoYXJzZXQtZXhwZWN0ZWQudHh0CShyZXZp
c2lvbiAwKQpAQCAtMCwwICsxLDIyIEBACitXTUwgaHR0cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0
cyAtIHVzaW5nIFhIVE1MIHNjcmlwdGluZworCisKK1Rlc3RzIEdFVCBtZXRob2Qgb2YgPGdvPiBl
bGVtZW50IC0gYWNjZXB0LWNoYXJzZXQgYXR0cmlidXRlCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxs
IHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBM
RVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExF
VEUKKworCistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0t
PicKKy0tLS0tLS0tCitUaGlzIHBhZ2Ugd2FzIHJlcXVlc3RlZCB3aXRoIGFuIEhUVFAgR0VUCisK
K1RoZSBxdWVyeSBwYXJhbWV0ZXJzIGFyZTogdmFyMT1UZXh0JTIwd2l0aCUyMHdoaXRlc3BhY2U7
dmFyMj1UZXh0JTIwd2l0aCUyMG5vbi1sYXRpbjElMjBjaGFyYWN0ZXJzJTNBJTIwU2NoJUMzJUI2
biUyQyUyMGRhJUMzJTlGJTIwZXMlMjAlQzMlODQlMjZPdW1sJTNCJUMzJTlDJTIwZ2lidCUyMQor
Rm9ybSBjb250ZW50IHZhcjE6ICdUZXh0IHdpdGggd2hpdGVzcGFjZScKK0Zvcm0gY29udGVudCB2
YXIyOiAnVGV4dCB3aXRoIG5vbi1sYXRpbjEgY2hhcmFjdGVyczogU2Now7ZuLCBkYcOfIGVzIMOE
w5bDnCBnaWJ0IScKKwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFzay1n
ZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
aHR0cC90ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0Lmh0bWwJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLWdldC1tZXRo
b2QtYWNjZXB0LWNoYXJzZXQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAorPCFE
T0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVh
ZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vZmFzdC9qcy9yZXNvdXJj
ZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRU
ZXN0cyA9ICIuLi8uLi8uLiI7PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vd21sL3Jl
c291cmNlcy9XTUxUZXN0Q2FzZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8aDE+V01MIGh0dHAgbmF2aWdhdGlvbiBsYXlvdXQgdGVzdHMgLSB1c2luZyBYSFRNTCBz
Y3JpcHRpbmc8L2gxPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xl
Ij48L2Rpdj4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZ28tdGFzay1nZXQtbWV0aG9kLWFjY2Vw
dC1jaGFyc2V0LmpzIiBjaGFyc2V0PSJ1dGY4Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4K
SW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1leHBl
Y3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFz
ay1nZXQtbWV0aG9kLWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0
dHAvdGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDAp
CkBAIC0wLDAgKzEsMjIgQEAKK1dNTCBodHRwIG5hdmlnYXRpb24gbGF5b3V0IHRlc3RzIC0gdXNp
bmcgWEhUTUwgc2NyaXB0aW5nCisKKworVGVzdHMgR0VUIG1ldGhvZCBvZiA8Z28+IGVsZW1lbnQK
KworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywg
Zm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCisKKy0tLS0tLS0tCitGcmFtZTogJzwhLS1mcmFt
ZVBhdGggLy88IS0tZnJhbWUwLS0+LS0+JworLS0tLS0tLS0KK1RoaXMgcGFnZSB3YXMgcmVxdWVz
dGVkIHdpdGggYW4gSFRUUCBHRVQKKworVGhlIHF1ZXJ5IHBhcmFtZXRlcnMgYXJlOiB2YXIxPVRl
eHQlMjB3aXRoJTIwd2hpdGVzcGFjZTt2YXIyPVRleHQlMjB3aXRoJTIwZW50aXRpZXMlM0ElMjAl
MjZhdW1sJTNCJTIwYW5kJTIwJTI2b3VtbCUzQgorRm9ybSBjb250ZW50IHZhcjE6ICdUZXh0IHdp
dGggd2hpdGVzcGFjZScKK0Zvcm0gY29udGVudCB2YXIyOiAnVGV4dCB3aXRoIGVudGl0aWVzOiDD
pCBhbmQgw7YnCisKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stZ2V0
LW1ldGhvZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dv
LXRhc2stZ2V0LW1ldGhvZC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MTUgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vSUVURi8vRFREIEhUTUwvL0VOIj4KKzxo
dG1sPgorPGhlYWQ+Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uLy4uL2Zhc3Qv
anMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJlbGF0aXZlUGF0
aFRvTGF5b3V0VGVzdHMgPSAiLi4vLi4vLi4iOzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL3dtbC9yZXNvdXJjZXMvV01MVGVzdENhc2UuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9
Ii4uLy4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5PgorPGgxPldNTCBodHRwIG5hdmlnYXRpb24gbGF5b3V0IHRlc3RzIC0gdXNp
bmcgWEhUTUwgc2NyaXB0aW5nPC9oMT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgorPGRpdiBp
ZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0IHNyYz0icmVzb3VyY2VzL2dvLXRhc2stZ2V0LW1l
dGhvZC5qcyIgY2hhcnNldD0idXRmOCI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLWFjY2VwdC1j
aGFyc2V0LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRo
b2QtYWNjZXB0LWNoYXJzZXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIy
IEBACitXTUwgaHR0cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0cyAtIHVzaW5nIFhIVE1MIHNjcmlw
dGluZworCisKK1Rlc3RzIFBPU1QgbWV0aG9kIG9mIDxnbz4gZWxlbWVudCAtIGFjY2VwdC1jaGFy
c2V0IGF0dHJpYnV0ZQorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBB
U1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBzdWNj
ZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRFCisKKworLS0tLS0tLS0KK0Zy
YW1lOiAnPCEtLWZyYW1lUGF0aCAvLzwhLS1mcmFtZTAtLT4tLT4nCistLS0tLS0tLQorVGhpcyBw
YWdlIHdhcyByZXF1ZXN0ZWQgd2l0aCBhbiBIVFRQIFBPU1QKKworVGhlIHF1ZXJ5IHBhcmFtZXRl
cnMgYXJlOiB2YXIxPVRleHQlMjB3aXRoJTIwd2hpdGVzcGFjZTt2YXIyPVRleHQlMjB3aXRoJTIw
bm9uLWxhdGluMSUyMGNoYXJhY3RlcnMlM0ElMjBTY2glQzMlQjZuJTJDJTIwZGElQzMlOUYlMjBl
cyUyMCVDMyU4NCUyNk91bWwlM0IlQzMlOUMlMjBnaWJ0JTIxCitGb3JtIGNvbnRlbnQgdmFyMTog
J1RleHQgd2l0aCB3aGl0ZXNwYWNlJworRm9ybSBjb250ZW50IHZhcjI6ICdUZXh0IHdpdGggbm9u
LWxhdGluMSBjaGFyYWN0ZXJzOiBTY2jDtm4sIGRhw58gZXMgw4TDlsOcIGdpYnQhJworCkluZGV4
OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9nby10YXNrLXBvc3QtbWV0aG9kLWFjY2VwdC1j
aGFyc2V0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28t
dGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNl
dC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJM
SUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJz
dHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxl
LmNzcyI+Cis8c2NyaXB0PnZhciByZWxhdGl2ZVBhdGhUb0xheW91dFRlc3RzID0gIi4uLy4uLy4u
Ijs8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi93bWwvcmVzb3VyY2VzL1dNTFRlc3RD
YXNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxoMT5XTUwgaHR0
cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0cyAtIHVzaW5nIFhIVE1MIHNjcmlwdGluZzwvaDE+Cis8
cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlw
dCBzcmM9InJlc291cmNlcy9nby10YXNrLXBvc3QtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LmpzIiBj
aGFyc2V0PSJ1dGY4Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRl
c3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2QtZXhwZWN0ZWQudHh0Cj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9zdC1tZXRob2Qt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwv
Z28tdGFzay1wb3N0LW1ldGhvZC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEs
MjIgQEAKK1dNTCBodHRwIG5hdmlnYXRpb24gbGF5b3V0IHRlc3RzIC0gdXNpbmcgWEhUTUwgc2Ny
aXB0aW5nCisKKworVGVzdHMgUE9TVCBtZXRob2Qgb2YgPGdvPiBlbGVtZW50CisKK09uIHN1Y2Nl
c3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5
ICJURVNUIENPTVBMRVRFIi4KKworCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisK
K1RFU1QgQ09NUExFVEUKKworCistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEt
LWZyYW1lMC0tPi0tPicKKy0tLS0tLS0tCitUaGlzIHBhZ2Ugd2FzIHJlcXVlc3RlZCB3aXRoIGFu
IEhUVFAgUE9TVAorCitUaGUgcXVlcnkgcGFyYW1ldGVycyBhcmU6IHZhcjE9VGV4dCUyMHdpdGgl
MjB3aGl0ZXNwYWNlO3ZhcjI9VGV4dCUyMHdpdGglMjBlbnRpdGllcyUzQSUyMCUyNmF1bWwlM0Il
MjBhbmQlMjAlMjZvdW1sJTNCCitGb3JtIGNvbnRlbnQgdmFyMTogJ1RleHQgd2l0aCB3aGl0ZXNw
YWNlJworRm9ybSBjb250ZW50IHZhcjI6ICdUZXh0IHdpdGggZW50aXRpZXM6IMOkIGFuZCDDticK
KwpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvZ28tdGFzay1wb3N0LW1ldGhvZC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL2dvLXRhc2stcG9z
dC1tZXRob2QuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21s
L2dvLXRhc2stcG9zdC1tZXRob2QuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNSBAQAor
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8
aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vLi4vLi4vZmFzdC9qcy9yZXNv
dXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlv
dXRUZXN0cyA9ICIuLi8uLi8uLiI7PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vd21s
L3Jlc291cmNlcy9XTUxUZXN0Q2FzZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4v
Li4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgor
PGJvZHk+Cis8aDE+V01MIGh0dHAgbmF2aWdhdGlvbiBsYXlvdXQgdGVzdHMgLSB1c2luZyBYSFRN
TCBzY3JpcHRpbmc8L2gxPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25z
b2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC5q
cyIgY2hhcnNldD0idXRmOCI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9URU1Q
TEFURS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgSFRNTCBQ
VUJMSUMgIi0vL0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0
eWxlLmNzcyI+Cis8c2NyaXB0PnZhciByZWxhdGl2ZVBhdGhUb0xheW91dFRlc3RzID0gIi4uLy4u
Ly4uIjs8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi93bWwvcmVzb3VyY2VzL1dNTFRl
c3RDYXNlLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8uLi8uLi9mYXN0L2pzL3Jlc291
cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxoMT5XTUwg
aHR0cCBuYXZpZ2F0aW9uIGxheW91dCB0ZXN0cyAtIHVzaW5nIFhIVE1MIHNjcmlwdGluZzwvaDE+
Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNj
cmlwdCBzcmM9IllPVVJfSlNfRklMRV9IRVJFIiBjaGFyc2V0PSJ1dGY4Ij48L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291cmNl
cy9hbnN3ZXItdXRmOC5jZ2kKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
bWwvcmVzb3VyY2VzL2Fuc3dlci11dGY4LmNnaQkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9hbnN3ZXItdXRmOC5jZ2kJKHJldmlzaW9uIDApCkBA
IC0wLDAgKzEsMjQgQEAKKyMhL3Vzci9iaW4vcGVybCAtdworCit1c2UgQ0dJOworCiskcXVlcnkg
PSBuZXcgQ0dJOworJG1ldGhvZCA9ICRxdWVyeS0+cmVxdWVzdF9tZXRob2QoKTsKKyRxdWVyeVN0
cmluZyA9ICRxdWVyeS0+cXVlcnlfc3RyaW5nOworJHZhcjEgPSAkcXVlcnktPnBhcmFtKCJ2YXIx
Iik7CiskdmFyMiA9ICRxdWVyeS0+cGFyYW0oInZhcjIiKTsKKworcHJpbnQgIkNvbnRlbnQtdHlw
ZTogdGV4dC9odG1sO2NoYXJzZXQ9dXRmLThcclxuIjsKK3ByaW50ICJDYWNoZS1Db250cm9sOiBu
by1zdG9yZSwgbm8tY2FjaGUsIG11c3QtcmV2YWxpZGF0ZVxyXG4iOworcHJpbnQgIlxyXG4iOwor
CitwcmludCA8PEhFUkVfRE9DX0VORDsKKzxodG1sPgorPGJvZHk+CitUaGlzIHBhZ2Ugd2FzIHJl
cXVlc3RlZCB3aXRoIGFuIEhUVFAgJG1ldGhvZDxici8+PGJyLz4KK1RoZSBxdWVyeSBwYXJhbWV0
ZXJzIGFyZTogJHF1ZXJ5U3RyaW5nPGJyLz4KK0Zvcm0gY29udGVudCB2YXIxOiAnJHZhcjEnPGJy
Lz4KK0Zvcm0gY29udGVudCB2YXIyOiAnJHZhcjInPGJyLz4KKzwvYm9keT4KKzwvaHRtbD4KK0hF
UkVfRE9DX0VORAoKUHJvcGVydHkgY2hhbmdlcyBvbjogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
bWwvcmVzb3VyY2VzL2Fuc3dlci11dGY4LmNnaQpfX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCk5hbWU6IHN2bjpleGVjdXRh
YmxlCiAgICsgKgoKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9h
bnN3ZXIuY2dpCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291
cmNlcy9hbnN3ZXIuY2dpCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93
bWwvcmVzb3VyY2VzL2Fuc3dlci5jZ2kJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjQgQEAKKyMh
L3Vzci9iaW4vcGVybCAtdworCit1c2UgQ0dJOworCiskcXVlcnkgPSBuZXcgQ0dJOworJG1ldGhv
ZCA9ICRxdWVyeS0+cmVxdWVzdF9tZXRob2QoKTsKKyRxdWVyeVN0cmluZyA9ICRxdWVyeS0+cXVl
cnlfc3RyaW5nOworJHZhcjEgPSAkcXVlcnktPnBhcmFtKCJ2YXIxIik7CiskdmFyMiA9ICRxdWVy
eS0+cGFyYW0oInZhcjIiKTsKKworcHJpbnQgIkNvbnRlbnQtdHlwZTogdGV4dC9odG1sXHJcbiI7
CitwcmludCAiQ2FjaGUtQ29udHJvbDogbm8tc3RvcmUsIG5vLWNhY2hlLCBtdXN0LXJldmFsaWRh
dGVcclxuIjsKK3ByaW50ICJcclxuIjsKKworcHJpbnQgPDxIRVJFX0RPQ19FTkQ7Cis8aHRtbD4K
Kzxib2R5PgorVGhpcyBwYWdlIHdhcyByZXF1ZXN0ZWQgd2l0aCBhbiBIVFRQICRtZXRob2Q8YnIv
Pjxici8+CitUaGUgcXVlcnkgcGFyYW1ldGVycyBhcmU6ICRxdWVyeVN0cmluZzxici8+CitGb3Jt
IGNvbnRlbnQgdmFyMTogJyR2YXIxJzxici8+CitGb3JtIGNvbnRlbnQgdmFyMjogJyR2YXIyJzxi
ci8+Cis8L2JvZHk+Cis8L2h0bWw+CitIRVJFX0RPQ19FTkQKClByb3BlcnR5IGNoYW5nZXMgb246
IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9hbnN3ZXIuY2dpCl9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X18KTmFtZTogc3ZuOmV4ZWN1dGFibGUKICAgKyAqCgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90
ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2stZ2V0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qcwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFz
ay1nZXQtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LmpzCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVz
dHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2stZ2V0LW1ldGhvZC1hY2NlcHQtY2hh
cnNldC5qcwkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOCBAQAorLy8gW05hbWVdIGdvLXRhc2st
Z2V0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qcworCitjcmVhdGVXTUxUZXN0Q2FzZSgiVGVzdHMg
R0VUIG1ldGhvZCBvZiAmbHQ7Z28mZ3Q7IGVsZW1lbnQgLSBhY2NlcHQtY2hhcnNldCBhdHRyaWJ1
dGUiLCBmYWxzZSk7CisKK2Z1bmN0aW9uIHNldHVwVGVzdERvY3VtZW50KCkgeworICAgIHZhciBj
YXJkRWxlbWVudCA9IHRlc3REb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZmlyc3RDaGlsZDsKKwor
ICAgIHZhciBhbmNob3JFbGVtZW50ID0gY3JlYXRlV01MRWxlbWVudCgiYW5jaG9yIik7CisgICAg
YW5jaG9yRWxlbWVudC5hcHBlbmRDaGlsZCh0ZXN0RG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoIlN0
YXJ0IHRlc3QiKSk7CisgICAgY2FyZEVsZW1lbnQuYXBwZW5kQ2hpbGQoYW5jaG9yRWxlbWVudCk7
CisKKyAgICB2YXIgZ29FbGVtZW50ID0gY3JlYXRlV01MRWxlbWVudCgiZ28iKTsKKyAgICBnb0Vs
ZW1lbnQuc2V0QXR0cmlidXRlKCJtZXRob2QiLCAiR0VUIik7CisgICAgZ29FbGVtZW50LnNldEF0
dHJpYnV0ZSgiYWNjZXB0LWNoYXJzZXQiLCAidXRmLTgiKTsKKyAgICBnb0VsZW1lbnQuc2V0QXR0
cmlidXRlKCJocmVmIiwgImh0dHA6Ly8xMjcuMC4wLjE6ODAwMC93bWwvcmVzb3VyY2VzL2Fuc3dl
ci11dGY4LmNnaSIpOworCisgICAgdmFyIHBvc3RmaWVsZEVsZW1lbnQxID0gY3JlYXRlV01MRWxl
bWVudCgicG9zdGZpZWxkIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDEuc2V0QXR0cmlidXRlKCJu
YW1lIiwgInZhcjEiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50MS5zZXRBdHRyaWJ1dGUoInZhbHVl
IiwgIlRleHQgd2l0aCB3aGl0ZXNwYWNlIik7CisgICAgZ29FbGVtZW50LmFwcGVuZENoaWxkKHBv
c3RmaWVsZEVsZW1lbnQxKTsKKworICAgIHZhciBwb3N0ZmllbGRFbGVtZW50MiA9IGNyZWF0ZVdN
TEVsZW1lbnQoInBvc3RmaWVsZCIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQyLnNldEF0dHJpYnV0
ZSgibmFtZSIsICJ2YXIyIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDIuc2V0QXR0cmlidXRlKCJ2
YWx1ZSIsICJUZXh0IHdpdGggbm9uLWxhdGluMSBjaGFyYWN0ZXJzOiBTY2jDtm4sIGRhw58gZXMg
w4QmT3VtbDvDnCBnaWJ0ISIpOworICAgIGdvRWxlbWVudC5hcHBlbmRDaGlsZChwb3N0ZmllbGRF
bGVtZW50Mik7CisKKyAgICBhbmNob3JFbGVtZW50LmFwcGVuZENoaWxkKGdvRWxlbWVudCk7Cit9
CisKK2Z1bmN0aW9uIHByZXBhcmVUZXN0KCkgeworICAgIHN0YXJ0VGVzdCgyNSwgMTUpOworfQor
CitmdW5jdGlvbiBleGVjdXRlVGVzdCgpIHsKKyAgICBjb21wbGV0ZVRlc3QoKTsKK30KKwordmFy
IHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3Rz
L3dtbC9yZXNvdXJjZXMvZ28tdGFzay1nZXQtbWV0aG9kLmpzCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9nby10YXNrLWdldC1tZXRob2QuanMJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFz
ay1nZXQtbWV0aG9kLmpzCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM3IEBACisvLyBbTmFtZV0g
Z28tdGFzay1nZXQtbWV0aG9kLmpzCisKK2NyZWF0ZVdNTFRlc3RDYXNlKCJUZXN0cyBHRVQgbWV0
aG9kIG9mICZsdDtnbyZndDsgZWxlbWVudCIsIGZhbHNlKTsKKworZnVuY3Rpb24gc2V0dXBUZXN0
RG9jdW1lbnQoKSB7CisgICAgdmFyIGNhcmRFbGVtZW50ID0gdGVzdERvY3VtZW50LmRvY3VtZW50
RWxlbWVudC5maXJzdENoaWxkOworCisgICAgdmFyIGFuY2hvckVsZW1lbnQgPSBjcmVhdGVXTUxF
bGVtZW50KCJhbmNob3IiKTsKKyAgICBhbmNob3JFbGVtZW50LmFwcGVuZENoaWxkKHRlc3REb2N1
bWVudC5jcmVhdGVUZXh0Tm9kZSgiU3RhcnQgdGVzdCIpKTsKKyAgICBjYXJkRWxlbWVudC5hcHBl
bmRDaGlsZChhbmNob3JFbGVtZW50KTsKKworICAgIHZhciBnb0VsZW1lbnQgPSBjcmVhdGVXTUxF
bGVtZW50KCJnbyIpOworICAgIGdvRWxlbWVudC5zZXRBdHRyaWJ1dGUoIm1ldGhvZCIsICJHRVQi
KTsKKyAgICBnb0VsZW1lbnQuc2V0QXR0cmlidXRlKCJocmVmIiwgImh0dHA6Ly8xMjcuMC4wLjE6
ODAwMC93bWwvcmVzb3VyY2VzL2Fuc3dlci5jZ2kiKTsKKworICAgIHZhciBwb3N0ZmllbGRFbGVt
ZW50MSA9IGNyZWF0ZVdNTEVsZW1lbnQoInBvc3RmaWVsZCIpOworICAgIHBvc3RmaWVsZEVsZW1l
bnQxLnNldEF0dHJpYnV0ZSgibmFtZSIsICJ2YXIxIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDEu
c2V0QXR0cmlidXRlKCJ2YWx1ZSIsICJUZXh0IHdpdGggd2hpdGVzcGFjZSIpOworICAgIGdvRWxl
bWVudC5hcHBlbmRDaGlsZChwb3N0ZmllbGRFbGVtZW50MSk7CisKKyAgICB2YXIgcG9zdGZpZWxk
RWxlbWVudDIgPSBjcmVhdGVXTUxFbGVtZW50KCJwb3N0ZmllbGQiKTsKKyAgICBwb3N0ZmllbGRF
bGVtZW50Mi5zZXRBdHRyaWJ1dGUoIm5hbWUiLCAidmFyMiIpOworICAgIHBvc3RmaWVsZEVsZW1l
bnQyLnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiVGV4dCB3aXRoIGVudGl0aWVzOiAmYXVtbDsgYW5k
ICZvdW1sOyIpOworICAgIGdvRWxlbWVudC5hcHBlbmRDaGlsZChwb3N0ZmllbGRFbGVtZW50Mik7
CisKKyAgICBhbmNob3JFbGVtZW50LmFwcGVuZENoaWxkKGdvRWxlbWVudCk7Cit9CisKK2Z1bmN0
aW9uIHByZXBhcmVUZXN0KCkgeworICAgIHN0YXJ0VGVzdCgyNSwgMTUpOworfQorCitmdW5jdGlv
biBleGVjdXRlVGVzdCgpIHsKKyAgICBjb21wbGV0ZVRlc3QoKTsKK30KKwordmFyIHN1Y2Nlc3Nm
dWxseVBhcnNlZCA9IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNv
dXJjZXMvZ28tdGFzay1wb3N0LW1ldGhvZC1hY2NlcHQtY2hhcnNldC5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL3dtbC9yZXNvdXJjZXMvZ28tdGFzay1wb3N0LW1ldGhv
ZC1hY2NlcHQtY2hhcnNldC5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL2h0dHAvdGVz
dHMvd21sL3Jlc291cmNlcy9nby10YXNrLXBvc3QtbWV0aG9kLWFjY2VwdC1jaGFyc2V0LmpzCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACisvLyBbTmFtZV0gZ28tdGFzay1wb3N0LW1ldGhv
ZC1hY2NlcHQtY2hhcnNldC5qcworCitjcmVhdGVXTUxUZXN0Q2FzZSgiVGVzdHMgUE9TVCBtZXRo
b2Qgb2YgJmx0O2dvJmd0OyBlbGVtZW50IC0gYWNjZXB0LWNoYXJzZXQgYXR0cmlidXRlIiwgZmFs
c2UpOworCitmdW5jdGlvbiBzZXR1cFRlc3REb2N1bWVudCgpIHsKKyAgICB2YXIgY2FyZEVsZW1l
bnQgPSB0ZXN0RG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmZpcnN0Q2hpbGQ7CisKKyAgICB2YXIg
YW5jaG9yRWxlbWVudCA9IGNyZWF0ZVdNTEVsZW1lbnQoImFuY2hvciIpOworICAgIGFuY2hvckVs
ZW1lbnQuYXBwZW5kQ2hpbGQodGVzdERvY3VtZW50LmNyZWF0ZVRleHROb2RlKCJTdGFydCB0ZXN0
IikpOworICAgIGNhcmRFbGVtZW50LmFwcGVuZENoaWxkKGFuY2hvckVsZW1lbnQpOworCisgICAg
dmFyIGdvRWxlbWVudCA9IGNyZWF0ZVdNTEVsZW1lbnQoImdvIik7CisgICAgZ29FbGVtZW50LnNl
dEF0dHJpYnV0ZSgibWV0aG9kIiwgIlBPU1QiKTsKKyAgICBnb0VsZW1lbnQuc2V0QXR0cmlidXRl
KCJhY2NlcHQtY2hhcnNldCIsICJ1dGYtOCIpOworICAgIGdvRWxlbWVudC5zZXRBdHRyaWJ1dGUo
ImhyZWYiLCAiaHR0cDovLzEyNy4wLjAuMTo4MDAwL3dtbC9yZXNvdXJjZXMvYW5zd2VyLXV0Zjgu
Y2dpIik7CisKKyAgICB2YXIgcG9zdGZpZWxkRWxlbWVudDEgPSBjcmVhdGVXTUxFbGVtZW50KCJw
b3N0ZmllbGQiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50MS5zZXRBdHRyaWJ1dGUoIm5hbWUiLCAi
dmFyMSIpOworICAgIHBvc3RmaWVsZEVsZW1lbnQxLnNldEF0dHJpYnV0ZSgidmFsdWUiLCAiVGV4
dCB3aXRoIHdoaXRlc3BhY2UiKTsKKyAgICBnb0VsZW1lbnQuYXBwZW5kQ2hpbGQocG9zdGZpZWxk
RWxlbWVudDEpOworCisgICAgdmFyIHBvc3RmaWVsZEVsZW1lbnQyID0gY3JlYXRlV01MRWxlbWVu
dCgicG9zdGZpZWxkIik7CisgICAgcG9zdGZpZWxkRWxlbWVudDIuc2V0QXR0cmlidXRlKCJuYW1l
IiwgInZhcjIiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50Mi5zZXRBdHRyaWJ1dGUoInZhbHVlIiwg
IlRleHQgd2l0aCBub24tbGF0aW4xIGNoYXJhY3RlcnM6IFNjaMO2biwgZGHDnyBlcyDDhCZPdW1s
O8OcIGdpYnQhIik7CisgICAgZ29FbGVtZW50LmFwcGVuZENoaWxkKHBvc3RmaWVsZEVsZW1lbnQy
KTsKKworICAgIGFuY2hvckVsZW1lbnQuYXBwZW5kQ2hpbGQoZ29FbGVtZW50KTsKK30KKworZnVu
Y3Rpb24gcHJlcGFyZVRlc3QoKSB7CisgICAgc3RhcnRUZXN0KDI1LCAxNSk7Cit9CisKK2Z1bmN0
aW9uIGV4ZWN1dGVUZXN0KCkgeworICAgIGNvbXBsZXRlVGVzdCgpOworfQorCit2YXIgc3VjY2Vz
c2Z1bGx5UGFyc2VkID0gdHJ1ZTsKSW5kZXg6IExheW91dFRlc3RzL2h0dHAvdGVzdHMvd21sL3Jl
c291cmNlcy9nby10YXNrLXBvc3QtbWV0aG9kLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvd21sL3Jlc291cmNlcy9nby10YXNrLXBvc3QtbWV0aG9kLmpzCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy93bWwvcmVzb3VyY2VzL2dvLXRhc2stcG9z
dC1tZXRob2QuanMJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzcgQEAKKy8vIFtOYW1lXSBnby10
YXNrLXBvc3QtbWV0aG9kLmpzCisKK2NyZWF0ZVdNTFRlc3RDYXNlKCJUZXN0cyBQT1NUIG1ldGhv
ZCBvZiAmbHQ7Z28mZ3Q7IGVsZW1lbnQiLCBmYWxzZSk7CisKK2Z1bmN0aW9uIHNldHVwVGVzdERv
Y3VtZW50KCkgeworICAgIHZhciBjYXJkRWxlbWVudCA9IHRlc3REb2N1bWVudC5kb2N1bWVudEVs
ZW1lbnQuZmlyc3RDaGlsZDsKKworICAgIHZhciBhbmNob3JFbGVtZW50ID0gY3JlYXRlV01MRWxl
bWVudCgiYW5jaG9yIik7CisgICAgYW5jaG9yRWxlbWVudC5hcHBlbmRDaGlsZCh0ZXN0RG9jdW1l
bnQuY3JlYXRlVGV4dE5vZGUoIlN0YXJ0IHRlc3QiKSk7CisgICAgY2FyZEVsZW1lbnQuYXBwZW5k
Q2hpbGQoYW5jaG9yRWxlbWVudCk7CisKKyAgICB2YXIgZ29FbGVtZW50ID0gY3JlYXRlV01MRWxl
bWVudCgiZ28iKTsKKyAgICBnb0VsZW1lbnQuc2V0QXR0cmlidXRlKCJtZXRob2QiLCAiUE9TVCIp
OworICAgIGdvRWxlbWVudC5zZXRBdHRyaWJ1dGUoImhyZWYiLCAiaHR0cDovLzEyNy4wLjAuMTo4
MDAwL3dtbC9yZXNvdXJjZXMvYW5zd2VyLmNnaSIpOworCisgICAgdmFyIHBvc3RmaWVsZEVsZW1l
bnQxID0gY3JlYXRlV01MRWxlbWVudCgicG9zdGZpZWxkIik7CisgICAgcG9zdGZpZWxkRWxlbWVu
dDEuc2V0QXR0cmlidXRlKCJuYW1lIiwgInZhcjEiKTsKKyAgICBwb3N0ZmllbGRFbGVtZW50MS5z
ZXRBdHRyaWJ1dGUoInZhbHVlIiwgIlRleHQgd2l0aCB3aGl0ZXNwYWNlIik7CisgICAgZ29FbGVt
ZW50LmFwcGVuZENoaWxkKHBvc3RmaWVsZEVsZW1lbnQxKTsKKworICAgIHZhciBwb3N0ZmllbGRF
bGVtZW50MiA9IGNyZWF0ZVdNTEVsZW1lbnQoInBvc3RmaWVsZCIpOworICAgIHBvc3RmaWVsZEVs
ZW1lbnQyLnNldEF0dHJpYnV0ZSgibmFtZSIsICJ2YXIyIik7CisgICAgcG9zdGZpZWxkRWxlbWVu
dDIuc2V0QXR0cmlidXRlKCJ2YWx1ZSIsICJUZXh0IHdpdGggZW50aXRpZXM6ICZhdW1sOyBhbmQg
Jm91bWw7Iik7CisgICAgZ29FbGVtZW50LmFwcGVuZENoaWxkKHBvc3RmaWVsZEVsZW1lbnQyKTsK
KworICAgIGFuY2hvckVsZW1lbnQuYXBwZW5kQ2hpbGQoZ29FbGVtZW50KTsKK30KKworZnVuY3Rp
b24gcHJlcGFyZVRlc3QoKSB7CisgICAgc3RhcnRUZXN0KDI1LCAxNSk7Cit9CisKK2Z1bmN0aW9u
IGV4ZWN1dGVUZXN0KCkgeworICAgIGNvbXBsZXRlVGVzdCgpOworfQorCit2YXIgc3VjY2Vzc2Z1
bGx5UGFyc2VkID0gdHJ1ZTsKSW5kZXg6IExheW91dFRlc3RzL3dtbC9nby10YXNrLWFuaW1hdGlv
bi5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dtbC9nby10YXNrLWFuaW1hdGlvbi5o
dG1sCShyZXZpc2lvbiAzOTQzMCkKKysrIExheW91dFRlc3RzL3dtbC9nby10YXNrLWFuaW1hdGlv
bi5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIsNyBAQAogPGh0bWw+CiA8aGVhZD4KIDxs
aW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1z
dHlsZS5jc3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLiI7
PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzIj48L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9z
Y3JpcHQ+CiA8L2hlYWQ+CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvZ28tdGFzay1nZXQtbWV0aG9k
LWV4dGVybmFsLWRlY2std2l0aC1ocmVmLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
d21sL2dvLXRhc2stZ2V0LW1ldGhvZC1leHRlcm5hbC1kZWNrLXdpdGgtaHJlZi5odG1sCShyZXZp
c2lvbiAzOTQzMCkKKysrIExheW91dFRlc3RzL3dtbC9nby10YXNrLWdldC1tZXRob2QtZXh0ZXJu
YWwtZGVjay13aXRoLWhyZWYuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMiw2ICsyLDcgQEAKIDxo
dG1sPgogPGhlYWQ+CiA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uL2Zhc3QvanMvcmVz
b3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJlbGF0aXZlUGF0aFRvTGF5
b3V0VGVzdHMgPSAiLi4iOzwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJlc291cmNlcy9XTUxUZXN0
Q2FzZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMiPjwvc2NyaXB0PgogPC9oZWFkPgpJbmRleDogTGF5b3V0VGVzdHMvd21sL2dv
LXRhc2stZ2V0LW1ldGhvZC1leHRlcm5hbC1kZWNrLmh0bWwKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0
VGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1leHRlcm5hbC1kZWNrLmh0bWwJKHJldmlzaW9u
IDM5NDMwKQorKysgTGF5b3V0VGVzdHMvd21sL2dvLXRhc2stZ2V0LW1ldGhvZC1leHRlcm5hbC1k
ZWNrLmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTIsNiArMiw3IEBACiA8aHRtbD4KIDxoZWFkPgog
PGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0
LXN0eWxlLmNzcyI+Cis8c2NyaXB0PnZhciByZWxhdGl2ZVBhdGhUb0xheW91dFRlc3RzID0gIi4u
Ijs8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvV01MVGVzdENhc2UuanMiPjwvc2Ny
aXB0PgogPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48
L3NjcmlwdD4KIDwvaGVhZD4KSW5kZXg6IExheW91dFRlc3RzL3dtbC9nby10YXNrLWdldC1tZXRo
b2Qtc2FtZS1kZWNrLmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd21sL2dvLXRhc2st
Z2V0LW1ldGhvZC1zYW1lLWRlY2suaHRtbAkocmV2aXNpb24gMzk0MzApCisrKyBMYXlvdXRUZXN0
cy93bWwvZ28tdGFzay1nZXQtbWV0aG9kLXNhbWUtZGVjay5odG1sCSh3b3JraW5nIGNvcHkpCkBA
IC0yLDYgKzIsNyBAQAogPGh0bWw+CiA8aGVhZD4KIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJl
Zj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdD52YXIg
cmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLiI7PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
cmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzIj48L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi9mYXN0
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CiA8L2hlYWQ+CkluZGV4OiBM
YXlvdXRUZXN0cy93bWwvdmFyaWFibGUtcmVmZXJlbmNlLWludmFsaWQtY2hhcmFjdGVyLmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd21sL3ZhcmlhYmxlLXJlZmVyZW5jZS1pbnZhbGlk
LWNoYXJhY3Rlci5odG1sCShyZXZpc2lvbiAzOTQzMCkKKysrIExheW91dFRlc3RzL3dtbC92YXJp
YWJsZS1yZWZlcmVuY2UtaW52YWxpZC1jaGFyYWN0ZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAt
Miw2ICsyLDcgQEAKIDxodG1sPgogPGhlYWQ+CiA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9
Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQ+dmFyIHJl
bGF0aXZlUGF0aFRvTGF5b3V0VGVzdHMgPSAiLi4iOzwvc2NyaXB0PgogPHNjcmlwdCBzcmM9InJl
c291cmNlcy9XTUxUZXN0Q2FzZS5qcyI+PC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vZmFzdC9q
cy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgogPC9oZWFkPgpJbmRleDogTGF5
b3V0VGVzdHMvd21sL3ZhcmlhYmxlLXJlZmVyZW5jZS12YWxpZC5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3dtbC92YXJpYWJsZS1yZWZlcmVuY2UtdmFsaWQuaHRtbAkocmV2aXNpb24g
Mzk0MzApCisrKyBMYXlvdXRUZXN0cy93bWwvdmFyaWFibGUtcmVmZXJlbmNlLXZhbGlkLmh0bWwJ
KHdvcmtpbmcgY29weSkKQEAgLTIsNiArMiw3IEBACiA8aHRtbD4KIDxoZWFkPgogPGxpbmsgcmVs
PSJzdHlsZXNoZWV0IiBocmVmPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNz
cyI+Cis8c2NyaXB0PnZhciByZWxhdGl2ZVBhdGhUb0xheW91dFRlc3RzID0gIi4uIjs8L3Njcmlw
dD4KIDxzY3JpcHQgc3JjPSJyZXNvdXJjZXMvV01MVGVzdENhc2UuanMiPjwvc2NyaXB0PgogPHNj
cmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
IDwvaGVhZD4KSW5kZXg6IExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvVEVNUExBVEUuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL1RFTVBMQVRFLmh0bWwJKHJl
dmlzaW9uIDM5NDMwKQorKysgTGF5b3V0VGVzdHMvd21sL3Jlc291cmNlcy9URU1QTEFURS5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIsNyBAQAogPGh0bWw+CiA8aGVhZD4KIDxsaW5rIHJl
bD0ic3R5bGVzaGVldCIgaHJlZj0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5j
c3MiPgorPHNjcmlwdD52YXIgcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyA9ICIuLiI7PC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0icmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzIj48L3NjcmlwdD4KIDxz
Y3JpcHQgc3JjPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
CiA8L2hlYWQ+CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpz
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvV01MVGVzdENhc2UuanMJ
KHJldmlzaW9uIDM5NDMwKQorKysgTGF5b3V0VGVzdHMvd21sL3Jlc291cmNlcy9XTUxUZXN0Q2Fz
ZS5qcwkod29ya2luZyBjb3B5KQpAQCAtMTYsNyArMTYsNyBAQCBmdW5jdGlvbiBjcmVhdGVXTUxU
ZXN0Q2FzZShkZXNjLCBzdWJzdGl0CiAgICAgdmFyIGRlZmF1bHRUZXN0ID0gdHJ1ZTsKICAgICBp
ZiAodGVzdE5hbWUgPT0gbnVsbCkgewogICAgICAgICBkZWZhdWx0VGVzdCA9IGZhbHNlOwotICAg
ICAgICB0ZXN0TmFtZSA9ICJyZXNvdXJjZXMvdGVzdC1kb2N1bWVudC53bWwiOworICAgICAgICB0
ZXN0TmFtZSA9IHJlbGF0aXZlUGF0aFRvTGF5b3V0VGVzdHMgKyAiL3dtbC9yZXNvdXJjZXMvdGVz
dC1kb2N1bWVudC53bWwiOwogICAgIH0KIAogICAgIGRlc2NyaXB0aW9uKGRlc2MpOwpAQCAtOTMs
NyArOTMsNyBAQCBmdW5jdGlvbiBjb21wbGV0ZVRlc3QoKSB7CiAgICAgICAgICAgICB3aW5kb3cu
c2V0VGltZW91dCgibGF5b3V0VGVzdENvbnRyb2xsZXIubm90aWZ5RG9uZSgpIiwgMCk7CiAgICAg
fTsKIAotICAgIHNjcmlwdC5zcmMgPSAiLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIjsKKyAgICBzY3JpcHQuc3JjID0gcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyArICIvZmFz
dC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIjsKICAgICBzdWNjZXNzZnVsbHlQYXJzZWQg
PSB0cnVlOwogCiAgICAgYm9keUVsZW1lbnQuYXBwZW5kQ2hpbGQoc2NyaXB0KTsK
</data>
<flag name="review"
          id="12372"
          type_id="1"
          status="+"
          setter="staikos"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26195</attachid>
            <date>2008-12-21 18:02:10 -0800</date>
            <delta_ts>2008-12-21 18:02:53 -0800</delta_ts>
            <desc>WebKitTools changes</desc>
            <filename>WebKitTools.diff</filename>
            <type>text/plain</type>
            <size>1654</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDM5NDMwKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDgtMTItMjAgIE5pa29sYXMgWmltbWVybWFu
biAgPG5pa29sYXMuemltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSWdub3JlIGh0dHAvdGVzdHMvd21sLCBp
ZiBubyBXTUwgc3VwcG9ydCBpcyBwcmVzZW50LgorICAgICAgICBBZGQgaHR0cC90ZXN0cy93bWwg
dG8gbGlzdCBvZiBIVFRQIHRlc3RzLCBhbGxvd2VkIHRvIGFjY2VzcyBsb2NhbCByZXNvdXJjZXMu
CisKKyAgICAgICAgKiBTY3JpcHRzL3J1bi13ZWJraXQtdGVzdHM6CisKIDIwMDgtMTItMTkgIERh
dmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IE1h
cmsgUm93ZS4KSW5kZXg6IFdlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXdlYmtpdC10ZXN0cwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXRUb29scy9TY3JpcHRzL3J1bi13ZWJraXQtdGVzdHMJKHJldmlzaW9u
IDM5NDMwKQorKysgV2ViS2l0VG9vbHMvU2NyaXB0cy9ydW4td2Via2l0LXRlc3RzCSh3b3JraW5n
IGNvcHkpCkBAIC0zNDYsNiArMzQ2LDcgQEAgaWYgKGNoZWNrV2ViQ29yZVNWR1N1cHBvcnQoMCkp
IHsgCiBpZiAoY2hlY2tXZWJDb3JlV01MU3VwcG9ydCgwKSkgeyAKICAgICAkc3VwcG9ydGVkRmls
ZUV4dGVuc2lvbnN7J3dtbCd9ID0gMTsKIH0gZWxzZSB7CisgICAgJGlnbm9yZWREaXJlY3Rvcmll
c3snaHR0cC90ZXN0cy93bWwnfSA9IDE7CiAgICAgJGlnbm9yZWREaXJlY3Rvcmllc3snZmFzdC93
bWwnfSA9IDE7CiAgICAgJGlnbm9yZWREaXJlY3Rvcmllc3snd21sJ30gPSAxOwogfQpAQCAtNTcx
LDcgKzU3Miw3IEBAIGZvciBteSAkdGVzdCAoQHRlc3RzKSB7CiAgICAgICAgIHByaW50IE9VVCAi
JHRlc3RQYXRoJHN1ZmZpeEV4cGVjdGVkSGFzaFxuIjsKICAgICB9IGVsc2UgewogICAgICAgICBv
cGVuSFRUUERJZk5lZWRlZCgpOwotICAgICAgICBpZiAoJHRlc3QgIX4gL15odHRwXC90ZXN0c1wv
bG9jYWxcLy8gJiYgJHRlc3QgIX4gL15odHRwXC90ZXN0c1wvc3NsXC8vICYmICR0ZXN0ICF+IC9e
aHR0cFwvdGVzdHNcL21lZGlhXC8vKSB7CisgICAgICAgIGlmICgkdGVzdCAhfiAvXmh0dHBcL3Rl
c3RzXC9sb2NhbFwvLyAmJiAkdGVzdCAhfiAvXmh0dHBcL3Rlc3RzXC9zc2xcLy8gJiYgJHRlc3Qg
IX4gL15odHRwXC90ZXN0c1wvd21sXC8vICYmICR0ZXN0ICF+IC9eaHR0cFwvdGVzdHNcL21lZGlh
XC8vKSB7CiAgICAgICAgICAgICBteSAkcGF0aCA9IGNhbm9ucGF0aCgkdGVzdCk7CiAgICAgICAg
ICAgICAkcGF0aCA9fiBzL15odHRwXC90ZXN0c1wvLy87CiAgICAgICAgICAgICBwcmludCBPVVQg
Imh0dHA6Ly8xMjcuMC4wLjE6JGh0dHBkUG9ydC8kcGF0aCRzdWZmaXhFeHBlY3RlZEhhc2hcbiI7
Cg==
</data>
<flag name="review"
          id="12373"
          type_id="1"
          status="+"
          setter="staikos"
    />
          </attachment>
      

    </bug>

</bugzilla>