<?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>26765</bug_id>
          
          <creation_ts>2009-06-26 16:51:10 -0700</creation_ts>
          <short_desc>Update the CodeGeneratorV8.pm in svn.webkit.org to match the current version of V8Proxy</short_desc>
          <delta_ts>2009-06-28 04:14:05 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Nate Chapin">japhet</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dglazkov</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>128596</commentid>
    <comment_count>0</comment_count>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2009-06-26 16:51:10 -0700</bug_when>
    <thetext>See summary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128597</commentid>
    <comment_count>1</comment_count>
      <attachid>31960</attachid>
    <who name="Nate Chapin">japhet</who>
    <bug_when>2009-06-26 16:54:26 -0700</bug_when>
    <thetext>Created attachment 31960
patch

I verified this by diffing against the version of CodeGeneratorV8.pm in http://codereview.chromium.org/149086.  I will get a more thorough verification by using this version to compile and run when I get in on Monday.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>128733</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-06-28 04:14:05 -0700</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/bindings/scripts/CodeGeneratorV8.pm
Committed r45326
http://trac.webkit.org/changeset/45326</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>31960</attachid>
            <date>2009-06-26 16:54:26 -0700</date>
            <delta_ts>2009-06-26 17:09:12 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>18257</size>
            <attacher name="Nate Chapin">japhet</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NTI5MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMDktMDYtMjYgIE5hdGUgQ2hhcGluICA8amFwaGV0QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBV
