<?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>29708</bug_id>
          
          <creation_ts>2009-09-24 02:57:16 -0700</creation_ts>
          <short_desc>[Qt] Update QWebElement API to remove script related methods.</short_desc>
          <delta_ts>2009-09-25 01:54:07 -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>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jocelyn Turcotte">jturcotte</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>hausmann</cc>
    
    <cc>laszlo.gombos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>149707</commentid>
    <comment_count>0</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2009-09-24 02:57:16 -0700</bug_when>
    <thetext>QWebElement::evaluateScript is the only one kept, these are
removed to postpone most of the QtWebKit&lt;-&gt;JavaScript API design
after 4.6.

Methods removed:
- QWebElement::callFunction
- QWebElement::functions
- QWebElement::scriptableProperty
- QWebElement::setScriptableProperty
- QWebElement::scriptableProperties</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149708</commentid>
    <comment_count>1</comment_count>
      <attachid>40055</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2009-09-24 03:00:08 -0700</bug_when>
    <thetext>Created attachment 40055
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149726</commentid>
    <comment_count>2</comment_count>
      <attachid>40059</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2009-09-24 04:39:26 -0700</bug_when>
    <thetext>Created attachment 40059
Patch v0.2

Add missing qdoc corrections.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149948</commentid>
    <comment_count>3</comment_count>
      <attachid>40059</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2009-09-25 01:03:32 -0700</bug_when>
    <thetext>Comment on attachment 40059
Patch v0.2

r=me. As sad as it is to see this stuff go, it&apos;s the right thing to do to.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149957</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2009-09-25 01:54:07 -0700</bug_when>
    <thetext>Committed r48751: &lt;http://trac.webkit.org/changeset/48751&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40055</attachid>
            <date>2009-09-24 03:00:08 -0700</date>
            <delta_ts>2009-09-24 04:39:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>qwebelement_apidiscoupleqtscript.patch</filename>
            <type>text/plain</type>
            <size>13646</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmVsZW1lbnQuY3BwIGIvV2ViS2l0L3F0L0Fw
