Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:47225 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 54161 invoked from network); 13 Mar 2010 15:43:37 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Mar 2010 15:43:37 -0000 Authentication-Results: pb1.pair.com header.from=mozo@mozo.jp; sender-id=permerror Authentication-Results: pb1.pair.com smtp.mail=mozo@mozo.jp; spf=permerror; sender-id=permerror Received-SPF: error (pb1.pair.com: domain mozo.jp from 209.85.212.42 cause and error) X-PHP-List-Original-Sender: mozo@mozo.jp X-Host-Fingerprint: 209.85.212.42 mail-vw0-f42.google.com Received: from [209.85.212.42] ([209.85.212.42:40860] helo=mail-vw0-f42.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 61/E5-15916-8A2BB9B4 for ; Sat, 13 Mar 2010 10:43:37 -0500 Received: by vws18 with SMTP id 18so227630vws.29 for ; Sat, 13 Mar 2010 07:43:34 -0800 (PST) MIME-Version: 1.0 Received: by 10.220.127.97 with SMTP id f33mr1917755vcs.167.1268495014472; Sat, 13 Mar 2010 07:43:34 -0800 (PST) In-Reply-To: References: <4B9926E8.4080202@lerdorf.com> <7f3ed2c31003120958w7bd41059o88869669c6f5b0d9@mail.gmail.com> <661d85d51003130107o7cf19012m7ce93f0147c7585a@mail.gmail.com> Date: Sun, 14 Mar 2010 00:43:14 +0900 Message-ID: To: Pierre Joye Cc: Chen Ze , Derick Rethans , Hannes Magnusson , Rasmus Lerdorf , PHP Developers Mailing List Content-Type: multipart/mixed; boundary=0016369c8deebcabec0481b0821b Subject: Re: [PHP-DEV] PHP 6 From: mozo@mozo.jp (Moriyoshi Koizumi) --0016369c8deebcabec0481b0821b Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable It looks like I stripped off too much. Attached is the right one. Moriyoshi On Sun, Mar 14, 2010 at 12:41 AM, Moriyoshi Koizumi wrote: > Surprisingly, It can be done quite easily with the current object > handler infrastructure. > > Moriyoshi > > On Sun, Mar 14, 2010 at 12:08 AM, Pierre Joye wrot= e: >> On Sat, Mar 13, 2010 at 3:13 PM, Moriyoshi Koizumi wrote: >> >>> I don't totally agree with what is being said here, but I guess we >>> don't have to make Unicode a first-class value. =A0Once operator >>> overloading is supported, Unicode strings can be represented as >>> objects, like Python does although =A0I didn't have a look at past >>> discussion on this topic. >> >> Operators overloading, while being a cool feature, should not be >> associated with Unicode&related features. Or we are going to do the >> exact same mistakes than before, way too many changes, features, work >> to even get a visible deadline for the next major release. >> >> Cheers, >> -- >> Pierre >> >> @pierrejoye | http://blog.thepimp.net | http://www.libgd.org >> > --0016369c8deebcabec0481b0821b Content-Type: text/plain; charset=US-ASCII; name="php-5.3-object-overloading-poc.patch.diff.txt" Content-Disposition: attachment; filename="php-5.3-object-overloading-poc.patch.diff.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g6ql5p4z1 ZGlmZiAtLWdpdCBhL1plbmQvemVuZC5oIGIvWmVuZC96ZW5kLmgKaW5kZXggMzhmNDYxYy4uMGZm Y2IxYSAxMDA2NDQKLS0tIGEvWmVuZC96ZW5kLmgKKysrIGIvWmVuZC96ZW5kLmgKQEAgLTQ0Miw2 ICs0NDIsNyBAQCBzdHJ1Y3QgX3plbmRfY2xhc3NfZW50cnkgewogCXVuaW9uIF96ZW5kX2Z1bmN0 aW9uICpfX2NhbGw7CiAJdW5pb24gX3plbmRfZnVuY3Rpb24gKl9fY2FsbHN0YXRpYzsKIAl1bmlv biBfemVuZF9mdW5jdGlvbiAqX190b3N0cmluZzsKKwl1bmlvbiBfemVuZF9mdW5jdGlvbiAqX19j b25jYXQ7CiAJdW5pb24gX3plbmRfZnVuY3Rpb24gKnNlcmlhbGl6ZV9mdW5jOwogCXVuaW9uIF96 ZW5kX2Z1bmN0aW9uICp1bnNlcmlhbGl6ZV9mdW5jOwogCmRpZmYgLS1naXQgYS9aZW5kL3plbmRf QVBJLmMgYi9aZW5kL3plbmRfQVBJLmMKaW5kZXggNTQzM2RjMS4uZTBkY2Q3MyAxMDA2NDQKLS0t IGEvWmVuZC96ZW5kX0FQSS5jCisrKyBiL1plbmQvemVuZF9BUEkuYwpAQCAtMTc5OSw3ICsxNzk5 LDcgQEAgWkVORF9BUEkgaW50IHplbmRfcmVnaXN0ZXJfZnVuY3Rpb25zKHplbmRfY2xhc3NfZW50 cnkgKnNjb3BlLCBjb25zdCB6ZW5kX2Z1bmN0aW8KIAlpbnQgY291bnQ9MCwgdW5sb2FkPTA7CiAJ SGFzaFRhYmxlICp0YXJnZXRfZnVuY3Rpb25fdGFibGUgPSBmdW5jdGlvbl90YWJsZTsKIAlpbnQg ZXJyb3JfdHlwZTsKLQl6ZW5kX2Z1bmN0aW9uICpjdG9yID0gTlVMTCwgKmR0b3IgPSBOVUxMLCAq Y2xvbmUgPSBOVUxMLCAqX19nZXQgPSBOVUxMLCAqX19zZXQgPSBOVUxMLCAqX191bnNldCA9IE5V TEwsICpfX2lzc2V0ID0gTlVMTCwgKl9fY2FsbCA9IE5VTEwsICpfX2NhbGxzdGF0aWMgPSBOVUxM LCAqX190b3N0cmluZyA9IE5VTEw7CisJemVuZF9mdW5jdGlvbiAqY3RvciA9IE5VTEwsICpkdG9y ID0gTlVMTCwgKmNsb25lID0gTlVMTCwgKl9fZ2V0ID0gTlVMTCwgKl9fc2V0ID0gTlVMTCwgKl9f dW5zZXQgPSBOVUxMLCAqX19pc3NldCA9IE5VTEwsICpfX2NhbGwgPSBOVUxMLCAqX19jYWxsc3Rh dGljID0gTlVMTCwgKl9fdG9zdHJpbmcgPSBOVUxMLCAqX19jb25jYXQgPSBOVUxMOwogCWNoYXIg Kmxvd2VyY2FzZV9uYW1lOwogCWludCBmbmFtZV9sZW47CiAJY2hhciAqbGNfY2xhc3NfbmFtZSA9 IE5VTEw7CkBAIC0xOTI5LDYgKzE5MjksOCBAQCBaRU5EX0FQSSBpbnQgemVuZF9yZWdpc3Rlcl9m dW5jdGlvbnMoemVuZF9jbGFzc19lbnRyeSAqc2NvcGUsIGNvbnN0IHplbmRfZnVuY3RpbwogCQkJ CV9fdW5zZXQgPSByZWdfZnVuY3Rpb247CiAJCQl9IGVsc2UgaWYgKChmbmFtZV9sZW4gPT0gc2l6 ZW9mKFpFTkRfSVNTRVRfRlVOQ19OQU1FKS0xKSAmJiAhbWVtY21wKGxvd2VyY2FzZV9uYW1lLCBa RU5EX0lTU0VUX0ZVTkNfTkFNRSwgc2l6ZW9mKFpFTkRfSVNTRVRfRlVOQ19OQU1FKSkpIHsKIAkJ CQlfX2lzc2V0ID0gcmVnX2Z1bmN0aW9uOworCQkJfSBlbHNlIGlmICgoZm5hbWVfbGVuID09IHNp emVvZihaRU5EX0NPTkNBVF9GVU5DX05BTUUpLTEpICYmICFtZW1jbXAobG93ZXJjYXNlX25hbWUs IFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSwgc2l6ZW9mKFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSkpKSB7 CisJCQkJX19jb25jYXQgPSByZWdfZnVuY3Rpb247CiAJCQl9IGVsc2UgewogCQkJCXJlZ19mdW5j dGlvbiA9IE5VTEw7CiAJCQl9CkBAIC0xOTY3LDYgKzE5NjksNyBAQCBaRU5EX0FQSSBpbnQgemVu ZF9yZWdpc3Rlcl9mdW5jdGlvbnMoemVuZF9jbGFzc19lbnRyeSAqc2NvcGUsIGNvbnN0IHplbmRf ZnVuY3RpbwogCQlzY29wZS0+X19zZXQgPSBfX3NldDsKIAkJc2NvcGUtPl9fdW5zZXQgPSBfX3Vu c2V0OwogCQlzY29wZS0+X19pc3NldCA9IF9faXNzZXQ7CisJCXNjb3BlLT5fX2NvbmNhdCA9IF9f Y29uY2F0OwogCQlpZiAoY3RvcikgewogCQkJY3Rvci0+Y29tbW9uLmZuX2ZsYWdzIHw9IFpFTkRf QUNDX0NUT1I7CiAJCQlpZiAoY3Rvci0+Y29tbW9uLmZuX2ZsYWdzICYgWkVORF9BQ0NfU1RBVElD KSB7CkBAIC0yMDMwLDYgKzIwMzMsMTIgQEAgWkVORF9BUEkgaW50IHplbmRfcmVnaXN0ZXJfZnVu Y3Rpb25zKHplbmRfY2xhc3NfZW50cnkgKnNjb3BlLCBjb25zdCB6ZW5kX2Z1bmN0aW8KIAkJCX0K IAkJCV9faXNzZXQtPmNvbW1vbi5mbl9mbGFncyAmPSB+WkVORF9BQ0NfQUxMT1dfU1RBVElDOwog CQl9CisJCWlmIChfX2NvbmNhdCkgeworCQkJaWYgKF9fY29uY2F0LT5jb21tb24uZm5fZmxhZ3Mg JiBaRU5EX0FDQ19TVEFUSUMpIHsKKwkJCQl6ZW5kX2Vycm9yKGVycm9yX3R5cGUsICJNZXRob2Qg JXM6OiVzKCkgY2Fubm90IGJlIHN0YXRpYyIsIHNjb3BlLT5uYW1lLCBfX2NvbmNhdC0+Y29tbW9u LmZ1bmN0aW9uX25hbWUpOworCQkJfQorCQkJX19jb25jYXQtPmNvbW1vbi5mbl9mbGFncyAmPSB+ WkVORF9BQ0NfQUxMT1dfU1RBVElDOworCQl9CiAJCWVmcmVlKGxjX2NsYXNzX25hbWUpOwogCX0K IAlyZXR1cm4gU1VDQ0VTUzsKZGlmZiAtLWdpdCBhL1plbmQvemVuZF9jb21waWxlLmMgYi9aZW5k L3plbmRfY29tcGlsZS5jCmluZGV4IDEzYjZjNTUuLjkxY2QzNGEgMTAwNjQ0Ci0tLSBhL1plbmQv emVuZF9jb21waWxlLmMKKysrIGIvWmVuZC96ZW5kX2NvbXBpbGUuYwpAQCAtMTI2Nyw2ICsxMjY3 LDEwIEBAIHZvaWQgemVuZF9kb19iZWdpbl9mdW5jdGlvbl9kZWNsYXJhdGlvbih6bm9kZSAqZnVu Y3Rpb25fdG9rZW4sIHpub2RlICpmdW5jdGlvbl9uCiAJCQl9IGVsc2UgaWYgKChuYW1lX2xlbiA9 PSBzaXplb2YoWkVORF9UT1NUUklOR19GVU5DX05BTUUpLTEpICYmICghbWVtY21wKGxjbmFtZSwg WkVORF9UT1NUUklOR19GVU5DX05BTUUsIHNpemVvZihaRU5EX1RPU1RSSU5HX0ZVTkNfTkFNRSkt MSkpKSB7CiAJCQkJaWYgKGZuX2ZsYWdzICYgKChaRU5EX0FDQ19QUFBfTUFTSyB8IFpFTkRfQUND X1NUQVRJQykgXiBaRU5EX0FDQ19QVUJMSUMpKSB7CiAJCQkJCXplbmRfZXJyb3IoRV9XQVJOSU5H LCAiVGhlIG1hZ2ljIG1ldGhvZCBfX3RvU3RyaW5nKCkgbXVzdCBoYXZlIHB1YmxpYyB2aXNpYmls aXR5IGFuZCBjYW5ub3QgYmUgc3RhdGljIik7CisgICAgICAgICAgICAgICAgfQorCQkJfSBlbHNl IGlmICgobmFtZV9sZW4gPT0gc2l6ZW9mKFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSktMSkgJiYgKCFt ZW1jbXAobGNuYW1lLCBaRU5EX0NPTkNBVF9GVU5DX05BTUUsIHNpemVvZihaRU5EX0NPTkNBVF9G VU5DX05BTUUpLTEpKSkgeworCQkJCWlmIChmbl9mbGFncyAmICgoWkVORF9BQ0NfUFBQX01BU0sg fCBaRU5EX0FDQ19TVEFUSUMpIF4gWkVORF9BQ0NfUFVCTElDKSkgeworCQkJCQl6ZW5kX2Vycm9y KEVfV0FSTklORywgIlRoZSBtYWdpYyBtZXRob2QgIiBaRU5EX0NPTkNBVF9GVU5DX05BTUUgIiBt dXN0IGhhdmUgcHVibGljIHZpc2liaWxpdHkgYW5kIGNhbm5vdCBiZSBzdGF0aWMiKTsKIAkJCQl9 CiAJCQl9CiAJCX0gZWxzZSB7CkBAIC0xMzM1LDYgKzEzMzksMTEgQEAgdm9pZCB6ZW5kX2RvX2Jl Z2luX2Z1bmN0aW9uX2RlY2xhcmF0aW9uKHpub2RlICpmdW5jdGlvbl90b2tlbiwgem5vZGUgKmZ1 bmN0aW9uX24KIAkJCQkJemVuZF9lcnJvcihFX1dBUk5JTkcsICJUaGUgbWFnaWMgbWV0aG9kIF9f dG9TdHJpbmcoKSBtdXN0IGhhdmUgcHVibGljIHZpc2liaWxpdHkgYW5kIGNhbm5vdCBiZSBzdGF0 aWMiKTsKIAkJCQl9CQkJCQogCQkJCUNHKGFjdGl2ZV9jbGFzc19lbnRyeSktPl9fdG9zdHJpbmcg PSAoemVuZF9mdW5jdGlvbiAqKSBDRyhhY3RpdmVfb3BfYXJyYXkpOworCQkJfSBlbHNlIGlmICgo bmFtZV9sZW4gPT0gc2l6ZW9mKFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRSktMSkgJiYgKCFtZW1jbXAo bGNuYW1lLCBaRU5EX0NPTkNBVF9GVU5DX05BTUUsIHNpemVvZihaRU5EX0NPTkNBVF9GVU5DX05B TUUpLTEpKSkgeworCQkJCWlmIChmbl9mbGFncyAmICgoWkVORF9BQ0NfUFBQX01BU0sgfCBaRU5E X0FDQ19TVEFUSUMpIF4gWkVORF9BQ0NfUFVCTElDKSkgeworCQkJCQl6ZW5kX2Vycm9yKEVfV0FS TklORywgIlRoZSBtYWdpYyBtZXRob2QgIiBaRU5EX0NPTkNBVF9GVU5DX05BTUUgIiBtdXN0IGhh dmUgcHVibGljIHZpc2liaWxpdHkgYW5kIGNhbm5vdCBiZSBzdGF0aWMiKTsKKwkJCQl9CQkJCQor CQkJCUNHKGFjdGl2ZV9jbGFzc19lbnRyeSktPl9fY29uY2F0ID0gKHplbmRfZnVuY3Rpb24gKikg Q0coYWN0aXZlX29wX2FycmF5KTsKIAkJCX0gZWxzZSBpZiAoIShmbl9mbGFncyAmIFpFTkRfQUND X1NUQVRJQykpIHsKIAkJCQlDRyhhY3RpdmVfb3BfYXJyYXkpLT5mbl9mbGFncyB8PSBaRU5EX0FD Q19BTExPV19TVEFUSUM7CiAJCQl9CmRpZmYgLS1naXQgYS9aZW5kL3plbmRfY29tcGlsZS5oIGIv WmVuZC96ZW5kX2NvbXBpbGUuaAppbmRleCBmYWZmMWVjLi4wNjU2ODgzIDEwMDY0NAotLS0gYS9a ZW5kL3plbmRfY29tcGlsZS5oCisrKyBiL1plbmQvemVuZF9jb21waWxlLmgKQEAgLTc0NSw2ICs3 NDUsNyBAQCBFTkRfRVhURVJOX0MoKQogI2RlZmluZSBaRU5EX0NBTExTVEFUSUNfRlVOQ19OQU1F ICAgIl9fY2FsbHN0YXRpYyIKICNkZWZpbmUgWkVORF9UT1NUUklOR19GVU5DX05BTUUgICAgICJf X3Rvc3RyaW5nIgogI2RlZmluZSBaRU5EX0FVVE9MT0FEX0ZVTkNfTkFNRSAgICAgIl9fYXV0b2xv YWQiCisjZGVmaW5lIFpFTkRfQ09OQ0FUX0ZVTkNfTkFNRQkJIl9fY29uY2F0IgogCiAvKiBUaGUg Zm9sbG93aW5nIGNvbnN0YW50cyBtYXkgYmUgY29tYmluZWQgaW4gQ0coY29tcGlsZXJfb3B0aW9u cykKICAqIHRvIGNoYW5nZSB0aGUgZGVmYXVsdCBjb21waWxlciBiZWhhdmlvciAqLwpkaWZmIC0t Z2l0IGEvWmVuZC96ZW5kX29iamVjdF9oYW5kbGVycy5jIGIvWmVuZC96ZW5kX29iamVjdF9oYW5k bGVycy5jCmluZGV4IDE0MjRhMTEuLjI5YTVjYTEgMTAwNjQ0Ci0tLSBhL1plbmQvemVuZF9vYmpl Y3RfaGFuZGxlcnMuYworKysgYi9aZW5kL3plbmRfb2JqZWN0X2hhbmRsZXJzLmMKQEAgLTEyOTAs NiArMTI5MCwzMSBAQCBaRU5EX0FQSSBpbnQgemVuZF9zdGRfY2FzdF9vYmplY3RfdG9zdHJpbmco enZhbCAqcmVhZG9iaiwgenZhbCAqd3JpdGVvYmosIGludCB0eQogfQogLyogfX19ICovCiAKK1pF TkRfQVBJIGludCB6ZW5kX3N0ZF9jb25jYXRfb3AoenZhbCAqb2JqLCB6dmFsICpyZXN1bHQsIHp2 YWwgKnJocyBUU1JNTFNfREMpIC8qIHt7eyAqLworeworCXp2YWwgKnJldHZhbDsKKwl6ZW5kX2Ns YXNzX2VudHJ5ICpjZSA9IFpfT0JKQ0VfUChvYmopOworCWlmIChjZS0+X19jb25jYXQgJiYgKHpl bmRfY2FsbF9tZXRob2Rfd2l0aF8xX3BhcmFtcygmb2JqLCBjZSwgJmNlLT5fX2NvbmNhdCwgWkVO RF9DT05DQVRfRlVOQ19OQU1FLCAmcmV0dmFsLCByaHMpIHx8IEVHKGV4Y2VwdGlvbikpKSB7CisJ CWlmIChFRyhleGNlcHRpb24pKSB7CisJCQlpZiAocmV0dmFsKSB7CisJCQkJenZhbF9wdHJfZHRv cigmcmV0dmFsKTsKKwkJCX0KKwkJCXplbmRfZXJyb3IoRV9FUlJPUiwgIk1ldGhvZCAlczo6IiBa RU5EX0NPTkNBVF9GVU5DX05BTUUgIigpIG11c3Qgbm90IHRocm93IGFuIGV4Y2VwdGlvbiIsIGNl LT5uYW1lKTsKKwkJCXJldHVybiBGQUlMVVJFOworCQl9CisJCWlmIChaX1RZUEVfUChyZXR2YWwp ID09IElTX05VTEwpIHsKKwkJCXp2YWxfcHRyX2R0b3IoJnJldHZhbCk7CisJCQlyZXR1cm4gRkFJ TFVSRTsKKwkJfSBlbHNlIHsKKwkJCVpWQUxfWlZBTChyZXN1bHQsIHJldHZhbCwgMSwgMSk7CisJ CQlyZXR1cm4gU1VDQ0VTUzsKKwkJfQorCX0KKwlyZXR1cm4gRkFJTFVSRTsKK30KKy8qIH19fSAq LworCisKIGludCB6ZW5kX3N0ZF9nZXRfY2xvc3VyZSh6dmFsICpvYmosIHplbmRfY2xhc3NfZW50 cnkgKipjZV9wdHIsIHplbmRfZnVuY3Rpb24gKipmcHRyX3B0ciwgenZhbCAqKnpvYmpfcHRyIFRT Uk1MU19EQykgLyoge3t7ICovCiB7CiAJemVuZF9jbGFzc19lbnRyeSAqY2U7CkBAIC0xMzQ0LDYg KzEzNjksNyBAQCBaRU5EX0FQSSB6ZW5kX29iamVjdF9oYW5kbGVycyBzdGRfb2JqZWN0X2hhbmRs ZXJzID0gewogCU5VTEwsCQkJCQkJCQkJLyogY291bnRfZWxlbWVudHMgKi8KIAlOVUxMLAkJCQkJ CQkJCS8qIGdldF9kZWJ1Z19pbmZvICovCiAJemVuZF9zdGRfZ2V0X2Nsb3N1cmUsCQkJCQkvKiBn ZXRfY2xvc3VyZSAqLworICAgIHplbmRfc3RkX2NvbmNhdF9vcAkJCQkJCS8qIGNvbmNhdF9vcCAq LwogfTsKIAogLyoKZGlmZiAtLWdpdCBhL1plbmQvemVuZF9vYmplY3RfaGFuZGxlcnMuaCBiL1pl bmQvemVuZF9vYmplY3RfaGFuZGxlcnMuaAppbmRleCAzNGY0ZTAyLi41ZTczZWY3IDEwMDY0NAot LS0gYS9aZW5kL3plbmRfb2JqZWN0X2hhbmRsZXJzLmgKKysrIGIvWmVuZC96ZW5kX29iamVjdF9o YW5kbGVycy5oCkBAIC0xMTAsNiArMTEwLDggQEAgdHlwZWRlZiBpbnQgKCp6ZW5kX29iamVjdF9j b3VudF9lbGVtZW50c190KSh6dmFsICpvYmplY3QsIGxvbmcgKmNvdW50IFRTUk1MU19EQykKIAog dHlwZWRlZiBpbnQgKCp6ZW5kX29iamVjdF9nZXRfY2xvc3VyZV90KSh6dmFsICpvYmosIHplbmRf Y2xhc3NfZW50cnkgKipjZV9wdHIsIHVuaW9uIF96ZW5kX2Z1bmN0aW9uICoqZnB0cl9wdHIsIHp2 YWwgKip6b2JqX3B0ciBUU1JNTFNfREMpOwogCit0eXBlZGVmIGludCAoKnplbmRfb2JqZWN0X2Nv bmNhdF9vcF90KSh6dmFsICpvYmosIHp2YWwgKnJlc3VsdCwgenZhbCAqcmhzIFRTUk1MU19EQyk7 CisKIHN0cnVjdCBfemVuZF9vYmplY3RfaGFuZGxlcnMgewogCS8qIGdlbmVyYWwgb2JqZWN0IGZ1 bmN0aW9ucyAqLwogCXplbmRfb2JqZWN0X2FkZF9yZWZfdAkJCQkJYWRkX3JlZjsKQEAgLTEzOCw2 ICsxNDAsNyBAQCBzdHJ1Y3QgX3plbmRfb2JqZWN0X2hhbmRsZXJzIHsKIAl6ZW5kX29iamVjdF9j b3VudF9lbGVtZW50c190CQkJY291bnRfZWxlbWVudHM7CiAJemVuZF9vYmplY3RfZ2V0X2RlYnVn X2luZm9fdAkJCWdldF9kZWJ1Z19pbmZvOwogCXplbmRfb2JqZWN0X2dldF9jbG9zdXJlX3QJCQkJ Z2V0X2Nsb3N1cmU7CisJemVuZF9vYmplY3RfY29uY2F0X29wX3QJCQkJCWNvbmNhdF9vcDsKIH07 CiAKIGV4dGVybiBaRU5EX0FQSSB6ZW5kX29iamVjdF9oYW5kbGVycyBzdGRfb2JqZWN0X2hhbmRs ZXJzOwpAQCAtMTUxLDYgKzE1NCw3IEBAIFpFTkRfQVBJIHN0cnVjdCBfemVuZF9wcm9wZXJ0eV9p bmZvICp6ZW5kX2dldF9wcm9wZXJ0eV9pbmZvKHplbmRfY2xhc3NfZW50cnkgKmNlCiBaRU5EX0FQ SSBIYXNoVGFibGUgKnplbmRfc3RkX2dldF9wcm9wZXJ0aWVzKHp2YWwgKm9iamVjdCBUU1JNTFNf REMpOwogWkVORF9BUEkgSGFzaFRhYmxlICp6ZW5kX3N0ZF9nZXRfZGVidWdfaW5mbyh6dmFsICpv YmplY3QsIGludCAqaXNfdGVtcCBUU1JNTFNfREMpOwogWkVORF9BUEkgaW50IHplbmRfc3RkX2Nh c3Rfb2JqZWN0X3Rvc3RyaW5nKHp2YWwgKnJlYWRvYmosIHp2YWwgKndyaXRlb2JqLCBpbnQgdHlw ZSBUU1JNTFNfREMpOworWkVORF9BUEkgaW50IHplbmRfc3RkX2NvbmNhdF9vcCh6dmFsICpvYmos IHp2YWwgKnJlc3VsdCwgenZhbCAqcmhzIFRTUk1MU19EQyk7CiAKIAogI2RlZmluZSBJU19aRU5E X1NURF9PQkpFQ1QoeikgIChaX1RZUEUoeikgPT0gSVNfT0JKRUNUICYmIChaX09CSl9IVCgoeikp LT5nZXRfY2xhc3NfZW50cnkgIT0gTlVMTCkpCmRpZmYgLS1naXQgYS9aZW5kL3plbmRfb3BlcmF0 b3JzLmMgYi9aZW5kL3plbmRfb3BlcmF0b3JzLmMKaW5kZXggOGFmMWVkZS4uMTU0MDAyYyAxMDA2 NDQKLS0tIGEvWmVuZC96ZW5kX29wZXJhdG9ycy5jCisrKyBiL1plbmQvemVuZF9vcGVyYXRvcnMu YwpAQCAtMTIwNSw2ICsxMjA1LDExIEBAIFpFTkRfQVBJIGludCBjb25jYXRfZnVuY3Rpb24oenZh bCAqcmVzdWx0LCB6dmFsICpvcDEsIHp2YWwgKm9wMiBUU1JNTFNfREMpIC8qIHt7CiAJenZhbCBv cDFfY29weSwgb3AyX2NvcHk7CiAJaW50IHVzZV9jb3B5MSA9IDAsIHVzZV9jb3B5MiA9IDA7CiAK KwlpZiAoWl9UWVBFX1Aob3AxKSA9PSBJU19PQkpFQ1QgJiYgWl9PQkpfSFRfUChvcDEpLT5jb25j YXRfb3ApIHsKKwkJaWYgKFNVQ0NFU1MgPT0gWl9PQkpfSFRfUChvcDEpLT5jb25jYXRfb3Aob3Ax LCByZXN1bHQsIG9wMiBUU1JNTFNfQ0MpKSB7CisJCQlyZXR1cm4gU1VDQ0VTUzsKKwkJfQorCX0K IAlpZiAoWl9UWVBFX1Aob3AxKSAhPSBJU19TVFJJTkcpIHsKIAkJemVuZF9tYWtlX3ByaW50YWJs ZV96dmFsKG9wMSwgJm9wMV9jb3B5LCAmdXNlX2NvcHkxKTsKIAl9Cg== --0016369c8deebcabec0481b0821b--