cGRhdGUgQ29kZUdlbmVyYXRvclY4LnBtIHRvIG1hdGNoIHRoZSBuZXcgYXBpIGZvciBWOFByb3h5
LgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjc2
NQorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG06IE1hdGNo
IHRoZSBjdXJyZW50IHZlcnNpb24gb2YgVjhQcm94eS4KKwogMjAwOS0wNi0yNiAgQnJldHQgV2ls
c29uICA8YnJldHR3QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBM
ZXZpbi4KSW5kZXg6IFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQkocmV2aXNpb24gNDUyOTMpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvclY4LnBtCSh3b3JraW5nIGNvcHkpCkBAIC0zMjAsNyArMzIwLDcgQEAgc3ViIEdlbmVyYXRl
U2V0RE9NRXhjZXB0aW9uCiAgICAgbXkgJHJlc3VsdCA9ICIiOwogCiAgICAgJHJlc3VsdCAuPSAk
aW5kZW50IC4gImlmIChlYykge1xuIjsKLSAgICAkcmVzdWx0IC49ICRpbmRlbnQgLiAiICAgIFY4
UHJveHk6OlNldERPTUV4Y2VwdGlvbihlYyk7XG4iOworICAgICRyZXN1bHQgLj0gJGluZGVudCAu
ICIgICAgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKGVjKTtcbiI7CiAgICAgJHJlc3VsdCAuPSAk
aW5kZW50IC4gIiAgICByZXR1cm4gdjg6OkhhbmRsZTx2ODo6VmFsdWU+KCk7XG4iOwogICAgICRy
ZXN1bHQgLj0gJGluZGVudCAuICJ9XG4iOwogCkBAIC0zNDYsMTIgKzM0NiwxMiBAQCBzdWIgSG9s
ZGVyVG9OYXRpdmUKIAogICAgIGlmIChJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSkpIHsKICAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgPDxFTkQpOwotICAgICRpbXBsQ2xhc3NOYW1lKiBp
bXAgPSBWOFByb3h5OjpET01XcmFwcGVyVG9Ob2RlPCRpbXBsQ2xhc3NOYW1lPihob2xkZXIpOwor
ICAgICRpbXBsQ2xhc3NOYW1lKiBpbXAgPSBWOFByb3h5Ojpjb252ZXJ0RE9NV3JhcHBlclRvTm9k
ZTwkaW1wbENsYXNzTmFtZT4oaG9sZGVyKTsKIEVORAogCiAgICAgfSBlbHNlIHsKICAgICAgICAg
cHVzaChAaW1wbENvbnRlbnREZWNscywgPDxFTkQpOwotICAgICRpbXBsQ2xhc3NOYW1lKiBpbXAg
PSBWOFByb3h5OjpUb05hdGl2ZU9iamVjdDwkaW1wbENsYXNzTmFtZT4oVjhDbGFzc0luZGV4Ojok
Y2xhc3NJbmRleCwgaG9sZGVyKTsKKyAgICAkaW1wbENsYXNzTmFtZSogaW1wID0gVjhQcm94eTo6
Y29udmVydFRvTmF0aXZlT2JqZWN0PCRpbXBsQ2xhc3NOYW1lPihWOENsYXNzSW5kZXg6OiRjbGFz
c0luZGV4LCBob2xkZXIpOwogRU5ECiAKICAgfQpAQCAtMzc0LDE0ICszNzQsMTQgQEAgc3ViIEdl
bmVyYXRlRG9tYWluU2FmZUZ1bmN0aW9uR2V0dGVyCiAKICAgICBteSAkbmV3VGVtcGxhdGVTdHJp
bmcgPSBHZW5lcmF0ZU5ld0Z1bmN0aW9uVGVtcGxhdGUoJGZ1bmN0aW9uLCAkZGF0YU5vZGUsICRz
aWduYXR1cmUpOwogCi0gICAgJGltcGxJbmNsdWRlc3sidjhfcHJveHkuaCJ9ID0gMTsKKyAgICAk
aW1wbEluY2x1ZGVzeyJWOFByb3h5LmgifSA9IDE7CiAKICAgICBwdXNoKEBpbXBsQ29udGVudERl
Y2xzLCA8PEVORCk7CiAgIHN0YXRpYyB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gJHtmdW5jTmFtZX1B
dHRyR2V0dGVyKHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBuYW1lLCBjb25zdCB2ODo6QWNjZXNzb3JJ
bmZvJiBpbmZvKSB7CiAgICAgSU5DX1NUQVRTKFwiRE9NLiRpbXBsQ2xhc3NOYW1lLiRmdW5jTmFt
ZS5fZ2V0XCIpOwogICAgIHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0
ZT4gcHJpdmF0ZV90ZW1wbGF0ZSA9CiAgICAgICAgIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlv
blRlbXBsYXRlPjo6TmV3KCRuZXdUZW1wbGF0ZVN0cmluZyk7Ci0gICAgdjg6OkhhbmRsZTx2ODo6
T2JqZWN0PiBob2xkZXIgPSBWOFByb3h5OjpMb29rdXBET01XcmFwcGVyKFY4Q2xhc3NJbmRleDo6
JGNsYXNzSW5kZXgsIGluZm8uVGhpcygpKTsKKyAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGhv
bGRlciA9IFY4UHJveHk6Omxvb2t1cERPTVdyYXBwZXIoVjhDbGFzc0luZGV4OjokY2xhc3NJbmRl
eCwgaW5mby5UaGlzKCkpOwogICAgIGlmIChob2xkZXIuSXNFbXB0eSgpKSB7CiAgICAgICAvLyBj
YW4gb25seSByZWFjaCBoZXJlIGJ5ICdvYmplY3QuX19wcm90b19fLmZ1bmMnLCBhbmQgaXQgc2hv
dWxkIHBhc3NlZAogICAgICAgLy8gZG9tYWluIHNlY3VyaXR5IGNoZWNrIGFscmVhZHkKQEAgLTM5
Myw3ICszOTMsNyBAQCBFTkQKICAgSG9sZGVyVG9OYXRpdmUoJGRhdGFOb2RlLCAkaW1wbENsYXNz
TmFtZSwgJGNsYXNzSW5kZXgpOwogCiAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgPDxFTkQp
OwotICAgIGlmICghVjhQcm94eTo6Q2FuQWNjZXNzRnJhbWUoaW1wLT5mcmFtZSgpLCBmYWxzZSkp
IHsKKyAgICBpZiAoIVY4UHJveHk6OmNhbkFjY2Vzc0ZyYW1lKGltcC0+ZnJhbWUoKSwgZmFsc2Up
KSB7CiAgICAgICBzdGF0aWMgdjg6OlBlcnNpc3RlbnQ8djg6OkZ1bmN0aW9uVGVtcGxhdGU+IHNo
YXJlZF90ZW1wbGF0ZSA9CiAgICAgICAgIHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBs
YXRlPjo6TmV3KCRuZXdUZW1wbGF0ZVN0cmluZyk7CiAgICAgICByZXR1cm4gc2hhcmVkX3RlbXBs
YXRlLT5HZXRGdW5jdGlvbigpOwpAQCAtNDIxLDEzICs0MjEsMTMgQEAgRU5ECiAKICAgICBpZiAo
JGNsYXNzSW5kZXggZXEgIkRPTVdJTkRPVyIpIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnRE
ZWNscywgPDxFTkQpOwotICAgIERPTVdpbmRvdyogd2luZG93ID0gVjhQcm94eTo6VG9OYXRpdmVP
YmplY3Q8RE9NV2luZG93PihWOENsYXNzSW5kZXg6OkRPTVdJTkRPVywgaW5mby5Ib2xkZXIoKSk7
CisgICAgRE9NV2luZG93KiB3aW5kb3cgPSBWOFByb3h5Ojpjb252ZXJ0VG9OYXRpdmVPYmplY3Q8
RE9NV2luZG93PihWOENsYXNzSW5kZXg6OkRPTVdJTkRPVywgaW5mby5Ib2xkZXIoKSk7CiAgICAg
RnJhbWUqIGZyYW1lID0gd2luZG93LT5mcmFtZSgpOwogICAgIGlmIChmcmFtZSkgewogICAgICAg
Ly8gR2V0IHRoZSBwcm94eSBjb3JyZXNwb25kaW5nIHRvIHRoZSBET01XaW5kb3cgaWYgcG9zc2li
bGUgdG8KICAgICAgIC8vIG1ha2Ugc3VyZSB0aGF0IHRoZSBjb25zdHJ1Y3RvciBmdW5jdGlvbiBp
cyBjb25zdHJ1Y3RlZCBpbiB0aGUKICAgICAgIC8vIGNvbnRleHQgb2YgdGhlIERPTVdpbmRvdyBh
bmQgbm90IGluIHRoZSBjb250ZXh0IG9mIHRoZSBjYWxsZXIuCi0gICAgICByZXR1cm4gVjhQcm94
eTo6cmV0cmlldmUoZnJhbWUpLT5HZXRDb25zdHJ1Y3Rvcih0eXBlKTsKKyAgICAgIHJldHVybiBW
OFByb3h5OjpyZXRyaWV2ZShmcmFtZSktPmdldENvbnN0cnVjdG9yKHR5cGUpOwogICAgIH0KIEVO
RAogICB9CkBAIC00NTgsNyArNDU4LDcgQEAgc3ViIEdlbmVyYXRlTm9ybWFsQXR0ckdldHRlcgog
ICAgIG15ICRhdHRyRXh0ID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0
ZXM7CiAKICAgICBteSAkYXR0ck5hbWUgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWU7Ci0g
ICAgJGltcGxJbmNsdWRlc3sidjhfcHJveHkuaCJ9ID0gMTsKKyAgICAkaW1wbEluY2x1ZGVzeyJW
OFByb3h5LmgifSA9IDE7CiAKICAgICBteSAkYXR0clR5cGUgPSAkY29kZUdlbmVyYXRvci0+U3Ry
aXBNb2R1bGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKTsKICAgICBteSAkYXR0cklzUG9k
VHlwZSA9IElzUG9kVHlwZSgkYXR0clR5cGUpOwpAQCAtNTAwLDcgKzUwMCw3IEBAIEVORAogCiAg
ICAgaWYgKCRpc1BvZFR5cGUpIHsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgPDxF
TkQpOwotICAgIFY4U1ZHUE9EVHlwZVdyYXBwZXI8JGltcGxDbGFzc05hbWU+KiBpbXBfd3JhcHBl
ciA9IFY4UHJveHk6OlRvTmF0aXZlT2JqZWN0PFY4U1ZHUE9EVHlwZVdyYXBwZXI8JGltcGxDbGFz
c05hbWU+ID4oVjhDbGFzc0luZGV4OjokY2xhc3NJbmRleCwgaW5mby5Ib2xkZXIoKSk7CisgICAg
VjhTVkdQT0RUeXBlV3JhcHBlcjwkaW1wbENsYXNzTmFtZT4qIGltcF93cmFwcGVyID0gVjhQcm94
eTo6Y29udmVydFRvTmF0aXZlT2JqZWN0PFY4U1ZHUE9EVHlwZVdyYXBwZXI8JGltcGxDbGFzc05h
bWU+ID4oVjhDbGFzc0luZGV4OjokY2xhc3NJbmRleCwgaW5mby5Ib2xkZXIoKSk7CiAgICAgJGlt
cGxDbGFzc05hbWUgaW1wX2luc3RhbmNlID0gKmltcF93cmFwcGVyOwogRU5ECiAgICAgICAgIGlm
ICgkZ2V0dGVyU3RyaW5nVXNlc0ltcCkgewpAQCAtNTEyLDcgKzUxMiw3IEBAIEVORAogICAgIH0g
ZWxzaWYgKCRhdHRyRXh0LT57InY4T25Qcm90byJ9IHx8ICRhdHRyRXh0LT57IlY4RGlzYWxsb3dT
aGFkb3dpbmcifSkgewogICAgICAgICAjIHBlcmZvcm0gbG9va3VwIGZpcnN0CiAgICAgICAgIHB1
c2goQGltcGxDb250ZW50RGVjbHMsIDw8RU5EKTsKLSAgICB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+
IGhvbGRlciA9IFY4UHJveHk6Okxvb2t1cERPTVdyYXBwZXIoVjhDbGFzc0luZGV4OjokY2xhc3NJ
bmRleCwgaW5mby5UaGlzKCkpOworICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0g
VjhQcm94eTo6bG9va3VwRE9NV3JhcHBlcihWOENsYXNzSW5kZXg6OiRjbGFzc0luZGV4LCBpbmZv
LlRoaXMoKSk7CiAgICAgaWYgKGhvbGRlci5Jc0VtcHR5KCkpIHJldHVybiB2ODo6VW5kZWZpbmVk
KCk7CiBFTkQKICAgICAgICAgSG9sZGVyVG9OYXRpdmUoJGRhdGFOb2RlLCAkaW1wbENsYXNzTmFt
ZSwgJGNsYXNzSW5kZXgpOwpAQCAtNTI1LDkgKzUyNSw5IEBAIEVORAogCiAgICAgIyBHZW5lcmF0
ZSBzZWN1cml0eSBjaGVja3MgaWYgbmVjZXNzYXJ5CiAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25h
dHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkNoZWNrTm9kZVNlY3VyaXR5In0pIHsKLSAgICAg
ICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICBpZiAoIVY4UHJveHk6OkNoZWNrTm9kZVNl
Y3VyaXR5KGltcC0+JGF0dHJOYW1lKCkpKSByZXR1cm4gdjg6OlVuZGVmaW5lZCgpO1xuXG4iKTsK
KyAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICBpZiAoIVY4UHJveHk6OmNoZWNr
Tm9kZVNlY3VyaXR5KGltcC0+JGF0dHJOYW1lKCkpKSByZXR1cm4gdjg6OlVuZGVmaW5lZCgpO1xu
XG4iKTsKICAgICB9IGVsc2lmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJDaGVja0ZyYW1lU2VjdXJpdHkifSkgewotICAgICAgICBwdXNoKEBpbXBsQ29udGVu
dERlY2xzLCAiICAgIGlmICghVjhQcm94eTo6Q2hlY2tOb2RlU2VjdXJpdHkoaW1wLT5jb250ZW50
RG9jdW1lbnQoKSkpIHJldHVybiB2ODo6VW5kZWZpbmVkKCk7XG5cbiIpOworICAgICAgICBwdXNo
KEBpbXBsQ29udGVudERlY2xzLCAiICAgIGlmICghVjhQcm94eTo6Y2hlY2tOb2RlU2VjdXJpdHko
aW1wLT5jb250ZW50RG9jdW1lbnQoKSkpIHJldHVybiB2ODo6VW5kZWZpbmVkKCk7XG5cbiIpOwog
ICAgIH0KIAogICAgIG15ICR1c2VFeGNlcHRpb25zID0gMSBpZiBAeyRhdHRyaWJ1dGUtPmdldHRl
ckV4Y2VwdGlvbnN9IGFuZCAhKCRpc1BvZFR5cGUpOwpAQCAtNjI0LDcgKzYyNCw3IEBAIEVORAog
CiAgICAgaWYgKCRhdHRySXNQb2RUeXBlKSB7CiAgICAgICAgIG15ICRjbGFzc0luZGV4ID0gdWMo
JGF0dHJUeXBlKTsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICByZXR1cm4g
VjhQcm94eTo6VG9WOE9iamVjdChWOENsYXNzSW5kZXg6OiRjbGFzc0luZGV4LCB3cmFwcGVyKTtc
biIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIHJldHVybiBWOFByb3h5
Ojpjb252ZXJ0VG9WOE9iamVjdChWOENsYXNzSW5kZXg6OiRjbGFzc0luZGV4LCB3cmFwcGVyKTtc
biIpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAg
cmV0dXJuICIuTmF0aXZlVG9KU1ZhbHVlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSwgJHJlc3VsdCku
IjtcbiIpOwogICAgIH0KQEAgLTYzNyw3ICs2MzcsNyBAQCBzdWIgR2VuZXJhdGVSZXBsYWNlYWJs
ZUF0dHJTZXR0ZXIKIHsKICAgICBteSAkaW1wbENsYXNzTmFtZSA9IHNoaWZ0OwogCi0gICAgJGlt
cGxJbmNsdWRlc3sidjhfcHJveHkuaCJ9ID0gMTsKKyAgICAkaW1wbEluY2x1ZGVzeyJWOFByb3h5
LmgifSA9IDE7CiAKICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLAogICAgICAgICIgIHN0YXRp
YyB2b2lkICR7YXR0ck5hbWV9QXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0cmluZz4gbmFtZSwi
IC4KQEAgLTY2MSw3ICs2NjEsNyBAQCBzdWIgR2VuZXJhdGVOb3JtYWxBdHRyU2V0dGVyCiAKICAg
ICBteSAkYXR0ckV4dCA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
OwogCi0gICAgJGltcGxJbmNsdWRlc3sidjhfcHJveHkuaCJ9ID0gMTsKKyAgICAkaW1wbEluY2x1
ZGVzeyJWOFByb3h5LmgifSA9IDE7CiAKICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLAogICAg
ICAgICIgIHN0YXRpYyB2b2lkICR7YXR0ck5hbWV9QXR0clNldHRlcih2ODo6TG9jYWw8djg6OlN0
cmluZz4gbmFtZSwiIC4KQEAgLTY3NCwxNCArNjc0LDE0IEBAIHN1YiBHZW5lcmF0ZU5vcm1hbEF0
dHJTZXR0ZXIKICAgICBpZiAoJGlzUG9kVHlwZSkgewogICAgICAgICAkaW1wbENsYXNzTmFtZSA9
IEdldE5hdGl2ZVR5cGUoJGltcGxDbGFzc05hbWUpOwogICAgICAgICAkaW1wbEluY2x1ZGVzeyJW
OFNWR1BPRFR5cGVXcmFwcGVyLmgifSA9IDE7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50RGVj
bHMsICIgICAgVjhTVkdQT0RUeXBlV3JhcHBlcjwkaW1wbENsYXNzTmFtZT4qIHdyYXBwZXIgPSBW
OFByb3h5OjpUb05hdGl2ZU9iamVjdDxWOFNWR1BPRFR5cGVXcmFwcGVyPCRpbXBsQ2xhc3NOYW1l
PiA+KFY4Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsIGluZm8uSG9sZGVyKCkpO1xuIik7CisgICAg
ICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgVjhTVkdQT0RUeXBlV3JhcHBlcjwkaW1w
bENsYXNzTmFtZT4qIHdyYXBwZXIgPSBWOFByb3h5Ojpjb252ZXJ0VG9OYXRpdmVPYmplY3Q8VjhT
VkdQT0RUeXBlV3JhcHBlcjwkaW1wbENsYXNzTmFtZT4gPihWOENsYXNzSW5kZXg6OiRjbGFzc0lu
ZGV4LCBpbmZvLkhvbGRlcigpKTtcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xz
LCAiICAgICRpbXBsQ2xhc3NOYW1lIGltcF9pbnN0YW5jZSA9ICp3cmFwcGVyO1xuIik7CiAgICAg
ICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgJGltcGxDbGFzc05hbWUqIGltcCA9ICZp
bXBfaW5zdGFuY2U7XG4iKTsKIAogICAgIH0gZWxzaWYgKCRhdHRyRXh0LT57InY4T25Qcm90byJ9
KSB7CiAgICAgICAgICMgcGVyZm9ybSBsb29rdXAgZmlyc3QKICAgICAgICAgcHVzaChAaW1wbENv
bnRlbnREZWNscywgPDxFTkQpOwotICAgIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gaG9sZGVyID0g
VjhQcm94eTo6TG9va3VwRE9NV3JhcHBlcihWOENsYXNzSW5kZXg6OiRjbGFzc0luZGV4LCBpbmZv
LlRoaXMoKSk7CisgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBob2xkZXIgPSBWOFByb3h5Ojps
b29rdXBET01XcmFwcGVyKFY4Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsIGluZm8uVGhpcygpKTsK
ICAgICBpZiAoaG9sZGVyLklzRW1wdHkoKSkgcmV0dXJuIHY4OjpVbmRlZmluZWQoKTsKIEVORAog
ICAgICAgICBIb2xkZXJUb05hdGl2ZSgkZGF0YU5vZGUsICRpbXBsQ2xhc3NOYW1lLCAkY2xhc3NJ
bmRleCk7CkBAIC03MjQsMTEgKzcyNCwxMSBAQCBFTkQKICAgICB9CiAKICAgICBpZiAoJHVzZUV4
Y2VwdGlvbnMpIHsKLSAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICBWOFByb3h5
OjpTZXRET01FeGNlcHRpb24oZWMpO1xuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVj
bHMsICIgICAgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKGVjKTtcbiIpOwogICAgIH0KIAogICAg
IGlmICgkaXNQb2RUeXBlKSB7Ci0gICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAg
d3JhcHBlci0+Y29tbWl0Q2hhbmdlKCppbXAsIFY4UHJveHk6OkdldFNWR0NvbnRleHQod3JhcHBl
cikpO1xuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgd3JhcHBlci0+
Y29tbWl0Q2hhbmdlKCppbXAsIFY4UHJveHk6OnN2Z0NvbnRleHQod3JhcHBlcikpO1xuIik7CiAg
ICAgfSBlbHNpZiAoSXNTVkdUeXBlTmVlZGluZ0NvbnRleHRQYXJhbWV0ZXIoJGltcGxDbGFzc05h
bWUpKSB7CiAgICAgICAgICRpbXBsSW5jbHVkZXN7IlNWR0VsZW1lbnQuaCJ9ID0gMTsKIApAQCAt
NzM3LDcgKzczNyw3IEBAIEVORAogICAgICAgICAgICAgJGN1cnJlbnRPYmplY3QgPSAid3JhcHBl
ciI7CiAgICAgICAgIH0KIAotICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIGlm
IChTVkdFbGVtZW50KiBjb250ZXh0ID0gVjhQcm94eTo6R2V0U1ZHQ29udGV4dCgkY3VycmVudE9i
amVjdCkpIHtcbiIpOworICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIGlmIChT
VkdFbGVtZW50KiBjb250ZXh0ID0gVjhQcm94eTo6c3ZnQ29udGV4dCgkY3VycmVudE9iamVjdCkp
IHtcbiIpOwogICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgICAgICBjb250ZXh0
LT5zdmdBdHRyaWJ1dGVDaGFuZ2VkKGltcC0+YXNzb2NpYXRlZEF0dHJpYnV0ZU5hbWUoKSk7XG4i
KTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAgICB9XG4iKTsKICAgICB9CkBA
IC03OTUsNyArNzk1LDcgQEAgc3ViIEdlbmVyYXRlRnVuY3Rpb25DYWxsYmFjawogCiAgICAgaWYg
KElzUG9kVHlwZSgkaW1wbENsYXNzTmFtZSkpIHsKICAgICAgICAgbXkgJG5hdGl2ZUNsYXNzTmFt
ZSA9IEdldE5hdGl2ZVR5cGUoJGltcGxDbGFzc05hbWUpOwotICAgICAgICBwdXNoKEBpbXBsQ29u
dGVudERlY2xzLCAiICAgIFY4U1ZHUE9EVHlwZVdyYXBwZXI8JG5hdGl2ZUNsYXNzTmFtZT4qIGlt
cF93cmFwcGVyID0gVjhQcm94eTo6VG9OYXRpdmVPYmplY3Q8VjhTVkdQT0RUeXBlV3JhcHBlcjwk
bmF0aXZlQ2xhc3NOYW1lPiA+KFY4Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsIGFyZ3MuSG9sZGVy
KCkpO1xuIik7CisgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgVjhTVkdQT0RU
eXBlV3JhcHBlcjwkbmF0aXZlQ2xhc3NOYW1lPiogaW1wX3dyYXBwZXIgPSBWOFByb3h5Ojpjb252
ZXJ0VG9OYXRpdmVPYmplY3Q8VjhTVkdQT0RUeXBlV3JhcHBlcjwkbmF0aXZlQ2xhc3NOYW1lPiA+
KFY4Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsIGFyZ3MuSG9sZGVyKCkpO1xuIik7CiAgICAgICAg
IHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgJG5hdGl2ZUNsYXNzTmFtZSBpbXBfaW5zdGFu
Y2UgPSAqaW1wX3dyYXBwZXI7XG4iKTsKICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywg
IiAgICAkbmF0aXZlQ2xhc3NOYW1lKiBpbXAgPSAmaW1wX2luc3RhbmNlO1xuIik7CiAgICAgfSBl
bHNlIHsKQEAgLTgxMSw3ICs4MTEsNyBAQCBFTkQKICAgICAgICAmJiAhJGZ1bmN0aW9uLT5zaWdu
YXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJEb05vdENoZWNrRG9tYWluU2VjdXJpdHkifSkg
ewogICAgICMgV2UgaGF2ZSBub3QgZmluZCByZWFsIHVzZSBjYXNlcyB5ZXQuCiAgICAgcHVzaChA
aW1wbENvbnRlbnREZWNscywKLSIgICAgaWYgKCFWOFByb3h5OjpDYW5BY2Nlc3NGcmFtZShpbXAt
PmZyYW1lKCksIHRydWUpKSB7XG4iLgorIiAgICBpZiAoIVY4UHJveHk6OmNhbkFjY2Vzc0ZyYW1l
KGltcC0+ZnJhbWUoKSwgdHJ1ZSkpIHtcbiIuCiAiICAgICAgcmV0dXJuIHY4OjpVbmRlZmluZWQo
KTtcbiIgLgogIiAgICB9XG4iKTsKICAgICB9CkBAIC04NTMsNyArODUzLDcgQEAgRU5ECiAgICAg
ICAgICAgICAkaW1wbEluY2x1ZGVzeyJFeGNlcHRpb25Db2RlLmgifSA9IDE7CiAgICAgICAgICAg
ICBwdXNoKEBpbXBsQ29udGVudERlY2xzLAogIiAgICBpZiAoISRwYXJhbWV0ZXJOYW1lIiAuIChC
YXNpY1R5cGVDYW5GYWlsQ29udmVyc2lvbigkcGFyYW1ldGVyKSA/ICJPayIgOiAiIikgLiAiKSB7
XG4iIC4KLSIgICAgICBWOFByb3h5OjpTZXRET01FeGNlcHRpb24oVFlQRV9NSVNNQVRDSF9FUlIp
O1xuIiAuCisiICAgICAgVjhQcm94eTo6c2V0RE9NRXhjZXB0aW9uKFRZUEVfTUlTTUFUQ0hfRVJS
KTtcbiIgLgogIiAgICAgIHJldHVybiB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4oKTtcbiIgLgogIiAg
ICB9XG4iKTsKICAgICAgICAgfQpAQCAtODYyLDcgKzg2Miw3IEBAIEVORAogICAgICAgICAgICAg
JGltcGxJbmNsdWRlc3siRXhjZXB0aW9uQ29kZS5oIn0gPSAxOwogICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnREZWNscywKICIgICAgaWYgKCRwYXJhbWV0ZXJOYW1lIDwgMCkge1xuIiAuCi0i
ICAgICAgVjhQcm94eTo6U2V0RE9NRXhjZXB0aW9uKElOREVYX1NJWkVfRVJSKTtcbiIgLgorIiAg
ICAgIFY4UHJveHk6OnNldERPTUV4Y2VwdGlvbihJTkRFWF9TSVpFX0VSUik7XG4iIC4KICIgICAg
ICByZXR1cm4gdjg6OkhhbmRsZTx2ODo6VmFsdWU+KCk7XG4iIC4KICIgICAgfVxuIik7CiAgICAg
ICAgIH0KQEAgLTEwNTIsNyArMTA1Miw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAK
ICAgICBwdXNoKEBpbXBsRml4ZWRIZWFkZXIsCiAgICAgICAgICAiI2luY2x1ZGUgXCJjb25maWcu
aFwiXG4iIC4KLSAgICAgICAgICIjaW5jbHVkZSBcInY4X3Byb3h5LmhcIlxuIiAuCisgICAgICAg
ICAiI2luY2x1ZGUgXCJWOFByb3h5LmhcIlxuIiAuCiAgICAgICAgICAiI2luY2x1ZGUgXCJ2OF9i
aW5kaW5nLmhcIlxuXG4iIC4KICAgICAgICAgICIjdW5kZWYgTE9HXG5cbiIpOwogCkBAIC0xMDY5
LDcgKzEwNjksNyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbgogICAgICRpbXBsSW5jbHVk
ZXN7IiR7Y2xhc3NOYW1lfS5oIn0gPSAxOwogCiAgICAgQWRkSW5jbHVkZXNGb3JUeXBlKCRpbnRl
cmZhY2VOYW1lKTsKLSAgICAkaW1wbEluY2x1ZGVzeyJ2OF9wcm94eS5oIn0gPSAxOworICAgICRp
bXBsSW5jbHVkZXN7IlY4UHJveHkuaCJ9ID0gMTsKIAogICAgIHB1c2goQGltcGxDb250ZW50RGVj
bHMsICJuYW1lc3BhY2UgV2ViQ29yZSB7XG4iKTsKICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xz
LCAibmFtZXNwYWNlICR7aW50ZXJmYWNlTmFtZX1JbnRlcm5hbCB7XG5cbiIpOwpAQCAtMTIxMSw3
ICsxMjExLDcgQEAgRU5ECiAgICAgaWYgKCRpbXBsQ2xhc3NOYW1lIGVxICJET01XaW5kb3ciKSB7
CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CiBzdGF0aWMgdjg6OlBlcnNpc3Rl
bnQ8djg6Ok9iamVjdFRlbXBsYXRlPiBDb25maWd1cmVTaGFkb3dPYmplY3RUZW1wbGF0ZSh2ODo6
UGVyc2lzdGVudDx2ODo6T2JqZWN0VGVtcGxhdGU+IHRlbXBsKSB7Ci0gIEJhdGNoQ29uZmlndXJl
QXR0cmlidXRlcyh0ZW1wbCwKKyAgYmF0Y2hDb25maWd1cmVBdHRyaWJ1dGVzKHRlbXBsLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgdjg6OkhhbmRsZTx2ODo6T2JqZWN0VGVtcGxhdGU+KCks
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaGFkb3dfYXR0cnMsCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBzaXplb2Yoc2hhZG93X2F0dHJzKS9zaXplb2YoKnNoYWRvd19hdHRycykp
OwpAQCAtMTIzNCw3ICsxMjM0LDcgQEAgRU5ECiAgICAgIyBTZXQgdXAgb3VyIGF0dHJpYnV0ZXMg
aWYgd2UgaGF2ZSB0aGVtCiAgICAgaWYgKCRoYXNfYXR0cmlidXRlcykgewogICAgICAgICBwdXNo
KEBpbXBsQ29udGVudCwgPDxFTkQpOwotICBCYXRjaENvbmZpZ3VyZUF0dHJpYnV0ZXMoaW5zdGFu
Y2UsIHByb3RvLCBhdHRycywgc2l6ZW9mKGF0dHJzKS9zaXplb2YoKmF0dHJzKSk7CisgIGJhdGNo
Q29uZmlndXJlQXR0cmlidXRlcyhpbnN0YW5jZSwgcHJvdG8sIGF0dHJzLCBzaXplb2YoYXR0cnMp
L3NpemVvZigqYXR0cnMpKTsKIEVORAogICAgIH0KIApAQCAtMTMxOSw3ICsxMzE5LDcgQEAgRU5E
CiAgICAgICAgIGlmICgkcGFyZW50IGVxICJFdmVudFRhcmdldCIpIHsgbmV4dDsgfQogICAgICAg
ICAkaW1wbEluY2x1ZGVzeyJWOCR7cGFyZW50fS5oIn0gPSAxOwogICAgICAgICBteSAkcGFyZW50
Q2xhc3NJbmRleCA9IHVjKCRjb2RlR2VuZXJhdG9yLT5TdHJpcE1vZHVsZSgkcGFyZW50KSk7Ci0g
ICAgICAgIHB1c2goQGltcGxDb250ZW50LCAiICBkZXNjLT5Jbmhlcml0KFY4UHJveHk6OkdldFRl
bXBsYXRlKFY4Q2xhc3NJbmRleDo6JHtwYXJlbnRDbGFzc0luZGV4fSkpO1xuIik7CisgICAgICAg
IHB1c2goQGltcGxDb250ZW50LCAiICBkZXNjLT5Jbmhlcml0KFY4UHJveHk6OmdldFRlbXBsYXRl
KFY4Q2xhc3NJbmRleDo6JHtwYXJlbnRDbGFzc0luZGV4fSkpO1xuIik7CiAgICAgICAgIGxhc3Q7
CiAgICAgfQogCkBAIC0xMzI4LDcgKzEzMjgsNyBAQCBFTkQKIAogICAgIGlmICgkaGFzX2NvbnN0
YW50cykgewogICAgICAgICBwdXNoKEBpbXBsQ29udGVudCwgPDxFTkQpOwotICBCYXRjaENvbmZp
Z3VyZUNvbnN0YW50cyhkZXNjLCBwcm90bywgY29uc3RzLCBzaXplb2YoY29uc3RzKS9zaXplb2Yo
KmNvbnN0cykpOworICBiYXRjaENvbmZpZ3VyZUNvbnN0YW50cyhkZXNjLCBwcm90bywgY29uc3Rz
LCBzaXplb2YoY29uc3RzKS9zaXplb2YoKmNvbnN0cykpOwogRU5ECiAgICAgfQogCkBAIC0xMzQw
LDcgKzEzNDAsNyBAQCB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gJHtjCiAg
IHN0YXRpYyB2ODo6UGVyc2lzdGVudDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gJHtjbGFzc05hbWV9
X3Jhd19jYWNoZV87CiAgIGlmICgke2NsYXNzTmFtZX1fcmF3X2NhY2hlXy5Jc0VtcHR5KCkpIHsK
ICAgICB2ODo6SGFuZGxlU2NvcGUgc2NvcGU7Ci0gICAgdjg6OkxvY2FsPHY4OjpGdW5jdGlvblRl
bXBsYXRlPiByZXN1bHQgPSB2ODo6RnVuY3Rpb25UZW1wbGF0ZTo6TmV3KFY4UHJveHk6OkNoZWNr
TmV3TGVnYWwpOworICAgIHY4OjpMb2NhbDx2ODo6RnVuY3Rpb25UZW1wbGF0ZT4gcmVzdWx0ID0g
djg6OkZ1bmN0aW9uVGVtcGxhdGU6Ok5ldyhWOFByb3h5OjpjaGVja05ld0xlZ2FsKTsKICAgICAk
e2NsYXNzTmFtZX1fcmF3X2NhY2hlXyA9IHY4OjpQZXJzaXN0ZW50PHY4OjpGdW5jdGlvblRlbXBs
YXRlPjo6TmV3KHJlc3VsdCk7CiAgIH0KICAgcmV0dXJuICR7Y2xhc3NOYW1lfV9yYXdfY2FjaGVf
OwpAQCAtMTQ4Miw3ICsxNDgyLDcgQEAgc3ViIEdlbmVyYXRlRnVuY3Rpb25DYWxsU3RyaW5nKCkK
ICAgICAgICAgfQogICAgICAgICAkcmVzdWx0IC49ICRpbmRlbnQgLiAiaWYgKHN1Y2Nlc3MpXG4i
OwogICAgICAgICAkcmVzdWx0IC49ICRpbmRlbnQgLiAiICAgICIgLgotICAgICAgICAgICAgInJl
dHVybiBWOFByb3h5OjpOb2RlVG9WOE9iamVjdCgkbm9kZVRvUmV0dXJuKTtcbiI7CisgICAgICAg
ICAgICAicmV0dXJuIFY4UHJveHk6OmNvbnZlcnROb2RlVG9WOE9iamVjdCgkbm9kZVRvUmV0dXJu
KTtcbiI7CiAgICAgICAgICRyZXN1bHQgLj0gJGluZGVudCAuICJyZXR1cm4gdjg6Ok51bGwoKTtc
biI7CiAgICAgICAgIHJldHVybiAkcmVzdWx0OwogICAgIH0gZWxzaWYgKCRyZXR1cm5UeXBlIGVx
ICJ2b2lkIikgewpAQCAtMTU0Nyw3ICsxNTQ3LDcgQEAgc3ViIEdlbmVyYXRlRnVuY3Rpb25DYWxs
U3RyaW5nKCkKIAogICAgIGlmICgkcmV0dXJuc1BvZFR5cGUpIHsKICAgICAgICAgbXkgJGNsYXNz
SW5kZXggPSB1YygkcmV0dXJuVHlwZSk7Ci0gICAgICAgICRyZXN1bHQgLj0gJGluZGVudCAuICJy
ZXR1cm4gVjhQcm94eTo6VG9WOE9iamVjdChWOENsYXNzSW5kZXg6OiRjbGFzc0luZGV4LCB3cmFw
cGVyKTtcbiI7CisgICAgICAgICRyZXN1bHQgLj0gJGluZGVudCAuICJyZXR1cm4gVjhQcm94eTo6
Y29udmVydFRvVjhPYmplY3QoVjhDbGFzc0luZGV4OjokY2xhc3NJbmRleCwgd3JhcHBlcik7XG4i
OwogICAgIH0gZWxzZSB7CiAgICAgICAgICRyZXN1bHQgLj0gJGluZGVudCAuICJyZXR1cm4gIiAu
IE5hdGl2ZVRvSlNWYWx1ZSgkZnVuY3Rpb24tPnNpZ25hdHVyZSwgJHJldHVybikgLiAiO1xuIjsK
ICAgICB9CkBAIC0xODExLDcgKzE4MTEsNyBAQCBzdWIgSlNWYWx1ZVRvTmF0aXZlCiAgICAgfQog
CiAgICAgaWYgKCR0eXBlIGVxICJOb2RlRmlsdGVyIikgewotICAgICAgICByZXR1cm4gIlY4UHJv
eHk6OlRvTmF0aXZlTm9kZUZpbHRlcigkdmFsdWUpIjsKKyAgICAgICAgcmV0dXJuICJWOFByb3h5
Ojp3cmFwTmF0aXZlTm9kZUZpbHRlcigkdmFsdWUpIjsKICAgICB9CiAKICAgICBpZiAoJHR5cGUg
ZXEgIlNWR1JlY3QiKSB7CkBAIC0xODIzLDEyICsxODIzLDEyIEBAIHN1YiBKU1ZhbHVlVG9OYXRp
dmUKICAgICB9CiAKICAgICAjIERlZmF1bHQsIGFzc3VtZSBhdXRvZ2VuZXJhdGVkIHR5cGUgY29u
dmVyc2lvbiByb3V0aW5lcwotICAgICRpbXBsSW5jbHVkZXN7InY4X3Byb3h5LmgifSA9IDE7Cisg
ICAgJGltcGxJbmNsdWRlc3siVjhQcm94eS5oIn0gPSAxOwogICAgIGlmICgkdHlwZSBlcSAiRXZl
bnRUYXJnZXQiKSB7CiAgICAgICAgICRpbXBsSW5jbHVkZXN7IlY4Tm9kZS5oIn0gPSAxOwogCiAg
ICAgICAgICMgRXZlbnRUYXJnZXQgaXMgbm90IGluIERPTSBoaWVyYXJjaHksIGJ1dCBhbGwgTm9k
ZXMgYXJlIEV2ZW50VGFyZ2V0LgotICAgICAgICByZXR1cm4gIlY4Tm9kZTo6SGFzSW5zdGFuY2Uo
JHZhbHVlKSA/IFY4UHJveHk6OkRPTVdyYXBwZXJUb05vZGU8Tm9kZT4oJHZhbHVlKSA6IDAiOwor
ICAgICAgICByZXR1cm4gIlY4Tm9kZTo6SGFzSW5zdGFuY2UoJHZhbHVlKSA/IFY4UHJveHk6OmNv
bnZlcnRET01XcmFwcGVyVG9Ob2RlPE5vZGU+KCR2YWx1ZSkgOiAwIjsKICAgICB9CiAKICAgICBB
ZGRJbmNsdWRlc0ZvclR5cGUoJHR5cGUpOwpAQCAtMTgzOSw3ICsxODM5LDcgQEAgc3ViIEpTVmFs
dWVUb05hdGl2ZQogCiAgICAgICAgICMgUGVyZm9ybSB0eXBlIGNoZWNrcyBvbiB0aGUgcGFyYW1l
dGVyLCBpZiBpdCBpcyBleHBlY3RlZCBOb2RlIHR5cGUsCiAgICAgICAgICMgcmV0dXJuIE5VTEwu
Ci0gICAgICAgIHJldHVybiAiVjgke3R5cGV9OjpIYXNJbnN0YW5jZSgkdmFsdWUpID8gVjhQcm94
eTo6RE9NV3JhcHBlclRvTm9kZTwke3R5cGV9PigkdmFsdWUpIDogMCI7CisgICAgICAgIHJldHVy
biAiVjgke3R5cGV9OjpIYXNJbnN0YW5jZSgkdmFsdWUpID8gVjhQcm94eTo6Y29udmVydERPTVdy
YXBwZXJUb05vZGU8JHt0eXBlfT4oJHZhbHVlKSA6IDAiOwogICAgIH0gZWxzZSB7CiAgICAgICAg
ICMgVE9ETzogVGVtcG9yYXJ5IHRvIGF2b2lkIFdpbmRvdyBuYW1lIGNvbmZsaWN0LgogICAgICAg
ICBteSAkY2xhc3NJbmRleCA9IHVjKCR0eXBlKTsKQEAgLTE4NTgsNyArMTg1OCw3IEBAIHN1YiBK
U1ZhbHVlVG9OYXRpdmUKIAogICAgICAgICAjIFBlcmZvcm0gdHlwZSBjaGVja3Mgb24gdGhlIHBh
cmFtZXRlciwgaWYgaXQgaXMgZXhwZWN0ZWQgTm9kZSB0eXBlLAogICAgICAgICAjIHJldHVybiBO
VUxMLgotICAgICAgICByZXR1cm4gIlY4JHt0eXBlfTo6SGFzSW5zdGFuY2UoJHZhbHVlKSA/IFY4
UHJveHk6OlRvTmF0aXZlT2JqZWN0PCR7aW1wbENsYXNzTmFtZX0+KFY4Q2xhc3NJbmRleDo6JHtj
bGFzc0luZGV4fSwgJHZhbHVlKSA6IDAiOworICAgICAgICByZXR1cm4gIlY4JHt0eXBlfTo6SGFz
SW5zdGFuY2UoJHZhbHVlKSA/IFY4UHJveHk6OmNvbnZlcnRUb05hdGl2ZU9iamVjdDwke2ltcGxD
bGFzc05hbWV9PihWOENsYXNzSW5kZXg6OiR7Y2xhc3NJbmRleH0sICR2YWx1ZSkgOiAwIjsKICAg
ICB9CiB9CiAKQEAgLTIwMTIsMjMgKzIwMTIsMjMgQEAgc3ViIE5hdGl2ZVRvSlNWYWx1ZQogCiAg
ICAgIyBzcGVjaWFsIGNhc2UgZm9yIG5vbi1ET00gbm9kZSBpbnRlcmZhY2VzCiAgICAgaWYgKElz
RE9NTm9kZVR5cGUoJHR5cGUpKSB7Ci0gICAgICAgIHJldHVybiAiVjhQcm94eTo6Tm9kZVRvVjhP
YmplY3QoJHZhbHVlKSI7CisgICAgICAgIHJldHVybiAiVjhQcm94eTo6Y29udmVydE5vZGVUb1Y4
T2JqZWN0KCR2YWx1ZSkiOwogICAgIH0KIAogICAgIGlmICgkdHlwZSBlcSAiRXZlbnRUYXJnZXQi
IG9yICR0eXBlIGVxICJTVkdFbGVtZW50SW5zdGFuY2UiKSB7Ci0gICAgICAgIHJldHVybiAiVjhQ
cm94eTo6RXZlbnRUYXJnZXRUb1Y4T2JqZWN0KCR2YWx1ZSkiOworICAgICAgICByZXR1cm4gIlY4
UHJveHk6OmNvbnZlcnRFdmVudFRhcmdldFRvVjhPYmplY3QoJHZhbHVlKSI7CiAgICAgfQogCiAg
ICAgaWYgKCR0eXBlIGVxICJFdmVudCIpIHsKLSAgICAgICAgcmV0dXJuICJWOFByb3h5OjpFdmVu
dFRvVjhPYmplY3QoJHZhbHVlKSI7CisgICAgICAgIHJldHVybiAiVjhQcm94eTo6Y29udmVydEV2
ZW50VG9WOE9iamVjdCgkdmFsdWUpIjsKICAgICB9CiAKICAgICBpZiAoJHR5cGUgZXEgIkV2ZW50
TGlzdGVuZXIiKSB7Ci0gICAgICAgIHJldHVybiAiVjhQcm94eTo6RXZlbnRMaXN0ZW5lclRvVjhP
YmplY3QoJHZhbHVlKSI7CisgICAgICAgIHJldHVybiAiVjhQcm94eTo6Y29udmVydEV2ZW50TGlz
dGVuZXJUb1Y4T2JqZWN0KCR2YWx1ZSkiOwogICAgIH0KIAogICAgIGlmICgkdHlwZSBlcSAiUkdC
Q29sb3IiKSB7Ci0gICAgICAgIHJldHVybiAiVjhQcm94eTo6VG9WOE9iamVjdChWOENsYXNzSW5k
ZXg6OlJHQkNPTE9SLCBuZXcgUkdCQ29sb3IoJHZhbHVlKSkiOworICAgICAgICByZXR1cm4gIlY4
UHJveHk6OmNvbnZlcnRUb1Y4T2JqZWN0KFY4Q2xhc3NJbmRleDo6UkdCQ09MT1IsIG5ldyBSR0JD
b2xvcigkdmFsdWUpKSI7CiAgICAgfQogCiAgICAgaWYgKCR0eXBlIGVxICJXb3JrZXJDb250ZXh0
IiBvciAkdHlwZSBlcSAiV29ya2VyTG9jYXRpb24iIG9yICR0eXBlIGVxICJXb3JrZXJOYXZpZ2F0
b3IiKSB7CkBAIC0yMDQ3LDcgKzIwNDcsNyBAQCBzdWIgTmF0aXZlVG9KU1ZhbHVlCiAgICAgICAg
ICAgICAkdmFsdWUgPSBHZW5lcmF0ZVNWR1N0YXRpY1BvZFR5cGVXcmFwcGVyKCR0eXBlLCAkdmFs
dWUpOwogICAgICAgICB9CiAKLSAgICAgICAgcmV0dXJuICJWOFByb3h5OjpUb1Y4T2JqZWN0KFY4
Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsICR2YWx1ZSkiOworICAgICAgICByZXR1cm4gIlY4UHJv
eHk6OmNvbnZlcnRUb1Y4T2JqZWN0KFY4Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsICR2YWx1ZSki
OwogICAgIH0KIH0KIApAQCAtMjExOSw3ICsyMTE5LDcgQEAgc3ViIEdlbmVyYXRlU1ZHQ29udGV4
dEFzc2lnbm1lbnQKICAgICBteSAkaW5kZW50ID0gc2hpZnQ7CiAKICAgICAkcmVzdWx0ID0gR2Vu
ZXJhdGVTVkdDb250ZXh0UmV0cmlldmFsKCRzcmNUeXBlLCAkaW5kZW50KTsKLSAgICAkcmVzdWx0
IC49ICAgJGluZGVudCAuICJWOFByb3h5OjpTZXRTVkdDb250ZXh0KCR2YWx1ZSwgY29udGV4dCk7
XG4iOworICAgICRyZXN1bHQgLj0gICAkaW5kZW50IC4gIlY4UHJveHk6OnNldFNWR0NvbnRleHQo
JHZhbHVlLCBjb250ZXh0KTtcbiI7CiAKICAgICByZXR1cm4gJHJlc3VsdDsKIH0KQEAgLTIxMzks
NyArMjEzOSw3IEBAIHN1YiBHZW5lcmF0ZVNWR0NvbnRleHRSZXRyaWV2YWwKICAgICBteSAkY29u
dGV4dERlY2w7CiAKICAgICBpZiAoSXNTVkdUeXBlTmVlZGluZ0NvbnRleHRQYXJhbWV0ZXIoJHNy
Y1R5cGUpKSB7Ci0gICAgICAgICRjb250ZXh0RGVjbCA9ICJWOFByb3h5OjpHZXRTVkdDb250ZXh0
KCRzcmNPYmplY3QpIjsKKyAgICAgICAgJGNvbnRleHREZWNsID0gIlY4UHJveHk6OnN2Z0NvbnRl
eHQoJHNyY09iamVjdCkiOwogICAgIH0gZWxzZSB7CiAgICAgICAgICRjb250ZXh0RGVjbCA9ICRz
cmNPYmplY3Q7CiAgICAgfQo=
</data>
<flag name="review"
          id="16505"
          type_id="1"
          status="+"
          setter="dglazkov"
    />
          </attachment>
      

    </bug>

</bugzilla>