aS9xd2ViZWxlbWVudC5jcHAKaW5kZXggZmYwODZmNi4uNGMzMTc0ZCAxMDA2NDQKLS0tIGEvV2Vi
S2l0L3F0L0FwaS9xd2ViZWxlbWVudC5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVu
dC5jcHAKQEAgLTY3MywzNSArNjczLDYgQEAgc3RhdGljIGJvb2wgc2V0dXBTY3JpcHRDb250ZXh0
KFdlYkNvcmU6OkVsZW1lbnQqIGVsZW1lbnQsIEpTQzo6SlNWYWx1ZSYgdGhpc1ZhbHUKIH0KIAog
Ci1zdGF0aWMgYm9vbCBzZXR1cFNjcmlwdE9iamVjdChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50
LCBTY3JpcHRPYmplY3QmIG9iamVjdCwgU2NyaXB0U3RhdGUqJiBzdGF0ZSwgU2NyaXB0Q29udHJv
bGxlciomIHNjcmlwdENvbnRyb2xsZXIpCi17Ci0gICAgaWYgKCFlbGVtZW50KQotICAgICAgICBy
ZXR1cm4gZmFsc2U7Ci0KLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBlbGVtZW50LT5kb2N1bWVu
dCgpOwotICAgIGlmICghZG9jdW1lbnQpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIEZy
YW1lKiBmcmFtZSA9IGRvY3VtZW50LT5mcmFtZSgpOwotICAgIGlmICghZnJhbWUpCi0gICAgICAg
IHJldHVybiBmYWxzZTsKLQotICAgIHNjcmlwdENvbnRyb2xsZXIgPSBmcmFtZS0+c2NyaXB0KCk7
Ci0KLSAgICBzdGF0ZSA9IHNjcmlwdENvbnRyb2xsZXItPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxF
eGVjKCk7Ci0KLSAgICBKU0M6OkpTVmFsdWUgdGhpc1ZhbHVlID0gdG9KUyhzdGF0ZSwgZWxlbWVu
dCk7Ci0gICAgaWYgKCF0aGlzVmFsdWUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIEpT
Qzo6SlNPYmplY3QqIHRoaXNPYmplY3QgPSB0aGlzVmFsdWUudG9PYmplY3Qoc3RhdGUpOwotICAg
IGlmICghdGhpc09iamVjdCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgb2JqZWN0ID0g
U2NyaXB0T2JqZWN0KHN0YXRlLCB0aGlzT2JqZWN0KTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQog
LyohCiAgICAgRXhlY3V0ZXMgXGEgc2NyaXB0U291cmNlIHdpdGggdGhpcyBlbGVtZW50IGFzIFxj
IHRoaXMgb2JqZWN0LgogCkBAIC03MzQsMjE4ICs3MDUsNiBAQCBRVmFyaWFudCBRV2ViRWxlbWVu
dDo6ZXZhbHVhdGVTY3JpcHQoY29uc3QgUVN0cmluZyYgc2NyaXB0U291cmNlKQogfQogCiAvKiEK
LSAgICBDYWxscyB0aGUgZnVuY3Rpb24gd2l0aCB0aGUgZ2l2ZW4gXGEgbmFtZSBhbmQgXGEgYXJn
dW1lbnRzLgotCi0gICAgVGhlIHVuZGVybHlpbmcgRE9NIGVsZW1lbnQgdGhhdCBRV2ViRWxlbWVu
dCB3cmFwcyBtYXkgaGF2ZSBkZWRpY2F0ZWQKLSAgICBmdW5jdGlvbnMsIGRlcGVuZGluZyBvbiBp
dHMgdHlwZS4gRm9yIGV4YW1wbGUsIGEgZm9ybSBlbGVtZW50IGNhbiBoYXZlIHRoZQotICAgIFxj
IHN1Ym1pdCBmdW5jdGlvbiwgdGhhdCB3b3VsZCBzdWJtaXQgdGhlIGZvcm0gdG8gdGhlIGRlc3Rp
bmF0aW9uIHNwZWNpZmllZAotICAgIGluIHRoZSBIVE1MLgotCi0gICAgXHNhIGZ1bmN0aW9ucygp
Ci0qLwotUVZhcmlhbnQgUVdlYkVsZW1lbnQ6OmNhbGxGdW5jdGlvbihjb25zdCBRU3RyaW5nICZu
YW1lLCBjb25zdCBRVmFyaWFudExpc3QgJmFyZ3VtZW50cykKLXsKLSAgICBTY3JpcHRTdGF0ZSog
c3RhdGUgPSAwOwotICAgIFNjcmlwdE9iamVjdCB0aGlzT2JqZWN0OwotICAgIFNjcmlwdENvbnRy
b2xsZXIqIHNjcmlwdENvbnRyb2xsZXIgPSAwOwotCi0gICAgaWYgKCFzZXR1cFNjcmlwdE9iamVj
dChtX2VsZW1lbnQsIHRoaXNPYmplY3QsIHN0YXRlLCBzY3JpcHRDb250cm9sbGVyKSkKLSAgICAg
ICAgcmV0dXJuIFFWYXJpYW50KCk7Ci0KLSAgICBTY3JpcHRGdW5jdGlvbkNhbGwgZnVuY3Rpb25D
YWxsKHN0YXRlLCB0aGlzT2JqZWN0LCBuYW1lKTsKLQotICAgIGZvciAoUVZhcmlhbnRMaXN0OjpD
b25zdEl0ZXJhdG9yIGl0ID0gYXJndW1lbnRzLmNvbnN0QmVnaW4oKSwgZW5kID0gYXJndW1lbnRz
LmNvbnN0RW5kKCk7Ci0gICAgICAgICBpdCAhPSBlbmQ7ICsraXQpCi0gICAgICAgIGZ1bmN0aW9u
Q2FsbC5hcHBlbmRBcmd1bWVudChKU0M6OkJpbmRpbmdzOjpjb252ZXJ0UVZhcmlhbnRUb1ZhbHVl
KHN0YXRlLCBzY3JpcHRDb250cm9sbGVyLT5iaW5kaW5nUm9vdE9iamVjdCgpLCAqaXQpKTsKLQot
ICAgIGJvb2wgaGFkRXhjZXB0aW9uID0gZmFsc2U7Ci0gICAgU2NyaXB0VmFsdWUgcmVzdWx0ID0g
ZnVuY3Rpb25DYWxsLmNhbGwoaGFkRXhjZXB0aW9uKTsKLSAgICBpZiAoaGFkRXhjZXB0aW9uKQot
ICAgICAgICByZXR1cm4gUVZhcmlhbnQoKTsKLQotICAgIGludCBkaXN0YW5jZSA9IDA7Ci0gICAg
cmV0dXJuIEpTQzo6QmluZGluZ3M6OmNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQoc3RhdGUsIHJlc3Vs
dC5qc1ZhbHVlKCksIFFNZXRhVHlwZTo6Vm9pZCwgJmRpc3RhbmNlKTsKLX0KLQotLyohCi0gICAg
UmV0dXJucyBhIGxpc3Qgb2YgZnVuY3Rpb24gbmFtZXMgdGhpcyBlbGVtZW50IHN1cHBvcnRzLgot
Ci0gICAgVGhlIGZ1bmN0aW9uIG5hbWVzIHJldHVybmVkIGFyZSB0aGUgc2FtZSBmdW5jdGlvbnMg
Y2FsbGFibGUgZnJvbSB0aGUgRE9NCi0gICAgZWxlbWVudCdzIEphdmFTY3JpcHQgYmluZGluZy4K
LQotICAgIFxzYSBjYWxsRnVuY3Rpb24oKQotKi8KLVFTdHJpbmdMaXN0IFFXZWJFbGVtZW50Ojpm
dW5jdGlvbnMoKSBjb25zdAotewotICAgIFNjcmlwdFN0YXRlKiBzdGF0ZSA9IDA7Ci0gICAgU2Ny
aXB0T2JqZWN0IHRoaXNPYmplY3Q7Ci0gICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0Q29udHJv
bGxlciA9IDA7Ci0KLSAgICBpZiAoIXNldHVwU2NyaXB0T2JqZWN0KG1fZWxlbWVudCwgdGhpc09i
amVjdCwgc3RhdGUsIHNjcmlwdENvbnRyb2xsZXIpKQotICAgICAgICByZXR1cm4gUVN0cmluZ0xp
c3QoKTsKLQotICAgIEpTQzo6SlNPYmplY3QqIG9iamVjdCA9IHRoaXNPYmplY3QuanNPYmplY3Qo
KTsKLSAgICBpZiAoIW9iamVjdCkKLSAgICAgICAgcmV0dXJuIFFTdHJpbmdMaXN0KCk7Ci0KLSAg
ICBRU3RyaW5nTGlzdCBuYW1lczsKLQotICAgIC8vIEVudW1lcmF0ZSB0aGUgY29udGVudHMgb2Yg
dGhlIG9iamVjdAotICAgIEpTQzo6UHJvcGVydHlOYW1lQXJyYXkgcHJvcGVydGllcyhzdGF0ZSk7
Ci0gICAgb2JqZWN0LT5nZXRQcm9wZXJ0eU5hbWVzKHN0YXRlLCBwcm9wZXJ0aWVzKTsKLSAgICBm
b3IgKEpTQzo6UHJvcGVydHlOYW1lQXJyYXk6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gcHJvcGVydGll
cy5iZWdpbigpOwotICAgICAgICAgaXQgIT0gcHJvcGVydGllcy5lbmQoKTsgKytpdCkgewotCi0g
ICAgICAgIEpTQzo6SlNWYWx1ZSBwcm9wZXJ0eSA9IG9iamVjdC0+Z2V0KHN0YXRlLCAqaXQpOwot
ICAgICAgICBpZiAoIXByb3BlcnR5KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAg
SlNDOjpKU09iamVjdCogZnVuY3Rpb24gPSBwcm9wZXJ0eS50b09iamVjdChzdGF0ZSk7Ci0gICAg
ICAgIGlmICghZnVuY3Rpb24pCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBKU0M6
OkNhbGxEYXRhIGNhbGxEYXRhOwotICAgICAgICBKU0M6OkNhbGxUeXBlIGNhbGxUeXBlID0gZnVu
Y3Rpb24tPmdldENhbGxEYXRhKGNhbGxEYXRhKTsKLSAgICAgICAgaWYgKGNhbGxUeXBlID09IEpT
Qzo6Q2FsbFR5cGVOb25lKQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgSlNDOjpV
U3RyaW5nIHVzdHJpbmcgPSAoKml0KS51c3RyaW5nKCk7Ci0gICAgICAgIG5hbWVzIDw8IFFTdHJp
bmc6OmZyb21VdGYxNigoY29uc3QgdXNob3J0Kil1c3RyaW5nLnJlcCgpLT5kYXRhKCksIHVzdHJp
bmcuc2l6ZSgpKTsKLSAgICB9Ci0KLSAgICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQotICAg
ICAgICBzdGF0ZS0+Y2xlYXJFeGNlcHRpb24oKTsKLQotICAgIHJldHVybiBuYW1lczsKLX0KLQot
LyohCi0gICAgUmV0dXJucyB0aGUgdmFsdWUgb2YgdGhlIGVsZW1lbnQncyBcYSBuYW1lIHByb3Bl
cnR5LiBJZiBubyBzdWNoIHByb3BlcnR5Ci0gICAgZXhpc3RzLCBhbiBpbnZhbGlkIFFWYXJpYW50
IGlzIHJldHVybmVkLgotCi0gICAgVGhlIHJldHVybiB2YWx1ZSdzIHByb3BlcnR5IGhhcyB0aGUg
c2FtZSB2YWx1ZSBhcyB0aGUgY29ycmVzcG9uZGluZwotICAgIHByb3BlcnR5IGluIHRoZSBlbGVt
ZW50J3MgSmF2YVNjcmlwdCBiaW5kaW5nIHdpdGggdGhlIHNhbWUgbmFtZS4KLQotICAgIEluZm9y
bWF0aW9uIGFib3V0IGFsbCBhdmFpbGFibGUgcHJvcGVydGllcyBpcyBwcm92aWRlZCB0aHJvdWdo
Ci0gICAgc2NyaXB0UHJvcGVydGllcygpLgotCi0gICAgXHNhIHNldFNjcmlwdGFibGVQcm9wZXJ0
eSgpLCBzY3JpcHRhYmxlUHJvcGVydGllcygpCi0qLwotUVZhcmlhbnQgUVdlYkVsZW1lbnQ6OnNj
cmlwdGFibGVQcm9wZXJ0eShjb25zdCBRU3RyaW5nICZuYW1lKSBjb25zdAotewotICAgIFNjcmlw
dFN0YXRlKiBzdGF0ZSA9IDA7Ci0gICAgU2NyaXB0T2JqZWN0IHRoaXNPYmplY3Q7Ci0gICAgU2Ny
aXB0Q29udHJvbGxlciAqc2NyaXB0Q29udHJvbGxlciA9IDA7Ci0KLSAgICBpZiAoIXNldHVwU2Ny
aXB0T2JqZWN0KG1fZWxlbWVudCwgdGhpc09iamVjdCwgc3RhdGUsIHNjcmlwdENvbnRyb2xsZXIp
KQotICAgICAgICByZXR1cm4gUVZhcmlhbnQoKTsKLQotICAgIFN0cmluZyB3Y05hbWUobmFtZSk7
Ci0gICAgSlNDOjpKU1ZhbHVlIHByb3BlcnR5ID0gdGhpc09iamVjdC5qc09iamVjdCgpLT5nZXQo
c3RhdGUsIEpTQzo6SWRlbnRpZmllcihzdGF0ZSwgd2NOYW1lKSk7Ci0KLSAgICAvLyAjIyMKLSAg
ICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQotICAgICAgICBzdGF0ZS0+Y2xlYXJFeGNlcHRp
b24oKTsKLQotICAgIGludCBkaXN0YW5jZSA9IDA7Ci0gICAgcmV0dXJuIEpTQzo6QmluZGluZ3M6
OmNvbnZlcnRWYWx1ZVRvUVZhcmlhbnQoc3RhdGUsIHByb3BlcnR5LCBRTWV0YVR5cGU6OlZvaWQs
ICZkaXN0YW5jZSk7Ci19Ci0KLS8qIQotICAgIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBlbGVtZW50
J3MgXGEgbmFtZSBwcm9wZXJ0eSB0byBcYSB2YWx1ZS4KLQotICAgIEluZm9ybWF0aW9uIGFib3V0
IGFsbCBhdmFpbGFibGUgcHJvcGVydGllcyBpcyBwcm92aWRlZCB0aHJvdWdoCi0gICAgc2NyaXB0
UHJvcGVydGllcygpLgotCi0gICAgU2V0dGluZyB0aGUgcHJvcGVydHkgd2lsbCBhZmZlY3QgdGhl
IGNvcnJlc3BvbmRpbmcgcHJvcGVydHkgaW4gdGhlCi0gICAgZWxlbWVudCdzIEphdmFTY3JpcHQg
YmluZGluZyB3aXRoIHRoZSBzYW1lIG5hbWUuCi0KLSAgICBcc2Egc2NyaXB0YWJsZVByb3BlcnR5
KCksIHNjcmlwdGFibGVQcm9wZXJ0aWVzKCkKLSovCi12b2lkIFFXZWJFbGVtZW50OjpzZXRTY3Jp
cHRhYmxlUHJvcGVydHkoY29uc3QgUVN0cmluZyAmbmFtZSwgY29uc3QgUVZhcmlhbnQgJnZhbHVl
KQotewotICAgIFNjcmlwdFN0YXRlKiBzdGF0ZSA9IDA7Ci0gICAgU2NyaXB0T2JqZWN0IHRoaXNP
YmplY3Q7Ci0gICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0Q29udHJvbGxlciA9IDA7Ci0KLSAg
ICBpZiAoIXNldHVwU2NyaXB0T2JqZWN0KG1fZWxlbWVudCwgdGhpc09iamVjdCwgc3RhdGUsIHNj
cmlwdENvbnRyb2xsZXIpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBKU0M6OkpTVmFsdWUganNW
YWx1ZSA9IEpTQzo6QmluZGluZ3M6OmNvbnZlcnRRVmFyaWFudFRvVmFsdWUoc3RhdGUsIHNjcmlw
dENvbnRyb2xsZXItPmJpbmRpbmdSb290T2JqZWN0KCksIHZhbHVlKTsKLSAgICBpZiAoIWpzVmFs
dWUpCi0gICAgICAgIHJldHVybjsKLQotICAgIFN0cmluZyB3Y05hbWUobmFtZSk7Ci0gICAgSlND
OjpQdXRQcm9wZXJ0eVNsb3Qgc2xvdDsKLSAgICB0aGlzT2JqZWN0LmpzT2JqZWN0KCktPnB1dChz
dGF0ZSwgSlNDOjpJZGVudGlmaWVyKHN0YXRlLCB3Y05hbWUpLCBqc1ZhbHVlLCBzbG90KTsKLSAg
ICBpZiAoc3RhdGUtPmhhZEV4Y2VwdGlvbigpKQotICAgICAgICBzdGF0ZS0+Y2xlYXJFeGNlcHRp
b24oKTsKLX0KLQotLyohCi0gICAgUmV0dXJucyBhIGxpc3Qgb2YgcHJvcGVydHkgbmFtZXMgdGhp
cyBlbGVtZW50IHN1cHBvcnRzLgotCi0gICAgVGhlIGZ1bmN0aW9uIG5hbWVzIHJldHVybmVkIGFy
ZSB0aGUgc2FtZSBwcm9wZXJ0aWVzIHRoYXQgYXJlIGFjY2Vzc2libGUKLSAgICBmcm9tIHRoZSBE
T00gZWxlbWVudCdzIEphdmFTY3JpcHQgYmluZGluZy4KLQotICAgIFxzYSBzZXRTY3JpcHRhYmxl
UHJvcGVydHkoKSwgc2NyaXB0YWJsZVByb3BlcnR5KCkKLSovCi1RU3RyaW5nTGlzdCBRV2ViRWxl
bWVudDo6c2NyaXB0YWJsZVByb3BlcnRpZXMoKSBjb25zdAotewotICAgIGlmICghbV9lbGVtZW50
KQotICAgICAgICByZXR1cm4gUVN0cmluZ0xpc3QoKTsKLQotICAgIERvY3VtZW50KiBkb2N1bWVu
dCA9IG1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKLSAgICBpZiAoIWRvY3VtZW50KQotICAgICAgICBy
ZXR1cm4gUVN0cmluZ0xpc3QoKTsKLQotICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50LT5mcmFt
ZSgpOwotICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiBRU3RyaW5nTGlzdCgpOwotCi0g
ICAgU2NyaXB0Q29udHJvbGxlciogc2NyaXB0ID0gZnJhbWUtPnNjcmlwdCgpOwotICAgIEpTQzo6
RXhlY1N0YXRlKiBleGVjID0gc2NyaXB0LT5nbG9iYWxPYmplY3QoKS0+Z2xvYmFsRXhlYygpOwot
Ci0gICAgSlNDOjpKU1ZhbHVlIHRoaXNWYWx1ZSA9IHRvSlMoZXhlYywgbV9lbGVtZW50KTsKLSAg
ICBpZiAoIXRoaXNWYWx1ZSkKLSAgICAgICAgcmV0dXJuIFFTdHJpbmdMaXN0KCk7Ci0KLSAgICBK
U0M6OkpTT2JqZWN0KiBvYmplY3QgPSB0aGlzVmFsdWUudG9PYmplY3QoZXhlYyk7Ci0gICAgaWYg
KCFvYmplY3QpCi0gICAgICAgIHJldHVybiBRU3RyaW5nTGlzdCgpOwotCi0gICAgUVN0cmluZ0xp
c3QgbmFtZXM7Ci0KLSAgICAvLyBFbnVtZXJhdGUgdGhlIGNvbnRlbnRzIG9mIHRoZSBvYmplY3QK
LSAgICBKU0M6OlByb3BlcnR5TmFtZUFycmF5IHByb3BlcnRpZXMoZXhlYyk7Ci0gICAgb2JqZWN0
LT5nZXRQcm9wZXJ0eU5hbWVzKGV4ZWMsIHByb3BlcnRpZXMpOwotICAgIGZvciAoSlNDOjpQcm9w
ZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQgPSBwcm9wZXJ0aWVzLmJlZ2luKCk7Ci0g
ICAgICAgICBpdCAhPSBwcm9wZXJ0aWVzLmVuZCgpOyArK2l0KSB7Ci0KLSAgICAgICAgSlNDOjpK
U1ZhbHVlIHByb3BlcnR5ID0gb2JqZWN0LT5nZXQoZXhlYywgKml0KTsKLSAgICAgICAgaWYgKCFw
cm9wZXJ0eSkKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIEpTQzo6SlNPYmplY3Qq
IGZ1bmN0aW9uID0gcHJvcGVydHkudG9PYmplY3QoZXhlYyk7Ci0gICAgICAgIGlmICghZnVuY3Rp
b24pCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBKU0M6OkNhbGxEYXRhIGNhbGxE
YXRhOwotICAgICAgICBKU0M6OkNhbGxUeXBlIGNhbGxUeXBlID0gZnVuY3Rpb24tPmdldENhbGxE
YXRhKGNhbGxEYXRhKTsKLSAgICAgICAgaWYgKGNhbGxUeXBlICE9IEpTQzo6Q2FsbFR5cGVOb25l
KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgSlNDOjpVU3RyaW5nIHVzdHJpbmcg
PSAoKml0KS51c3RyaW5nKCk7Ci0gICAgICAgIG5hbWVzIDw8IFFTdHJpbmc6OmZyb21VdGYxNigo
Y29uc3QgdXNob3J0Kil1c3RyaW5nLnJlcCgpLT5kYXRhKCksIHVzdHJpbmcuc2l6ZSgpKTsKLSAg
ICB9Ci0KLSAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCi0gICAgICAgIGV4ZWMtPmNsZWFy
RXhjZXB0aW9uKCk7Ci0KLSAgICByZXR1cm4gbmFtZXM7Ci19Ci0KLS8qIQogICAgIFxlbnVtIFFX
ZWJFbGVtZW50OjpSZXNvbHZlUnVsZQogICAgIFxzaW5jZSA0LjYKIApkaWZmIC0tZ2l0IGEvV2Vi
S2l0L3F0L0FwaS9xd2ViZWxlbWVudC5oIGIvV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVudC5oCmlu
ZGV4IDVmNDg3MGMuLmI5ZThmYzMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9BcGkvcXdlYmVsZW1l
bnQuaAorKysgYi9XZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmgKQEAgLTEyMiwxMyArMTIyLDYg
QEAgcHVibGljOgogCiAgICAgUVZhcmlhbnQgZXZhbHVhdGVTY3JpcHQoY29uc3QgUVN0cmluZyYg
c2NyaXB0U291cmNlKTsKIAotICAgIFFWYXJpYW50IGNhbGxGdW5jdGlvbihjb25zdCBRU3RyaW5n
JiBmdW5jdGlvbk5hbWUsIGNvbnN0IFFWYXJpYW50TGlzdCYgYXJndW1lbnRzID0gUVZhcmlhbnRM
aXN0KCkpOwotICAgIFFTdHJpbmdMaXN0IGZ1bmN0aW9ucygpIGNvbnN0OwotCi0gICAgUVZhcmlh
bnQgc2NyaXB0YWJsZVByb3BlcnR5KGNvbnN0IFFTdHJpbmcmIG5hbWUpIGNvbnN0OwotICAgIHZv
aWQgc2V0U2NyaXB0YWJsZVByb3BlcnR5KGNvbnN0IFFTdHJpbmcmIG5hbWUsIGNvbnN0IFFWYXJp
YW50JiB2YWx1ZSk7Ci0gICAgUVN0cmluZ0xpc3Qgc2NyaXB0YWJsZVByb3BlcnRpZXMoKSBjb25z
dDsKLQogICAgIGVudW0gUmVzb2x2ZVJ1bGUgeyBJZ25vcmVDYXNjYWRpbmdTdHlsZXMsIFJlc3Bl
Y3RDYXNjYWRpbmdTdHlsZXMgfTsKICAgICBRU3RyaW5nIHN0eWxlUHJvcGVydHkoY29uc3QgUVN0
cmluZyYgbmFtZSwgUmVzb2x2ZVJ1bGUgPSBJZ25vcmVDYXNjYWRpbmdTdHlsZXMpIGNvbnN0Owog
CmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpp
bmRleCBkNzEyNmY5Li5mNjEzYTA4IDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisr
KyBiL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAwOS0wOS0yNCAgSm9j
ZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4udHVyY290dGVAbm9raWEuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtRdF0gVXBkYXRlIFFXZWJFbGVt
ZW50IEFQSSB0byByZW1vdmUgc2NyaXB0IHJlbGF0ZWQgbWV0aG9kcy4KKyAgICAgICAgUVdlYkVs
ZW1lbnQ6OmV2YWx1YXRlU2NyaXB0IGlzIHRoZSBvbmx5IG9uZSBrZXB0LCB0aGVzZSBhcmUKKyAg
ICAgICAgcmVtb3ZlZCB0byBwb3N0cG9uZSBtb3N0IG9mIHRoZSBRdFdlYktpdDwtPkphdmFTY3Jp
cHQgQVBJIGRlc2lnbgorICAgICAgICBhZnRlciA0LjYuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTcwOAorCisgICAgICAgICogQXBpL3F3ZWJlbGVt
ZW50LmNwcDoKKyAgICAgICAgKiBBcGkvcXdlYmVsZW1lbnQuaDoKKyAgICAgICAgTWV0aG9kcyBy
ZW1vdmVkOgorICAgICAgICAtIFFXZWJFbGVtZW50OjpjYWxsRnVuY3Rpb24KKyAgICAgICAgLSBR
V2ViRWxlbWVudDo6ZnVuY3Rpb25zCisgICAgICAgIC0gUVdlYkVsZW1lbnQ6OnNjcmlwdGFibGVQ
cm9wZXJ0eQorICAgICAgICAtIFFXZWJFbGVtZW50OjpzZXRTY3JpcHRhYmxlUHJvcGVydHkKKyAg
ICAgICAgLSBRV2ViRWxlbWVudDo6c2NyaXB0YWJsZVByb3BlcnRpZXMKKyAgICAgICAgKiB0ZXN0
cy9xd2ViZWxlbWVudC90c3RfcXdlYmVsZW1lbnQuY3BwOgorICAgICAgICAodHN0X1FXZWJFbGVt
ZW50OjpldmFsdWF0ZVNjcmlwdCk6CisKIDIwMDktMDktMjEgIEtlbm5ldGggUm9oZGUgQ2hyaXN0
aWFuc2VuICA8a2VubmV0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9u
IEhhdXNtYW5uLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3F0L3Rlc3RzL3F3ZWJlbGVtZW50L3RzdF9x
d2ViZWxlbWVudC5jcHAgYi9XZWJLaXQvcXQvdGVzdHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVt
ZW50LmNwcAppbmRleCAwODE5YTNhLi44NTk2MjVmIDEwMDY0NAotLS0gYS9XZWJLaXQvcXQvdGVz
dHMvcXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNwcAorKysgYi9XZWJLaXQvcXQvdGVzdHMv
cXdlYmVsZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNwcApAQCAtNzIsMTQgKzcyLDEwIEBAIHByaXZh
dGUgc2xvdHM6CiAgICAgdm9pZCBuYW1lc3BhY2VVUkkoKTsKICAgICB2b2lkIGZvcmVhY2hNYW5p
cHVsYXRpb24oKTsKICAgICB2b2lkIGV2YWx1YXRlU2NyaXB0KCk7Ci0gICAgdm9pZCBjYWxsRnVu
Y3Rpb24oKTsKLSAgICB2b2lkIGNhbGxGdW5jdGlvblN1Ym1pdEZvcm0oKTsKLSAgICB2b2lkIGZ1
bmN0aW9uTmFtZXMoKTsKICAgICB2b2lkIGRvY3VtZW50RWxlbWVudCgpOwogICAgIHZvaWQgZnJh
bWUoKTsKICAgICB2b2lkIHN0eWxlKCk7CiAgICAgdm9pZCBjb21wdXRlZFN0eWxlKCk7Ci0gICAg
dm9pZCBwcm9wZXJ0aWVzKCk7CiAgICAgdm9pZCBhcHBlbmRBbmRQcmVwZW5kKCk7CiAgICAgdm9p
ZCBpbnNlcnRCZWZvcmVBbmRBZnRlcigpOwogICAgIHZvaWQgcmVtb3ZlKCk7CkBAIC0yOTMsNyAr
Mjg5LDYgQEAgdm9pZCB0c3RfUVdlYkVsZW1lbnQ6OmV2YWx1YXRlU2NyaXB0KCkKICAgICBRVkVS
SUZZKHJlc3VsdC50eXBlKCkgPT0gUVZhcmlhbnQ6OlN0cmluZyk7CiAgICAgUUNPTVBBUkUocmVz
dWx0LnRvU3RyaW5nKCksIFFMYXRpbjFTdHJpbmcoIlAiKSk7CiAKLSAgICBRVkVSSUZZKHBhcmEu
ZnVuY3Rpb25zKCkuY29udGFpbnMoImhhc0F0dHJpYnV0ZXMiKSk7CiAgICAgcmVzdWx0ID0gcGFy
YS5ldmFsdWF0ZVNjcmlwdCgidGhpcy5oYXNBdHRyaWJ1dGVzKCkiKTsKICAgICBRVkVSSUZZKHJl
c3VsdC5pc1ZhbGlkKCkpOwogICAgIFFWRVJJRlkocmVzdWx0LnR5cGUoKSA9PSBRVmFyaWFudDo6
Qm9vbCk7CkBAIC0zMDgsNDMgKzMwMyw2IEBAIHZvaWQgdHN0X1FXZWJFbGVtZW50OjpldmFsdWF0
ZVNjcmlwdCgpCiAgICAgUVZFUklGWShyZXN1bHQudG9Cb29sKCkpOwogfQogCi12b2lkIHRzdF9R
V2ViRWxlbWVudDo6Y2FsbEZ1bmN0aW9uKCkKLXsKLSAgICBtX21haW5GcmFtZS0+c2V0SHRtbCgi
PGJvZHk+PHA+dGVzdCIpOwotICAgIFFXZWJFbGVtZW50IGJvZHkgPSBtX21haW5GcmFtZS0+ZG9j
dW1lbnRFbGVtZW50KCk7Ci0gICAgUVZFUklGWShib2R5LmZ1bmN0aW9ucygpLmNvbnRhaW5zKCJo
YXNDaGlsZE5vZGVzIikpOwotICAgIFFWYXJpYW50IHJlc3VsdCA9IGJvZHkuY2FsbEZ1bmN0aW9u
KCJoYXNDaGlsZE5vZGVzIik7Ci0gICAgUVZFUklGWShyZXN1bHQuaXNWYWxpZCgpKTsKLSAgICBR
VkVSSUZZKHJlc3VsdC50eXBlKCkgPT0gUVZhcmlhbnQ6OkJvb2wpOwotICAgIFFWRVJJRlkocmVz
dWx0LnRvQm9vbCgpKTsKLQotICAgIGJvZHkuY2FsbEZ1bmN0aW9uKCJzZXRBdHRyaWJ1dGUiLCBR
VmFyaWFudExpc3QoKSA8PCAiZm9vIiA8PCAiYmFyIik7Ci0gICAgUUNPTVBBUkUoYm9keS5hdHRy
aWJ1dGUoImZvbyIpLCBRU3RyaW5nKCJiYXIiKSk7Ci19Ci0KLXZvaWQgdHN0X1FXZWJFbGVtZW50
OjpjYWxsRnVuY3Rpb25TdWJtaXRGb3JtKCkKLXsKLSAgICBtX21haW5GcmFtZS0+c2V0SHRtbChR
U3RyaW5nKCI8aHRtbD48Ym9keT48Zm9ybSBuYW1lPSd0c3Rmb3JtJyBhY3Rpb249J2RhdGE6dGV4
dC9odG1sLGZvbydtZXRob2Q9J2dldCc+IgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIjxpbnB1dCB0eXBlPSd0ZXh0Jz48aW5wdXQgdHlwZT0nc3VibWl0Jz48L2Zvcm0+PC9ib2R5
PjwvaHRtbD4iKSwgUVVybCgpKTsKLQotICAgIFFXZWJFbGVtZW50IGZvcm0gPSBtX21haW5GcmFt
ZS0+ZG9jdW1lbnRFbGVtZW50KCkuZmluZEFsbCgiZm9ybSIpLmF0KDApOwotICAgIFFWRVJJRlko
Zm9ybS5mdW5jdGlvbnMoKS5jb250YWlucygic3VibWl0IikpOwotICAgIFFWRVJJRlkoIWZvcm0u
aXNOdWxsKCkpOwotICAgIGZvcm0uY2FsbEZ1bmN0aW9uKCJzdWJtaXQiKTsKLQotICAgIHdhaXRG
b3JTaWduYWwobV9wYWdlLCBTSUdOQUwobG9hZEZpbmlzaGVkKGJvb2wpKSk7Ci0gICAgUUNPTVBB
UkUobV9tYWluRnJhbWUtPnVybCgpLnRvU3RyaW5nKCksIFFTdHJpbmcoImRhdGE6dGV4dC9odG1s
LGZvbz8iKSk7Ci19Ci0KLXZvaWQgdHN0X1FXZWJFbGVtZW50OjpmdW5jdGlvbk5hbWVzKCkKLXsK
LSAgICBtX21haW5GcmFtZS0+c2V0SHRtbCgiPGJvZHk+PHA+VGVzdCIpOwotCi0gICAgUVdlYkVs
ZW1lbnQgYm9keSA9IG1fbWFpbkZyYW1lLT5kb2N1bWVudEVsZW1lbnQoKTsKLQotICAgIFFWRVJJ
RlkoYm9keS5mdW5jdGlvbnMoKS5jb250YWlucygic2V0QXR0cmlidXRlIikpOwotfQotCiB2b2lk
IHRzdF9RV2ViRWxlbWVudDo6ZG9jdW1lbnRFbGVtZW50KCkKIHsKICAgICBtX21haW5GcmFtZS0+
c2V0SHRtbCgiPGJvZHk+PHA+VGVzdCIpOwpAQCAtNTM2LDM3ICs0OTQsNiBAQCB2b2lkIHRzdF9R
V2ViRWxlbWVudDo6Y29tcHV0ZWRTdHlsZSgpCiAgICAgUUNPTVBBUkUocC5zdHlsZVByb3BlcnR5
KCJjb2xvciIpLCBRTGF0aW4xU3RyaW5nKCJyZWQiKSk7CiB9CiAKLXZvaWQgdHN0X1FXZWJFbGVt
ZW50Ojpwcm9wZXJ0aWVzKCkKLXsKLSAgICBtX21haW5GcmFtZS0+c2V0SHRtbCgiPGJvZHk+PGZv
cm0+PGlucHV0IHR5cGU9Y2hlY2tib3ggaWQ9b3VyY2hlY2tib3ggY2hlY2tlZD10cnVlPiIpOwot
Ci0gICAgUVdlYkVsZW1lbnQgY2hlY2tCb3ggPSBtX21haW5GcmFtZS0+ZmluZEZpcnN0RWxlbWVu
dCgiI291cmNoZWNrYm94Iik7Ci0gICAgUVZFUklGWSghY2hlY2tCb3guaXNOdWxsKCkpOwotCi0g
ICAgUVZFUklGWShjaGVja0JveC5zY3JpcHRhYmxlUHJvcGVydGllcygpLmNvbnRhaW5zKCJjaGVj
a2VkIikpOwotCi0gICAgUUNPTVBBUkUoY2hlY2tCb3guc2NyaXB0YWJsZVByb3BlcnR5KCJjaGVj
a2VkIiksIFFWYXJpYW50KHRydWUpKTsKLSAgICBjaGVja0JveC5zZXRTY3JpcHRhYmxlUHJvcGVy
dHkoImNoZWNrZWQiLCBmYWxzZSk7Ci0gICAgUUNPTVBBUkUoY2hlY2tCb3guc2NyaXB0YWJsZVBy
b3BlcnR5KCJjaGVja2VkIiksIFFWYXJpYW50KGZhbHNlKSk7Ci0KLSAgICBRVkVSSUZZKCFjaGVj
a0JveC5zY3JpcHRhYmxlUHJvcGVydGllcygpLmNvbnRhaW5zKCJub25fZXhpc3RhbnQiKSk7Ci0g
ICAgUUNPTVBBUkUoY2hlY2tCb3guc2NyaXB0YWJsZVByb3BlcnR5KCJub25fZXhpc3RhbnQiKSwg
UVZhcmlhbnQoKSk7Ci0KLSAgICBjaGVja0JveC5zZXRTY3JpcHRhYmxlUHJvcGVydHkoIm5vbl9l
eGlzdGFudCIsICJ0ZXN0Iik7Ci0KLSAgICBRQ09NUEFSRShjaGVja0JveC5zY3JpcHRhYmxlUHJv
cGVydHkoIm5vbl9leGlzdGFudCIpLCBRVmFyaWFudCgidGVzdCIpKTsKLSAgICBRVkVSSUZZKGNo
ZWNrQm94LnNjcmlwdGFibGVQcm9wZXJ0aWVzKCkuY29udGFpbnMoIm5vbl9leGlzdGFudCIpKTsK
LQotICAgIC8vIHJlbW92aW5nIHNjcmlwdGFibGVQcm9wZXJ0aWVzIGlzIGN1cnJlbnRseSBub3Qg
c3VwcG9ydGVkLiBXZSBzaG91bGQgbG9vayBpbnRvIHRoaXMKLSAgICAvLyBhbmQgY29uc2lkZXIg
dGhlIG9wdGlvbiBvZiBqdXN0IGFsbG93aW5nIHRocm91Z2ggdGhlIFF0U2NyaXB0IEFQSSBvbmx5
LgotI2lmIDAKLSAgICBjaGVja0JveC5zZXRTY3JpcHRhYmxlUHJvcGVydHkoIm5vbl9leGlzdGFu
dCIsIFFWYXJpYW50KCkpOwotCi0gICAgUUNPTVBBUkUoY2hlY2tCb3guc2NyaXB0YWJsZVByb3Bl
cnR5KCJub25fZXhpc3RhbnQiKSwgUVZhcmlhbnQoKSk7Ci0gICAgUVZFUklGWSghY2hlY2tCb3gu
c2NyaXB0YWJsZVByb3BlcnRpZXMoKS5jb250YWlucygibm9uX2V4aXN0YW50IikpOwotI2VuZGlm
Ci19Ci0KIHZvaWQgdHN0X1FXZWJFbGVtZW50OjphcHBlbmRBbmRQcmVwZW5kKCkKIHsKICAgICBR
U3RyaW5nIGh0bWwgPSAiPGJvZHk+Igo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40059</attachid>
            <date>2009-09-24 04:39:26 -0700</date>
            <delta_ts>2009-09-25 01:03:32 -0700</delta_ts>
            <desc>Patch v0.2</desc>
            <filename>qwebelement_apidiscoupleqtscript.patch</filename>
            <type>text/plain</type>
            <size>14512</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9BcGkvcXdlYmVsZW1lbnQuY3BwIGIvV2ViS2l0L3F0L0Fw
aS9xd2ViZWxlbWVudC5jcHAKaW5kZXggZmYwODZmNi4uYzMzZDQ3NCAxMDA2NDQKLS0tIGEvV2Vi
S2l0L3F0L0FwaS9xd2ViZWxlbWVudC5jcHAKKysrIGIvV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVu
dC5jcHAKQEAgLTk1LDE2ICs5NSw2IEBAIHB1YmxpYzoKICAgICBJdCBpcyBwb3NzaWJsZSB0byBy
ZXBsYWNlIHRoZSBjb250ZW50cyBvZiBjaGlsZCBlbGVtZW50cyB1c2luZwogICAgIHNldFBsYWlu
VGV4dCgpIGFuZCBzZXRJbm5lclhtbCgpLiBUbyByZXBsYWNlIHRoZSBlbGVtZW50IGl0c2VsZiBh
bmQgaXRzCiAgICAgY29udGVudHMsIHVzZSBzZXRPdXRlclhtbCgpLgotCi0gICAgSW4gdGhlIEph
dmFTY3JpcHQgRE9NIGludGVyZmFjZXMsIGVsZW1lbnRzIGNhbiBoYXZlIGFkZGl0aW9uYWwgZnVu
Y3Rpb25zCi0gICAgZGVwZW5kaW5nIG9uIHRoZWlyIHR5cGUuIEZvciBleGFtcGxlLCBhbiBIVE1M
IGZvcm0gZWxlbWVudCBjYW4gYmUgdHJpZ2dlcmVkCi0gICAgdG8gc3VibWl0IHRoZSBlbnRpcmUg
Zm9ybSB0byB0aGUgd2ViIHNlcnZlciB1c2luZyB0aGUgc3VibWl0KCkgZnVuY3Rpb24uIEEKLSAg
ICBsaXN0IG9mIHRoZXNlIHNwZWNpYWwgZnVuY3Rpb25zIGNhbiBiZSBvYnRhaW5lZCBpbiBRV2Vi
RWxlbWVudCB1c2luZwotICAgIGZ1bmN0aW9ucygpOyB0aGV5IGNhbiBiZSBpbnZva2VkIHVzaW5n
IGNhbGxGdW5jdGlvbigpLgotCi0gICAgU2ltaWxhcmx5LCBlbGVtZW50IHNwZWNpZmljIHByb3Bl
cnRpZXMgY2FuIGJlIG9idGFpbmVkIHVzaW5nCi0gICAgc2NyaXB0YWJsZVByb3BlcnRpZXMoKSBh
bmQgcmVhZCBvciB3cml0dGVuIHVzaW5nIHNjcmlwdGFibGVQcm9wZXJ0eSgpIG9yCi0gICAgc2V0
U2NyaXB0YWJsZVByb3BlcnR5KCkuCiAqLwogCiAvKiEKQEAgLTY3MywzOSArNjYzLDggQEAgc3Rh
dGljIGJvb2wgc2V0dXBTY3JpcHRDb250ZXh0KFdlYkNvcmU6OkVsZW1lbnQqIGVsZW1lbnQsIEpT
Qzo6SlNWYWx1ZSYgdGhpc1ZhbHUKIH0KIAogCi1zdGF0aWMgYm9vbCBzZXR1cFNjcmlwdE9iamVj
dChXZWJDb3JlOjpFbGVtZW50KiBlbGVtZW50LCBTY3JpcHRPYmplY3QmIG9iamVjdCwgU2NyaXB0
U3RhdGUqJiBzdGF0ZSwgU2NyaXB0Q29udHJvbGxlciomIHNjcmlwdENvbnRyb2xsZXIpCi17Ci0g
ICAgaWYgKCFlbGVtZW50KQotICAgICAgICByZXR1cm4gZmFsc2U7Ci0KLSAgICBEb2N1bWVudCog
ZG9jdW1lbnQgPSBlbGVtZW50LT5kb2N1bWVudCgpOwotICAgIGlmICghZG9jdW1lbnQpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKLQotICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50LT5mcmFtZSgp
OwotICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIHNjcmlwdENv
bnRyb2xsZXIgPSBmcmFtZS0+c2NyaXB0KCk7Ci0KLSAgICBzdGF0ZSA9IHNjcmlwdENvbnRyb2xs
ZXItPmdsb2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCk7Ci0KLSAgICBKU0M6OkpTVmFsdWUgdGhp
c1ZhbHVlID0gdG9KUyhzdGF0ZSwgZWxlbWVudCk7Ci0gICAgaWYgKCF0aGlzVmFsdWUpCi0gICAg
ICAgIHJldHVybiBmYWxzZTsKLQotICAgIEpTQzo6SlNPYmplY3QqIHRoaXNPYmplY3QgPSB0aGlz
VmFsdWUudG9PYmplY3Qoc3RhdGUpOwotICAgIGlmICghdGhpc09iamVjdCkKLSAgICAgICAgcmV0
dXJuIGZhbHNlOwotCi0gICAgb2JqZWN0ID0gU2NyaXB0T2JqZWN0KHN0YXRlLCB0aGlzT2JqZWN0
KTsKLSAgICByZXR1cm4gdHJ1ZTsKLX0KLQogLyohCiAgICAgRXhlY3V0ZXMgXGEgc2NyaXB0U291
cmNlIHdpdGggdGhpcyBlbGVtZW50IGFzIFxjIHRoaXMgb2JqZWN0LgotCi0gICAgXHNhIGNhbGxG
dW5jdGlvbigpCiAqLwogUVZhcmlhbnQgUVdlYkVsZW1lbnQ6OmV2YWx1YXRlU2NyaXB0KGNvbnN0
IFFTdHJpbmcmIHNjcmlwdFNvdXJjZSkKIHsKQEAgLTczNCwyMTggKzY5Myw2IEBAIFFWYXJpYW50
IFFXZWJFbGVtZW50OjpldmFsdWF0ZVNjcmlwdChjb25zdCBRU3RyaW5nJiBzY3JpcHRTb3VyY2Up
CiB9CiAKIC8qIQotICAgIENhbGxzIHRoZSBmdW5jdGlvbiB3aXRoIHRoZSBnaXZlbiBcYSBuYW1l
IGFuZCBcYSBhcmd1bWVudHMuCi0KLSAgICBUaGUgdW5kZXJseWluZyBET00gZWxlbWVudCB0aGF0
IFFXZWJFbGVtZW50IHdyYXBzIG1heSBoYXZlIGRlZGljYXRlZAotICAgIGZ1bmN0aW9ucywgZGVw
ZW5kaW5nIG9uIGl0cyB0eXBlLiBGb3IgZXhhbXBsZSwgYSBmb3JtIGVsZW1lbnQgY2FuIGhhdmUg
dGhlCi0gICAgXGMgc3VibWl0IGZ1bmN0aW9uLCB0aGF0IHdvdWxkIHN1Ym1pdCB0aGUgZm9ybSB0
byB0aGUgZGVzdGluYXRpb24gc3BlY2lmaWVkCi0gICAgaW4gdGhlIEhUTUwuCi0KLSAgICBcc2Eg
ZnVuY3Rpb25zKCkKLSovCi1RVmFyaWFudCBRV2ViRWxlbWVudDo6Y2FsbEZ1bmN0aW9uKGNvbnN0
IFFTdHJpbmcgJm5hbWUsIGNvbnN0IFFWYXJpYW50TGlzdCAmYXJndW1lbnRzKQotewotICAgIFNj
cmlwdFN0YXRlKiBzdGF0ZSA9IDA7Ci0gICAgU2NyaXB0T2JqZWN0IHRoaXNPYmplY3Q7Ci0gICAg
U2NyaXB0Q29udHJvbGxlciogc2NyaXB0Q29udHJvbGxlciA9IDA7Ci0KLSAgICBpZiAoIXNldHVw
U2NyaXB0T2JqZWN0KG1fZWxlbWVudCwgdGhpc09iamVjdCwgc3RhdGUsIHNjcmlwdENvbnRyb2xs
ZXIpKQotICAgICAgICByZXR1cm4gUVZhcmlhbnQoKTsKLQotICAgIFNjcmlwdEZ1bmN0aW9uQ2Fs
bCBmdW5jdGlvbkNhbGwoc3RhdGUsIHRoaXNPYmplY3QsIG5hbWUpOwotCi0gICAgZm9yIChRVmFy
aWFudExpc3Q6OkNvbnN0SXRlcmF0b3IgaXQgPSBhcmd1bWVudHMuY29uc3RCZWdpbigpLCBlbmQg
PSBhcmd1bWVudHMuY29uc3RFbmQoKTsKLSAgICAgICAgIGl0ICE9IGVuZDsgKytpdCkKLSAgICAg
ICAgZnVuY3Rpb25DYWxsLmFwcGVuZEFyZ3VtZW50KEpTQzo6QmluZGluZ3M6OmNvbnZlcnRRVmFy
aWFudFRvVmFsdWUoc3RhdGUsIHNjcmlwdENvbnRyb2xsZXItPmJpbmRpbmdSb290T2JqZWN0KCks
ICppdCkpOwotCi0gICAgYm9vbCBoYWRFeGNlcHRpb24gPSBmYWxzZTsKLSAgICBTY3JpcHRWYWx1
ZSByZXN1bHQgPSBmdW5jdGlvbkNhbGwuY2FsbChoYWRFeGNlcHRpb24pOwotICAgIGlmIChoYWRF
eGNlcHRpb24pCi0gICAgICAgIHJldHVybiBRVmFyaWFudCgpOwotCi0gICAgaW50IGRpc3RhbmNl
ID0gMDsKLSAgICByZXR1cm4gSlNDOjpCaW5kaW5nczo6Y29udmVydFZhbHVlVG9RVmFyaWFudChz
dGF0ZSwgcmVzdWx0LmpzVmFsdWUoKSwgUU1ldGFUeXBlOjpWb2lkLCAmZGlzdGFuY2UpOwotfQot
Ci0vKiEKLSAgICBSZXR1cm5zIGEgbGlzdCBvZiBmdW5jdGlvbiBuYW1lcyB0aGlzIGVsZW1lbnQg
c3VwcG9ydHMuCi0KLSAgICBUaGUgZnVuY3Rpb24gbmFtZXMgcmV0dXJuZWQgYXJlIHRoZSBzYW1l
IGZ1bmN0aW9ucyBjYWxsYWJsZSBmcm9tIHRoZSBET00KLSAgICBlbGVtZW50J3MgSmF2YVNjcmlw
dCBiaW5kaW5nLgotCi0gICAgXHNhIGNhbGxGdW5jdGlvbigpCi0qLwotUVN0cmluZ0xpc3QgUVdl
YkVsZW1lbnQ6OmZ1bmN0aW9ucygpIGNvbnN0Ci17Ci0gICAgU2NyaXB0U3RhdGUqIHN0YXRlID0g
MDsKLSAgICBTY3JpcHRPYmplY3QgdGhpc09iamVjdDsKLSAgICBTY3JpcHRDb250cm9sbGVyKiBz
Y3JpcHRDb250cm9sbGVyID0gMDsKLQotICAgIGlmICghc2V0dXBTY3JpcHRPYmplY3QobV9lbGVt
ZW50LCB0aGlzT2JqZWN0LCBzdGF0ZSwgc2NyaXB0Q29udHJvbGxlcikpCi0gICAgICAgIHJldHVy
biBRU3RyaW5nTGlzdCgpOwotCi0gICAgSlNDOjpKU09iamVjdCogb2JqZWN0ID0gdGhpc09iamVj
dC5qc09iamVjdCgpOwotICAgIGlmICghb2JqZWN0KQotICAgICAgICByZXR1cm4gUVN0cmluZ0xp
c3QoKTsKLQotICAgIFFTdHJpbmdMaXN0IG5hbWVzOwotCi0gICAgLy8gRW51bWVyYXRlIHRoZSBj
b250ZW50cyBvZiB0aGUgb2JqZWN0Ci0gICAgSlNDOjpQcm9wZXJ0eU5hbWVBcnJheSBwcm9wZXJ0
aWVzKHN0YXRlKTsKLSAgICBvYmplY3QtPmdldFByb3BlcnR5TmFtZXMoc3RhdGUsIHByb3BlcnRp
ZXMpOwotICAgIGZvciAoSlNDOjpQcm9wZXJ0eU5hbWVBcnJheTo6Y29uc3RfaXRlcmF0b3IgaXQg
PSBwcm9wZXJ0aWVzLmJlZ2luKCk7Ci0gICAgICAgICBpdCAhPSBwcm9wZXJ0aWVzLmVuZCgpOyAr
K2l0KSB7Ci0KLSAgICAgICAgSlNDOjpKU1ZhbHVlIHByb3BlcnR5ID0gb2JqZWN0LT5nZXQoc3Rh
dGUsICppdCk7Ci0gICAgICAgIGlmICghcHJvcGVydHkpCi0gICAgICAgICAgICBjb250aW51ZTsK
LQotICAgICAgICBKU0M6OkpTT2JqZWN0KiBmdW5jdGlvbiA9IHByb3BlcnR5LnRvT2JqZWN0KHN0
YXRlKTsKLSAgICAgICAgaWYgKCFmdW5jdGlvbikKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0g
ICAgICAgIEpTQzo6Q2FsbERhdGEgY2FsbERhdGE7Ci0gICAgICAgIEpTQzo6Q2FsbFR5cGUgY2Fs
bFR5cGUgPSBmdW5jdGlvbi0+Z2V0Q2FsbERhdGEoY2FsbERhdGEpOwotICAgICAgICBpZiAoY2Fs
bFR5cGUgPT0gSlNDOjpDYWxsVHlwZU5vbmUpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAg
ICAgICBKU0M6OlVTdHJpbmcgdXN0cmluZyA9ICgqaXQpLnVzdHJpbmcoKTsKLSAgICAgICAgbmFt
ZXMgPDwgUVN0cmluZzo6ZnJvbVV0ZjE2KChjb25zdCB1c2hvcnQqKXVzdHJpbmcucmVwKCktPmRh
dGEoKSwgdXN0cmluZy5zaXplKCkpOwotICAgIH0KLQotICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0
aW9uKCkpCi0gICAgICAgIHN0YXRlLT5jbGVhckV4Y2VwdGlvbigpOwotCi0gICAgcmV0dXJuIG5h
bWVzOwotfQotCi0vKiEKLSAgICBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgZWxlbWVudCdzIFxh
IG5hbWUgcHJvcGVydHkuIElmIG5vIHN1Y2ggcHJvcGVydHkKLSAgICBleGlzdHMsIGFuIGludmFs
aWQgUVZhcmlhbnQgaXMgcmV0dXJuZWQuCi0KLSAgICBUaGUgcmV0dXJuIHZhbHVlJ3MgcHJvcGVy
dHkgaGFzIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSBjb3JyZXNwb25kaW5nCi0gICAgcHJvcGVydHkg
aW4gdGhlIGVsZW1lbnQncyBKYXZhU2NyaXB0IGJpbmRpbmcgd2l0aCB0aGUgc2FtZSBuYW1lLgot
Ci0gICAgSW5mb3JtYXRpb24gYWJvdXQgYWxsIGF2YWlsYWJsZSBwcm9wZXJ0aWVzIGlzIHByb3Zp
ZGVkIHRocm91Z2gKLSAgICBzY3JpcHRQcm9wZXJ0aWVzKCkuCi0KLSAgICBcc2Egc2V0U2NyaXB0
YWJsZVByb3BlcnR5KCksIHNjcmlwdGFibGVQcm9wZXJ0aWVzKCkKLSovCi1RVmFyaWFudCBRV2Vi
RWxlbWVudDo6c2NyaXB0YWJsZVByb3BlcnR5KGNvbnN0IFFTdHJpbmcgJm5hbWUpIGNvbnN0Ci17
Ci0gICAgU2NyaXB0U3RhdGUqIHN0YXRlID0gMDsKLSAgICBTY3JpcHRPYmplY3QgdGhpc09iamVj
dDsKLSAgICBTY3JpcHRDb250cm9sbGVyICpzY3JpcHRDb250cm9sbGVyID0gMDsKLQotICAgIGlm
ICghc2V0dXBTY3JpcHRPYmplY3QobV9lbGVtZW50LCB0aGlzT2JqZWN0LCBzdGF0ZSwgc2NyaXB0
Q29udHJvbGxlcikpCi0gICAgICAgIHJldHVybiBRVmFyaWFudCgpOwotCi0gICAgU3RyaW5nIHdj
TmFtZShuYW1lKTsKLSAgICBKU0M6OkpTVmFsdWUgcHJvcGVydHkgPSB0aGlzT2JqZWN0LmpzT2Jq
ZWN0KCktPmdldChzdGF0ZSwgSlNDOjpJZGVudGlmaWVyKHN0YXRlLCB3Y05hbWUpKTsKLQotICAg
IC8vICMjIwotICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCi0gICAgICAgIHN0YXRlLT5j
bGVhckV4Y2VwdGlvbigpOwotCi0gICAgaW50IGRpc3RhbmNlID0gMDsKLSAgICByZXR1cm4gSlND
OjpCaW5kaW5nczo6Y29udmVydFZhbHVlVG9RVmFyaWFudChzdGF0ZSwgcHJvcGVydHksIFFNZXRh
VHlwZTo6Vm9pZCwgJmRpc3RhbmNlKTsKLX0KLQotLyohCi0gICAgU2V0cyB0aGUgdmFsdWUgb2Yg
dGhlIGVsZW1lbnQncyBcYSBuYW1lIHByb3BlcnR5IHRvIFxhIHZhbHVlLgotCi0gICAgSW5mb3Jt
YXRpb24gYWJvdXQgYWxsIGF2YWlsYWJsZSBwcm9wZXJ0aWVzIGlzIHByb3ZpZGVkIHRocm91Z2gK
LSAgICBzY3JpcHRQcm9wZXJ0aWVzKCkuCi0KLSAgICBTZXR0aW5nIHRoZSBwcm9wZXJ0eSB3aWxs
IGFmZmVjdCB0aGUgY29ycmVzcG9uZGluZyBwcm9wZXJ0eSBpbiB0aGUKLSAgICBlbGVtZW50J3Mg
SmF2YVNjcmlwdCBiaW5kaW5nIHdpdGggdGhlIHNhbWUgbmFtZS4KLQotICAgIFxzYSBzY3JpcHRh
YmxlUHJvcGVydHkoKSwgc2NyaXB0YWJsZVByb3BlcnRpZXMoKQotKi8KLXZvaWQgUVdlYkVsZW1l
bnQ6OnNldFNjcmlwdGFibGVQcm9wZXJ0eShjb25zdCBRU3RyaW5nICZuYW1lLCBjb25zdCBRVmFy
aWFudCAmdmFsdWUpCi17Ci0gICAgU2NyaXB0U3RhdGUqIHN0YXRlID0gMDsKLSAgICBTY3JpcHRP
YmplY3QgdGhpc09iamVjdDsKLSAgICBTY3JpcHRDb250cm9sbGVyKiBzY3JpcHRDb250cm9sbGVy
ID0gMDsKLQotICAgIGlmICghc2V0dXBTY3JpcHRPYmplY3QobV9lbGVtZW50LCB0aGlzT2JqZWN0
LCBzdGF0ZSwgc2NyaXB0Q29udHJvbGxlcikpCi0gICAgICAgIHJldHVybjsKLQotICAgIEpTQzo6
SlNWYWx1ZSBqc1ZhbHVlID0gSlNDOjpCaW5kaW5nczo6Y29udmVydFFWYXJpYW50VG9WYWx1ZShz
dGF0ZSwgc2NyaXB0Q29udHJvbGxlci0+YmluZGluZ1Jvb3RPYmplY3QoKSwgdmFsdWUpOwotICAg
IGlmICghanNWYWx1ZSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgU3RyaW5nIHdjTmFtZShuYW1l
KTsKLSAgICBKU0M6OlB1dFByb3BlcnR5U2xvdCBzbG90OwotICAgIHRoaXNPYmplY3QuanNPYmpl
Y3QoKS0+cHV0KHN0YXRlLCBKU0M6OklkZW50aWZpZXIoc3RhdGUsIHdjTmFtZSksIGpzVmFsdWUs
IHNsb3QpOwotICAgIGlmIChzdGF0ZS0+aGFkRXhjZXB0aW9uKCkpCi0gICAgICAgIHN0YXRlLT5j
bGVhckV4Y2VwdGlvbigpOwotfQotCi0vKiEKLSAgICBSZXR1cm5zIGEgbGlzdCBvZiBwcm9wZXJ0
eSBuYW1lcyB0aGlzIGVsZW1lbnQgc3VwcG9ydHMuCi0KLSAgICBUaGUgZnVuY3Rpb24gbmFtZXMg
cmV0dXJuZWQgYXJlIHRoZSBzYW1lIHByb3BlcnRpZXMgdGhhdCBhcmUgYWNjZXNzaWJsZQotICAg
IGZyb20gdGhlIERPTSBlbGVtZW50J3MgSmF2YVNjcmlwdCBiaW5kaW5nLgotCi0gICAgXHNhIHNl
dFNjcmlwdGFibGVQcm9wZXJ0eSgpLCBzY3JpcHRhYmxlUHJvcGVydHkoKQotKi8KLVFTdHJpbmdM
aXN0IFFXZWJFbGVtZW50OjpzY3JpcHRhYmxlUHJvcGVydGllcygpIGNvbnN0Ci17Ci0gICAgaWYg
KCFtX2VsZW1lbnQpCi0gICAgICAgIHJldHVybiBRU3RyaW5nTGlzdCgpOwotCi0gICAgRG9jdW1l
bnQqIGRvY3VtZW50ID0gbV9lbGVtZW50LT5kb2N1bWVudCgpOwotICAgIGlmICghZG9jdW1lbnQp
Ci0gICAgICAgIHJldHVybiBRU3RyaW5nTGlzdCgpOwotCi0gICAgRnJhbWUqIGZyYW1lID0gZG9j
dW1lbnQtPmZyYW1lKCk7Ci0gICAgaWYgKCFmcmFtZSkKLSAgICAgICAgcmV0dXJuIFFTdHJpbmdM
aXN0KCk7Ci0KLSAgICBTY3JpcHRDb250cm9sbGVyKiBzY3JpcHQgPSBmcmFtZS0+c2NyaXB0KCk7
Ci0gICAgSlNDOjpFeGVjU3RhdGUqIGV4ZWMgPSBzY3JpcHQtPmdsb2JhbE9iamVjdCgpLT5nbG9i
YWxFeGVjKCk7Ci0KLSAgICBKU0M6OkpTVmFsdWUgdGhpc1ZhbHVlID0gdG9KUyhleGVjLCBtX2Vs
ZW1lbnQpOwotICAgIGlmICghdGhpc1ZhbHVlKQotICAgICAgICByZXR1cm4gUVN0cmluZ0xpc3Qo
KTsKLQotICAgIEpTQzo6SlNPYmplY3QqIG9iamVjdCA9IHRoaXNWYWx1ZS50b09iamVjdChleGVj
KTsKLSAgICBpZiAoIW9iamVjdCkKLSAgICAgICAgcmV0dXJuIFFTdHJpbmdMaXN0KCk7Ci0KLSAg
ICBRU3RyaW5nTGlzdCBuYW1lczsKLQotICAgIC8vIEVudW1lcmF0ZSB0aGUgY29udGVudHMgb2Yg
dGhlIG9iamVjdAotICAgIEpTQzo6UHJvcGVydHlOYW1lQXJyYXkgcHJvcGVydGllcyhleGVjKTsK
LSAgICBvYmplY3QtPmdldFByb3BlcnR5TmFtZXMoZXhlYywgcHJvcGVydGllcyk7Ci0gICAgZm9y
IChKU0M6OlByb3BlcnR5TmFtZUFycmF5Ojpjb25zdF9pdGVyYXRvciBpdCA9IHByb3BlcnRpZXMu
YmVnaW4oKTsKLSAgICAgICAgIGl0ICE9IHByb3BlcnRpZXMuZW5kKCk7ICsraXQpIHsKLQotICAg
ICAgICBKU0M6OkpTVmFsdWUgcHJvcGVydHkgPSBvYmplY3QtPmdldChleGVjLCAqaXQpOwotICAg
ICAgICBpZiAoIXByb3BlcnR5KQotICAgICAgICAgICAgY29udGludWU7Ci0KLSAgICAgICAgSlND
OjpKU09iamVjdCogZnVuY3Rpb24gPSBwcm9wZXJ0eS50b09iamVjdChleGVjKTsKLSAgICAgICAg
aWYgKCFmdW5jdGlvbikKLSAgICAgICAgICAgIGNvbnRpbnVlOwotCi0gICAgICAgIEpTQzo6Q2Fs
bERhdGEgY2FsbERhdGE7Ci0gICAgICAgIEpTQzo6Q2FsbFR5cGUgY2FsbFR5cGUgPSBmdW5jdGlv
bi0+Z2V0Q2FsbERhdGEoY2FsbERhdGEpOwotICAgICAgICBpZiAoY2FsbFR5cGUgIT0gSlNDOjpD
YWxsVHlwZU5vbmUpCi0gICAgICAgICAgICBjb250aW51ZTsKLQotICAgICAgICBKU0M6OlVTdHJp
bmcgdXN0cmluZyA9ICgqaXQpLnVzdHJpbmcoKTsKLSAgICAgICAgbmFtZXMgPDwgUVN0cmluZzo6
ZnJvbVV0ZjE2KChjb25zdCB1c2hvcnQqKXVzdHJpbmcucmVwKCktPmRhdGEoKSwgdXN0cmluZy5z
aXplKCkpOwotICAgIH0KLQotICAgIGlmIChleGVjLT5oYWRFeGNlcHRpb24oKSkKLSAgICAgICAg
ZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsKLQotICAgIHJldHVybiBuYW1lczsKLX0KLQotLyohCiAg
ICAgXGVudW0gUVdlYkVsZW1lbnQ6OlJlc29sdmVSdWxlCiAgICAgXHNpbmNlIDQuNgogCmRpZmYg
LS1naXQgYS9XZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmggYi9XZWJLaXQvcXQvQXBpL3F3ZWJl
bGVtZW50LmgKaW5kZXggNWY0ODcwYy4uYjllOGZjMyAxMDA2NDQKLS0tIGEvV2ViS2l0L3F0L0Fw
aS9xd2ViZWxlbWVudC5oCisrKyBiL1dlYktpdC9xdC9BcGkvcXdlYmVsZW1lbnQuaApAQCAtMTIy
LDEzICsxMjIsNiBAQCBwdWJsaWM6CiAKICAgICBRVmFyaWFudCBldmFsdWF0ZVNjcmlwdChjb25z
dCBRU3RyaW5nJiBzY3JpcHRTb3VyY2UpOwogCi0gICAgUVZhcmlhbnQgY2FsbEZ1bmN0aW9uKGNv
bnN0IFFTdHJpbmcmIGZ1bmN0aW9uTmFtZSwgY29uc3QgUVZhcmlhbnRMaXN0JiBhcmd1bWVudHMg
PSBRVmFyaWFudExpc3QoKSk7Ci0gICAgUVN0cmluZ0xpc3QgZnVuY3Rpb25zKCkgY29uc3Q7Ci0K
LSAgICBRVmFyaWFudCBzY3JpcHRhYmxlUHJvcGVydHkoY29uc3QgUVN0cmluZyYgbmFtZSkgY29u
c3Q7Ci0gICAgdm9pZCBzZXRTY3JpcHRhYmxlUHJvcGVydHkoY29uc3QgUVN0cmluZyYgbmFtZSwg
Y29uc3QgUVZhcmlhbnQmIHZhbHVlKTsKLSAgICBRU3RyaW5nTGlzdCBzY3JpcHRhYmxlUHJvcGVy
dGllcygpIGNvbnN0OwotCiAgICAgZW51bSBSZXNvbHZlUnVsZSB7IElnbm9yZUNhc2NhZGluZ1N0
eWxlcywgUmVzcGVjdENhc2NhZGluZ1N0eWxlcyB9OwogICAgIFFTdHJpbmcgc3R5bGVQcm9wZXJ0
eShjb25zdCBRU3RyaW5nJiBuYW1lLCBSZXNvbHZlUnVsZSA9IElnbm9yZUNhc2NhZGluZ1N0eWxl
cykgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9XZWJLaXQvcXQv
Q2hhbmdlTG9nCmluZGV4IGQ3MTI2ZjkuLmY2MTNhMDggMTAwNjQ0Ci0tLSBhL1dlYktpdC9xdC9D
aGFuZ2VMb2cKKysrIGIvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDA5
LTA5LTI0ICBKb2NlbHluIFR1cmNvdHRlICA8am9jZWx5bi50dXJjb3R0ZUBub2tpYS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBVcGRh
dGUgUVdlYkVsZW1lbnQgQVBJIHRvIHJlbW92ZSBzY3JpcHQgcmVsYXRlZCBtZXRob2RzLgorICAg
ICAgICBRV2ViRWxlbWVudDo6ZXZhbHVhdGVTY3JpcHQgaXMgdGhlIG9ubHkgb25lIGtlcHQsIHRo
ZXNlIGFyZQorICAgICAgICByZW1vdmVkIHRvIHBvc3Rwb25lIG1vc3Qgb2YgdGhlIFF0V2ViS2l0
PC0+SmF2YVNjcmlwdCBBUEkgZGVzaWduCisgICAgICAgIGFmdGVyIDQuNi4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NzA4CisKKyAgICAgICAgKiBB
cGkvcXdlYmVsZW1lbnQuY3BwOgorICAgICAgICAqIEFwaS9xd2ViZWxlbWVudC5oOgorICAgICAg
ICBNZXRob2RzIHJlbW92ZWQ6CisgICAgICAgIC0gUVdlYkVsZW1lbnQ6OmNhbGxGdW5jdGlvbgor
ICAgICAgICAtIFFXZWJFbGVtZW50OjpmdW5jdGlvbnMKKyAgICAgICAgLSBRV2ViRWxlbWVudDo6
c2NyaXB0YWJsZVByb3BlcnR5CisgICAgICAgIC0gUVdlYkVsZW1lbnQ6OnNldFNjcmlwdGFibGVQ
cm9wZXJ0eQorICAgICAgICAtIFFXZWJFbGVtZW50OjpzY3JpcHRhYmxlUHJvcGVydGllcworICAg
ICAgICAqIHRlc3RzL3F3ZWJlbGVtZW50L3RzdF9xd2ViZWxlbWVudC5jcHA6CisgICAgICAgICh0
c3RfUVdlYkVsZW1lbnQ6OmV2YWx1YXRlU2NyaXB0KToKKwogMjAwOS0wOS0yMSAgS2VubmV0aCBS
b2hkZSBDaHJpc3RpYW5zZW4gIDxrZW5uZXRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgU2ltb24gSGF1c21hbm4uCmRpZmYgLS1naXQgYS9XZWJLaXQvcXQvdGVzdHMvcXdlYmVs
ZW1lbnQvdHN0X3F3ZWJlbGVtZW50LmNwcCBiL1dlYktpdC9xdC90ZXN0cy9xd2ViZWxlbWVudC90
c3RfcXdlYmVsZW1lbnQuY3BwCmluZGV4IDA4MTlhM2EuLjg1OTYyNWYgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9xdC90ZXN0cy9xd2ViZWxlbWVudC90c3RfcXdlYmVsZW1lbnQuY3BwCisrKyBiL1dlYktp
dC9xdC90ZXN0cy9xd2ViZWxlbWVudC90c3RfcXdlYmVsZW1lbnQuY3BwCkBAIC03MiwxNCArNzIs
MTAgQEAgcHJpdmF0ZSBzbG90czoKICAgICB2b2lkIG5hbWVzcGFjZVVSSSgpOwogICAgIHZvaWQg
Zm9yZWFjaE1hbmlwdWxhdGlvbigpOwogICAgIHZvaWQgZXZhbHVhdGVTY3JpcHQoKTsKLSAgICB2
b2lkIGNhbGxGdW5jdGlvbigpOwotICAgIHZvaWQgY2FsbEZ1bmN0aW9uU3VibWl0Rm9ybSgpOwot
ICAgIHZvaWQgZnVuY3Rpb25OYW1lcygpOwogICAgIHZvaWQgZG9jdW1lbnRFbGVtZW50KCk7CiAg
ICAgdm9pZCBmcmFtZSgpOwogICAgIHZvaWQgc3R5bGUoKTsKICAgICB2b2lkIGNvbXB1dGVkU3R5
bGUoKTsKLSAgICB2b2lkIHByb3BlcnRpZXMoKTsKICAgICB2b2lkIGFwcGVuZEFuZFByZXBlbmQo
KTsKICAgICB2b2lkIGluc2VydEJlZm9yZUFuZEFmdGVyKCk7CiAgICAgdm9pZCByZW1vdmUoKTsK
QEAgLTI5Myw3ICsyODksNiBAQCB2b2lkIHRzdF9RV2ViRWxlbWVudDo6ZXZhbHVhdGVTY3JpcHQo
KQogICAgIFFWRVJJRlkocmVzdWx0LnR5cGUoKSA9PSBRVmFyaWFudDo6U3RyaW5nKTsKICAgICBR
Q09NUEFSRShyZXN1bHQudG9TdHJpbmcoKSwgUUxhdGluMVN0cmluZygiUCIpKTsKIAotICAgIFFW
RVJJRlkocGFyYS5mdW5jdGlvbnMoKS5jb250YWlucygiaGFzQXR0cmlidXRlcyIpKTsKICAgICBy
ZXN1bHQgPSBwYXJhLmV2YWx1YXRlU2NyaXB0KCJ0aGlzLmhhc0F0dHJpYnV0ZXMoKSIpOwogICAg
IFFWRVJJRlkocmVzdWx0LmlzVmFsaWQoKSk7CiAgICAgUVZFUklGWShyZXN1bHQudHlwZSgpID09
IFFWYXJpYW50OjpCb29sKTsKQEAgLTMwOCw0MyArMzAzLDYgQEAgdm9pZCB0c3RfUVdlYkVsZW1l
bnQ6OmV2YWx1YXRlU2NyaXB0KCkKICAgICBRVkVSSUZZKHJlc3VsdC50b0Jvb2woKSk7CiB9CiAK
LXZvaWQgdHN0X1FXZWJFbGVtZW50OjpjYWxsRnVuY3Rpb24oKQotewotICAgIG1fbWFpbkZyYW1l
LT5zZXRIdG1sKCI8Ym9keT48cD50ZXN0Iik7Ci0gICAgUVdlYkVsZW1lbnQgYm9keSA9IG1fbWFp
bkZyYW1lLT5kb2N1bWVudEVsZW1lbnQoKTsKLSAgICBRVkVSSUZZKGJvZHkuZnVuY3Rpb25zKCku
Y29udGFpbnMoImhhc0NoaWxkTm9kZXMiKSk7Ci0gICAgUVZhcmlhbnQgcmVzdWx0ID0gYm9keS5j
YWxsRnVuY3Rpb24oImhhc0NoaWxkTm9kZXMiKTsKLSAgICBRVkVSSUZZKHJlc3VsdC5pc1ZhbGlk
KCkpOwotICAgIFFWRVJJRlkocmVzdWx0LnR5cGUoKSA9PSBRVmFyaWFudDo6Qm9vbCk7Ci0gICAg
UVZFUklGWShyZXN1bHQudG9Cb29sKCkpOwotCi0gICAgYm9keS5jYWxsRnVuY3Rpb24oInNldEF0
dHJpYnV0ZSIsIFFWYXJpYW50TGlzdCgpIDw8ICJmb28iIDw8ICJiYXIiKTsKLSAgICBRQ09NUEFS
RShib2R5LmF0dHJpYnV0ZSgiZm9vIiksIFFTdHJpbmcoImJhciIpKTsKLX0KLQotdm9pZCB0c3Rf
UVdlYkVsZW1lbnQ6OmNhbGxGdW5jdGlvblN1Ym1pdEZvcm0oKQotewotICAgIG1fbWFpbkZyYW1l
LT5zZXRIdG1sKFFTdHJpbmcoIjxodG1sPjxib2R5Pjxmb3JtIG5hbWU9J3RzdGZvcm0nIGFjdGlv
bj0nZGF0YTp0ZXh0L2h0bWwsZm9vJ21ldGhvZD0nZ2V0Jz4iCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAiPGlucHV0IHR5cGU9J3RleHQnPjxpbnB1dCB0eXBlPSdzdWJtaXQnPjwv
Zm9ybT48L2JvZHk+PC9odG1sPiIpLCBRVXJsKCkpOwotCi0gICAgUVdlYkVsZW1lbnQgZm9ybSA9
IG1fbWFpbkZyYW1lLT5kb2N1bWVudEVsZW1lbnQoKS5maW5kQWxsKCJmb3JtIikuYXQoMCk7Ci0g
ICAgUVZFUklGWShmb3JtLmZ1bmN0aW9ucygpLmNvbnRhaW5zKCJzdWJtaXQiKSk7Ci0gICAgUVZF
UklGWSghZm9ybS5pc051bGwoKSk7Ci0gICAgZm9ybS5jYWxsRnVuY3Rpb24oInN1Ym1pdCIpOwot
Ci0gICAgd2FpdEZvclNpZ25hbChtX3BhZ2UsIFNJR05BTChsb2FkRmluaXNoZWQoYm9vbCkpKTsK
LSAgICBRQ09NUEFSRShtX21haW5GcmFtZS0+dXJsKCkudG9TdHJpbmcoKSwgUVN0cmluZygiZGF0
YTp0ZXh0L2h0bWwsZm9vPyIpKTsKLX0KLQotdm9pZCB0c3RfUVdlYkVsZW1lbnQ6OmZ1bmN0aW9u
TmFtZXMoKQotewotICAgIG1fbWFpbkZyYW1lLT5zZXRIdG1sKCI8Ym9keT48cD5UZXN0Iik7Ci0K
LSAgICBRV2ViRWxlbWVudCBib2R5ID0gbV9tYWluRnJhbWUtPmRvY3VtZW50RWxlbWVudCgpOwot
Ci0gICAgUVZFUklGWShib2R5LmZ1bmN0aW9ucygpLmNvbnRhaW5zKCJzZXRBdHRyaWJ1dGUiKSk7
Ci19Ci0KIHZvaWQgdHN0X1FXZWJFbGVtZW50Ojpkb2N1bWVudEVsZW1lbnQoKQogewogICAgIG1f
bWFpbkZyYW1lLT5zZXRIdG1sKCI8Ym9keT48cD5UZXN0Iik7CkBAIC01MzYsMzcgKzQ5NCw2IEBA
IHZvaWQgdHN0X1FXZWJFbGVtZW50Ojpjb21wdXRlZFN0eWxlKCkKICAgICBRQ09NUEFSRShwLnN0
eWxlUHJvcGVydHkoImNvbG9yIiksIFFMYXRpbjFTdHJpbmcoInJlZCIpKTsKIH0KIAotdm9pZCB0
c3RfUVdlYkVsZW1lbnQ6OnByb3BlcnRpZXMoKQotewotICAgIG1fbWFpbkZyYW1lLT5zZXRIdG1s
KCI8Ym9keT48Zm9ybT48aW5wdXQgdHlwZT1jaGVja2JveCBpZD1vdXJjaGVja2JveCBjaGVja2Vk
PXRydWU+Iik7Ci0KLSAgICBRV2ViRWxlbWVudCBjaGVja0JveCA9IG1fbWFpbkZyYW1lLT5maW5k
Rmlyc3RFbGVtZW50KCIjb3VyY2hlY2tib3giKTsKLSAgICBRVkVSSUZZKCFjaGVja0JveC5pc051
bGwoKSk7Ci0KLSAgICBRVkVSSUZZKGNoZWNrQm94LnNjcmlwdGFibGVQcm9wZXJ0aWVzKCkuY29u
dGFpbnMoImNoZWNrZWQiKSk7Ci0KLSAgICBRQ09NUEFSRShjaGVja0JveC5zY3JpcHRhYmxlUHJv
cGVydHkoImNoZWNrZWQiKSwgUVZhcmlhbnQodHJ1ZSkpOwotICAgIGNoZWNrQm94LnNldFNjcmlw
dGFibGVQcm9wZXJ0eSgiY2hlY2tlZCIsIGZhbHNlKTsKLSAgICBRQ09NUEFSRShjaGVja0JveC5z
Y3JpcHRhYmxlUHJvcGVydHkoImNoZWNrZWQiKSwgUVZhcmlhbnQoZmFsc2UpKTsKLQotICAgIFFW
RVJJRlkoIWNoZWNrQm94LnNjcmlwdGFibGVQcm9wZXJ0aWVzKCkuY29udGFpbnMoIm5vbl9leGlz
dGFudCIpKTsKLSAgICBRQ09NUEFSRShjaGVja0JveC5zY3JpcHRhYmxlUHJvcGVydHkoIm5vbl9l
eGlzdGFudCIpLCBRVmFyaWFudCgpKTsKLQotICAgIGNoZWNrQm94LnNldFNjcmlwdGFibGVQcm9w
ZXJ0eSgibm9uX2V4aXN0YW50IiwgInRlc3QiKTsKLQotICAgIFFDT01QQVJFKGNoZWNrQm94LnNj
cmlwdGFibGVQcm9wZXJ0eSgibm9uX2V4aXN0YW50IiksIFFWYXJpYW50KCJ0ZXN0IikpOwotICAg
IFFWRVJJRlkoY2hlY2tCb3guc2NyaXB0YWJsZVByb3BlcnRpZXMoKS5jb250YWlucygibm9uX2V4
aXN0YW50IikpOwotCi0gICAgLy8gcmVtb3Zpbmcgc2NyaXB0YWJsZVByb3BlcnRpZXMgaXMgY3Vy
cmVudGx5IG5vdCBzdXBwb3J0ZWQuIFdlIHNob3VsZCBsb29rIGludG8gdGhpcwotICAgIC8vIGFu
ZCBjb25zaWRlciB0aGUgb3B0aW9uIG9mIGp1c3QgYWxsb3dpbmcgdGhyb3VnaCB0aGUgUXRTY3Jp
cHQgQVBJIG9ubHkuCi0jaWYgMAotICAgIGNoZWNrQm94LnNldFNjcmlwdGFibGVQcm9wZXJ0eSgi
bm9uX2V4aXN0YW50IiwgUVZhcmlhbnQoKSk7Ci0KLSAgICBRQ09NUEFSRShjaGVja0JveC5zY3Jp
cHRhYmxlUHJvcGVydHkoIm5vbl9leGlzdGFudCIpLCBRVmFyaWFudCgpKTsKLSAgICBRVkVSSUZZ
KCFjaGVja0JveC5zY3JpcHRhYmxlUHJvcGVydGllcygpLmNvbnRhaW5zKCJub25fZXhpc3RhbnQi
KSk7Ci0jZW5kaWYKLX0KLQogdm9pZCB0c3RfUVdlYkVsZW1lbnQ6OmFwcGVuZEFuZFByZXBlbmQo
KQogewogICAgIFFTdHJpbmcgaHRtbCA9ICI8Ym9keT4iCg==
</data>
<flag name="review"
          id="21235"
          type_id="1"
          status="+"
          setter="hausmann"
    />
          </attachment>
      

    </bug>

</bugzilla>