From kfm-devel Wed May 09 21:09:41 2001 From: Mark Deneen Date: Wed, 09 May 2001 21:09:41 +0000 To: kfm-devel Subject: konq_frame header X-MARC-Message: https://marc.info/?l=kfm-devel&m=98944258705309 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--------------Boundary-00=_5S63IT1LW0C50CR42LIK" --------------Boundary-00=_5S63IT1LW0C50CR42LIK Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit I've added a header to all konq frames which are toggleable. It is a simple class which just has a label and a button. The label is the title of the header, and the button will toggle the part. (closing it) I have a screenshot up at http://tick.dhs.org/~deneen/kpart-header.png. It only makes itself visible if the widget in the part calls setCaption(). I had to do a little fudging with a QTimer::singleShot to make it work. (thanks wildfox) Please take a look at the patch. I haven't done very much with Qt before.. so criticism is welcome. ;-) I'm not on kfm-devel, so please reply directly to me. (If I oafed the patch, just tell me. :-)) I tried to keep the spacing/tabs the same as the source files, but I don't know how well I did! Regards, Mark Deneen --------------Boundary-00=_5S63IT1LW0C50CR42LIK Content-Type: text/x-c; charset="iso-8859-1"; name="konq.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="konq.diff" SW5kZXg6IGtvbnFfZnJhbWUuY2MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2hvbWUva2RlL2tkZWJh c2Uva29ucXVlcm9yL2tvbnFfZnJhbWUuY2MsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTIyCmRp ZmYgLXUgLTMgLXAgLXIxLjEyMiBrb25xX2ZyYW1lLmNjCi0tLSBrb25xX2ZyYW1lLmNjCTIwMDEv MDQvMTIgMTE6MTE6MzEJMS4xMjIKKysrIGtvbnFfZnJhbWUuY2MJMjAwMS8wNS8wOSAyMTowMDoy OApAQCAtMjUsNiArMjUsNyBAQAogI2luY2x1ZGUgPHFzcGxpdHRlci5oPgogI2luY2x1ZGUgPHF3 aGF0c3RoaXMuaD4KICNpbmNsdWRlIDxxdGltZXIuaD4KKyNpbmNsdWRlIDxxcHVzaGJ1dHRvbi5o PgogCiAjaW5jbHVkZSA8a2FwcC5oPgogI2luY2x1ZGUgPGtkZWJ1Zy5oPgpAQCAtMzQsNiArMzUs NyBAQAogI2luY2x1ZGUgPGtwcm9ncmVzcy5oPgogI2luY2x1ZGUgPGtsb2NhbGUuaD4KICNpbmNs dWRlIDxrc2VwYXJhdG9yLmg+CisjaW5jbHVkZSA8a2FjdGlvbi5oPgogCiAjaW5jbHVkZSA8a3Bh cnRzL2Jyb3dzZXJleHRlbnNpb24uaD4KICNpbmNsdWRlIDxrcGFydHMvZXZlbnQuaD4KQEAgLTI4 MSw2ICsyODMsODAgQEAgdm9pZCBLb25xRnJhbWVTdGF0dXNCYXI6OnBhaW50RXZlbnQoUVBhaQog I2VuZGlmCiB9CiAKKworS29ucUZyYW1lSGVhZGVyOjpLb25xRnJhbWVIZWFkZXIoIEtvbnFGcmFt ZSAqX3BhcmVudCwgY29uc3QgY2hhciAqX25hbWUgKQorOlFXaWRnZXQoIF9wYXJlbnQsIF9uYW1l ICkKKyxtX3BQYXJlbnRLb25xRnJhbWUoIF9wYXJlbnQgKQoreworCisgICBtX3BBY3Rpb24gPSAw TDsKKyAgIG1fcExheW91dCA9IG5ldyBRSEJveExheW91dCggdGhpcywgMCwgLTEsICJLb25xRnJh bWUncyBRVkJveExheW91dCIgKTsKKyAgIG1fcEhlYWRlckxhYmVsID0gbmV3IFFMYWJlbCggdGhp cywgIktvbnFGcmFtZUhlYWRlciBsYWJlbCIgKTsKKyAgIG1fcEhlYWRlckxhYmVsLT5zZXRBbGln bm1lbnQoQWxpZ25DZW50ZXIpOworICAgbV9wSGVhZGVyTGFiZWwtPnNldEZyYW1lU3R5bGUoIFFG cmFtZTo6U3R5bGVkUGFuZWwgKTsKKworICAgbV9wQ2xvc2VCdXR0b24gPSBuZXcgUVB1c2hCdXR0 b24oIHRoaXMgKTsKKyAgIG1fcExheW91dC0+YWRkV2lkZ2V0KCBtX3BIZWFkZXJMYWJlbCApOwor ICAgbV9wTGF5b3V0LT5hZGRXaWRnZXQoIG1fcENsb3NlQnV0dG9uICk7CisKKyAgIG1fcExheW91 dC0+c2V0U3RyZXRjaEZhY3RvciggbV9wSGVhZGVyTGFiZWwsIDEgKTsKKyAgIG1fcExheW91dC0+ c2V0U3RyZXRjaEZhY3RvciggbV9wQ2xvc2VCdXR0b24sIDAgKTsKKyAgIG1fcENsb3NlQnV0dG9u LT5zZXRUZXh0KCJYIik7CisKKyAgIG1fcENsb3NlQnV0dG9uLT5zZXRGb2N1c1BvbGljeShOb0Zv Y3VzKTsKK30KKworS29ucUZyYW1lSGVhZGVyOjp+S29ucUZyYW1lSGVhZGVyKCkKK3sKKyAgICBp ZihtX3BMYXlvdXQpIGRlbGV0ZSBtX3BMYXlvdXQ7Cit9CisKK3ZvaWQgS29ucUZyYW1lSGVhZGVy OjpzbG90Q29ubmVjdFRvTmV3VmlldyhLb25xVmlldyAqLCBLUGFydHM6OlJlYWRPbmx5UGFydCAq LEtQYXJ0czo6UmVhZE9ubHlQYXJ0ICpuZXdPbmUpCit7CisgICBpZiAobmV3T25lIT0wKQorICAg eworICAgICAgY29ubmVjdChtX3BDbG9zZUJ1dHRvbiwgU0lHTkFMKGNsaWNrZWQoKSksIHRoaXMs IFNMT1Qoc2xvdERvQWN0aW9uKCkpKTsKKyAgICAgIG5ld09uZS0+d2lkZ2V0KCktPmluc3RhbGxF dmVudEZpbHRlcih0aGlzKTsKKyAgIH0KK30KKwordm9pZCBLb25xRnJhbWVIZWFkZXI6OnNsb3RE b0FjdGlvbigpCit7CisgICAgaWYoIG1fcEFjdGlvbiApCisgICAgICAgIG1fcEFjdGlvbi0+YWN0 aXZhdGUoKTsKK30KK3ZvaWQgS29ucUZyYW1lSGVhZGVyOjpzbG90U2V0SGVhZGVyVGV4dChjb25z dCBRU3RyaW5nICZ0ZXh0KQoreworICAgIG1fcEhlYWRlckxhYmVsLT5zZXRUZXh0KHRleHQpOwor fQorCit2b2lkIEtvbnFGcmFtZUhlYWRlcjo6c2V0QWN0aW9uKCBLQWN0aW9uICppbkFjdGlvbiAp Cit7CisgICAgbV9wQWN0aW9uID0gaW5BY3Rpb247Cit9CisKKworYm9vbCBLb25xRnJhbWVIZWFk ZXI6OmV2ZW50RmlsdGVyKFFPYmplY3QqIC8qb2JqKi8sIFFFdmVudCAqZXYpCit7CisgICAgaWYo IGV2LT50eXBlKCk9PVFFdmVudDo6Q2FwdGlvbkNoYW5nZSApCisgICAgeworICAgICAgICBpZigg bV9wUGFyZW50S29ucUZyYW1lLT5jaGlsZFZpZXcoKSApIC8vIGp1c3QgbWUgYmVpbmcgZXh0cmEg Y2FyZWZ1bC4uCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIGRvbid0IHNldCB0aXRsZSBmb3Ig dGhpbmdzIHRoYXQgYXJlIG5vdCB0b2dnbGUgdmlld3MuCisgICAgICAgICAgICBpZiggbV9wUGFy ZW50S29ucUZyYW1lLT5jaGlsZFZpZXcoKS0+aXNUb2dnbGVWaWV3KCkgKQorICAgICAgICAgICAg eworICAgICAgICAgICAgICAgIFFWYXJpYW50IHYgPSBtX3BQYXJlbnRLb25xRnJhbWUtPnBhcnQo KS0+d2lkZ2V0KCktPnByb3BlcnR5KCJjYXB0aW9uIik7CisgICAgICAgICAgICAgICAgaWYoIHYu aXNWYWxpZCgpICkKKyAgICAgICAgICAgICAgICAgICAgc2xvdFNldEhlYWRlclRleHQodi5hc1N0 cmluZygpKTsKKyAgICAgICAgICAgICAgICBpZiggIWlzVmlzaWJsZSgpICkgc2hvdygpOworCisg ICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICB9CisgICAgICAgIH0KKyAg ICB9OworICAgcmV0dXJuIGZhbHNlOworfTsKKwogLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCiAKIEtvbnFGcmFtZTo6 S29ucUZyYW1lKCBLb25xRnJhbWVDb250YWluZXIgKl9wYXJlbnRDb250YWluZXIsIGNvbnN0IGNo YXIgKl9uYW1lICkKQEAgLTI5MSw2ICszNjcsNyBAQCBLb25xRnJhbWU6OktvbnFGcmFtZSggS29u cUZyYW1lQ29udGFpbmVyCiAKICAgIC8vIHRoZSBmcmFtZSBzdGF0dXNiYXIKICAgIG1fcFN0YXR1 c0JhciA9IG5ldyBLb25xRnJhbWVTdGF0dXNCYXIoIHRoaXMsICJLb25xdWVyb3JGcmFtZVN0YXR1 c0JhciIpOworICAgbV9wSGVhZGVyID0gbmV3IEtvbnFGcmFtZUhlYWRlcih0aGlzLCAiS29ucXVl cm9yRnJhbWVIZWFkZXIiKTsKICAgIGNvbm5lY3QobV9wU3RhdHVzQmFyLCBTSUdOQUwoY2xpY2tl ZCgpKSwgdGhpcywgU0xPVChzbG90U3RhdHVzQmFyQ2xpY2tlZCgpKSk7CiAgICBjb25uZWN0KCBt X3BTdGF0dXNCYXIsIFNJR05BTCggbGlua2VkVmlld0NsaWNrZWQoIGJvb2wgKSApLCB0aGlzLCBT TE9UKCBzbG90TGlua2VkVmlld0NsaWNrZWQoIGJvb2wgKSApICk7CiAgICBtX3NlcGFyYXRvciA9 IDA7CkBAIC0zNDcsNiArNDI0LDcgQEAgS1BhcnRzOjpSZWFkT25seVBhcnQgKktvbnFGcmFtZTo6 YXR0YWNoKAogICAgYXR0YWNoSW50ZXJuYWwoKTsKIAogICAgbV9wU3RhdHVzQmFyLT5zbG90Q29u bmVjdFRvTmV3VmlldygwLCAwLG1fcFBhcnQpOworICAgbV9wSGVhZGVyLT5zbG90Q29ubmVjdFRv TmV3VmlldygwLCAwLG1fcFBhcnQpOwogICAgcmV0dXJuIG1fcFBhcnQ7CiB9CiAKQEAgLTM1Nywx MSArNDM1LDE1IEBAIHZvaWQgS29ucUZyYW1lOjphdHRhY2hJbnRlcm5hbCgpCiAKICAgIG1fcExh eW91dCA9IG5ldyBRVkJveExheW91dCggdGhpcywgMCwgLTEsICJLb25xRnJhbWUncyBRVkJveExh eW91dCIgKTsKIAorICAgbV9wTGF5b3V0LT5hZGRXaWRnZXQoIG1fcEhlYWRlciApOworCiAgICBt X3BMYXlvdXQtPmFkZFdpZGdldCggbV9wUGFydC0+d2lkZ2V0KCkgKTsKIAogICAgbV9wTGF5b3V0 LT5hZGRXaWRnZXQoIG1fcFN0YXR1c0JhciApOwogICAgbV9wUGFydC0+d2lkZ2V0KCktPnNob3co KTsKICAgIG1fcFN0YXR1c0Jhci0+c2hvdygpOworICAgbV9wSGVhZGVyLT5oaWRlKCk7CisKICAg IG1fcExheW91dC0+YWN0aXZhdGUoKTsKIAogICAgbV9wUGFydC0+d2lkZ2V0KCktPmluc3RhbGxF dmVudEZpbHRlcih0aGlzKTsKQEAgLTM5Niw4ICs0NzgsMTAgQEAgdm9pZCBLb25xRnJhbWU6OnNl dFZpZXcoIEtvbnFWaWV3KiBjaGlsZAogICAgewogICAgICBjb25uZWN0KG1fcFZpZXcsU0lHTkFM KHNpZ1BhcnRDaGFuZ2VkKEtvbnFWaWV3ICosIEtQYXJ0czo6UmVhZE9ubHlQYXJ0ICosS1BhcnRz OjpSZWFkT25seVBhcnQgKikpLAogICAgICAgICAgICAgIG1fcFN0YXR1c0JhcixTTE9UKHNsb3RD b25uZWN0VG9OZXdWaWV3KEtvbnFWaWV3ICosIEtQYXJ0czo6UmVhZE9ubHlQYXJ0ICosS1BhcnRz OjpSZWFkT25seVBhcnQgKikpKTsKLSAgICAgLy9jb25uZWN0KG1fcFZpZXctPnZpZXcoKSxTSUdO QUwoc2V0U3RhdHVzQmFyVGV4dChjb25zdCBRU3RyaW5nICYpKSwKLSAgICAgLy9tX3BIZWFkZXIs U0xPVChzbG90RGlzcGxheVN0YXR1c1RleHQoY29uc3QgUVN0cmluZyYpKSk7CisgICAgIGNvbm5l Y3QobV9wVmlldyxTSUdOQUwoc2lnUGFydENoYW5nZWQoS29ucVZpZXcgKiwgS1BhcnRzOjpSZWFk T25seVBhcnQgKixLUGFydHM6OlJlYWRPbmx5UGFydCAqKSksCisgICAgICAgICAgICAgbV9wSGVh ZGVyLFNMT1Qoc2xvdENvbm5lY3RUb05ld1ZpZXcoS29ucVZpZXcgKiwgS1BhcnRzOjpSZWFkT25s eVBhcnQgKixLUGFydHM6OlJlYWRPbmx5UGFydCAqKSkpOworCisvLyAgICAgY29ubmVjdChtX3BW aWV3LT52aWV3KCksU0lHTkFMKHNldFN0YXR1c0JhclRleHQoY29uc3QgUVN0cmluZyAmKSksbV9w SGVhZGVyLFNMT1Qoc2xvdERpc3BsYXlTdGF0dXNUZXh0KGNvbnN0IFFTdHJpbmcmKSkpOwogICAg fQogfTsKIApJbmRleDoga29ucV9mcmFtZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9ob21lL2tk ZS9rZGViYXNlL2tvbnF1ZXJvci9rb25xX2ZyYW1lLmgsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEu NjIKZGlmZiAtdSAtMyAtcCAtcjEuNjIga29ucV9mcmFtZS5oCi0tLSBrb25xX2ZyYW1lLmgJMjAw MS8wMy8wNiAyMjo0MDoxOQkxLjYyCisrKyBrb25xX2ZyYW1lLmgJMjAwMS8wNS8wOSAyMTowMDoy OApAQCAtMzMsNyArMzMsMTAgQEAKIAogY2xhc3MgUVBpeG1hcDsKIGNsYXNzIFFWQm94TGF5b3V0 OworY2xhc3MgUUhCb3hMYXlvdXQ7CiBjbGFzcyBRVGltZXI7CitjbGFzcyBRUHVzaEJ1dHRvbjsK KwogY2xhc3MgS29ucVZpZXc7CiBjbGFzcyBLb25xRnJhbWVCYXNlOwogY2xhc3MgS29ucUZyYW1l OwpAQCAtNDEsNiArNDQsNyBAQCBjbGFzcyBLb25xRnJhbWVDb250YWluZXI7CiBjbGFzcyBLQ29u ZmlnOwogY2xhc3MgS1NlcGFyYXRvcjsKIGNsYXNzIEtQcm9ncmVzczsKK2NsYXNzIEtBY3Rpb247 CiAKIG5hbWVzcGFjZSBLUGFydHMKIHsKQEAgLTEyNCw2ICsxMjgsMzQgQEAgY2xhc3MgS29ucUZy YW1lU3RhdHVzQmFyIDogcHVibGljIFFXaWRnZQogICAgICAgUVN0cmluZyBtX3NhdmVkTWVzc2Fn ZTsKIH07CiAKKworLyoqCisgKiBUaGUgS29ucUZyYW1lSGVhZGVyIHByb3ZpZGVzIGEgdGl0bGUg YW5kIGJ1dHRvbiB0byByZW1vdmUgdGhlIHZpZXcuCisgKi8KKworY2xhc3MgS29ucUZyYW1lSGVh ZGVyIDogcHVibGljIFFXaWRnZXQKK3sKKyAgUV9PQkpFQ1QKKworICAgcHVibGljOgorICAgICAg S29ucUZyYW1lSGVhZGVyKCBLb25xRnJhbWUgKl9wYXJlbnQgPSAwTCwgY29uc3QgY2hhciAqX25h bWUgPSAwTCApOworICAgICAgdmlydHVhbCB+S29ucUZyYW1lSGVhZGVyKCk7CisgICAgICB2aXJ0 dWFsIHZvaWQgc2V0QWN0aW9uKCBLQWN0aW9uICppbkFjdGlvbiApOworICAgICAgdmlydHVhbCBi b29sIGV2ZW50RmlsdGVyKFFPYmplY3QgKm9iaiwgUUV2ZW50ICpldik7CisKKyAgIHB1YmxpYyBz bG90czoKKyAgICAgIHZvaWQgc2xvdENvbm5lY3RUb05ld1ZpZXcoS29ucVZpZXcgKiwgS1BhcnRz OjpSZWFkT25seVBhcnQgKm9sZE9uZSxLUGFydHM6OlJlYWRPbmx5UGFydCAqbmV3T25lKTsKKyAg ICAgIHZvaWQgc2xvdFNldEhlYWRlclRleHQoY29uc3QgUVN0cmluZyYgdGV4dCk7CisgICAgICB2 b2lkIHNsb3REb0FjdGlvbigpOworICAgcHJvdGVjdGVkOgorCisgICAgICBLb25xRnJhbWUqIG1f cFBhcmVudEtvbnFGcmFtZTsKKyAgICAgIFFMYWJlbCAqbV9wSGVhZGVyTGFiZWw7CisgICAgICBR UHVzaEJ1dHRvbiAqbV9wQ2xvc2VCdXR0b247CisgICAgICBRSEJveExheW91dCAqbV9wTGF5b3V0 OworICAgICAgS0FjdGlvbiAqbV9wQWN0aW9uOworfTsKKwogdHlwZWRlZiBRTGlzdDxLb25xVmll dz4gQ2hpbGRWaWV3TGlzdDsKIAogY2xhc3MgS29ucUZyYW1lQmFzZQpAQCAtMTc4LDcgKzIxMCw3 IEBAIHB1YmxpYzoKICAgIG1ha2UgS29ucU1haW5XaW5kb3cgc3dpdGNoIHRvIHRoZSBuZXh0IHZp ZXcKICAgICovCiAgIHZpcnR1YWwgYm9vbCBldmVudEZpbHRlcihRT2JqZWN0Km9iaixRRXZlbnQg KmV2KTsKLSAKKwogICAvKioKICAgICogSW5zZXJ0cyB0aGUgcGFydCdzIHdpZGdldCBhbmQgdGhl IHN0YXR1c2JhciBpbnRvIHRoZSBsYXlvdXQKICAgICovCkBAIC0yMTcsNiArMjQ5LDcgQEAgcHVi bGljOgogICBRVkJveExheW91dCAqbGF5b3V0KCkgeyByZXR1cm4gbV9wTGF5b3V0OyB9CiAKICAg S29ucUZyYW1lU3RhdHVzQmFyICpzdGF0dXNiYXIoKSBjb25zdCB7IHJldHVybiBtX3BTdGF0dXNC YXI7IH0KKyAgS29ucUZyYW1lSGVhZGVyICAgICpoZWFkZXIoKSBjb25zdCB7IHJldHVybiBtX3BI ZWFkZXI7IH0KIAogcHVibGljIHNsb3RzOgogCkBAIC0yNDIsNiArMjc1LDcgQEAgcHJvdGVjdGVk OgogCiAgIEtTZXBhcmF0b3IgKm1fc2VwYXJhdG9yOwogICBLb25xRnJhbWVTdGF0dXNCYXIqIG1f cFN0YXR1c0JhcjsKKyAgS29ucUZyYW1lSGVhZGVyICptX3BIZWFkZXI7CiB9OwogCiAvKioKSW5k ZXg6IGtvbnFfZ3VpY2xpZW50cy5jYwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9rZGUva2Rl YmFzZS9rb25xdWVyb3Iva29ucV9ndWljbGllbnRzLmNjLHYKcmV0cmlldmluZyByZXZpc2lvbiAx LjM1CmRpZmYgLXUgLTMgLXAgLXIxLjM1IGtvbnFfZ3VpY2xpZW50cy5jYwotLS0ga29ucV9ndWlj bGllbnRzLmNjCTIwMDAvMTIvMTUgMjM6MjA6MjgJMS4zNQorKysga29ucV9ndWljbGllbnRzLmNj CTIwMDEvMDUvMDkgMjE6MDA6MjgKQEAgLTI4NCwxMyArMjg0LDEzIEBAIHZvaWQgVG9nZ2xlVmll d0dVSUNsaWVudDo6c2F2ZUNvbmZpZyggYm8KIHZvaWQgVG9nZ2xlVmlld0dVSUNsaWVudDo6c2xv dFZpZXdBZGRlZCggS29ucVZpZXcgKnZpZXcgKQogewogICBRU3RyaW5nIG5hbWUgPSB2aWV3LT5z ZXJ2aWNlKCktPmRlc2t0b3BFbnRyeU5hbWUoKTsKLQogICBLQWN0aW9uICphY3Rpb24gPSBtX2Fj dGlvbnNbIG5hbWUgXTsKIAogICBpZiAoIGFjdGlvbiApCiAgIHsKICAgICBzdGF0aWNfY2FzdDxL VG9nZ2xlQWN0aW9uICo+KCBhY3Rpb24gKS0+c2V0Q2hlY2tlZCggdHJ1ZSApOwogICAgIHNhdmVD b25maWcoIHRydWUsIG5hbWUgKTsKKyAgICB2aWV3LT5mcmFtZSgpLT5oZWFkZXIoKS0+c2V0QWN0 aW9uKGFjdGlvbik7CiAgIH0KIH0KIApJbmRleDogZGlydHJlZS9rb25xX3RyZWVwYXJ0LmNwcAo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9rZGUva2RlYmFzZS9rb25xdWVyb3IvZGlydHJlZS9r b25xX3RyZWVwYXJ0LmNwcCx2CnJldHJpZXZpbmcgcmV2aXNpb24gMS44CmRpZmYgLXUgLTMgLXAg LXIxLjgga29ucV90cmVlcGFydC5jcHAKLS0tIGRpcnRyZWUva29ucV90cmVlcGFydC5jcHAJMjAw MS8wMS8xNCAxMjo1MTozOQkxLjgKKysrIGRpcnRyZWUva29ucV90cmVlcGFydC5jcHAJMjAwMS8w NS8wOSAyMTowMDoyOApAQCAtMTM3LDEwICsxMzcsMTYgQEAgS29ucVRyZWVQYXJ0OjpLb25xVHJl ZVBhcnQoIFFXaWRnZXQgKnBhcgogICAgIHNldFdpZGdldCggbV9wVHJlZSApOwogICAgIHNldElu c3RhbmNlKCBLb25xVHJlZUZhY3Rvcnk6Omluc3RhbmNlKCksIGZhbHNlICk7CiAgICAgbV91cmwu c2V0UGF0aCggUURpcjo6aG9tZURpclBhdGgoKSApOworICAgIFFUaW1lcjo6c2luZ2xlU2hvdCgw LCB0aGlzLCBTTE9UKHNldFRpdGxlKCkpKTsKIH0KIAogS29ucVRyZWVQYXJ0Ojp+S29ucVRyZWVQ YXJ0KCkKIHsKK30KKwordm9pZCBLb25xVHJlZVBhcnQ6OnNldFRpdGxlKCkKK3sKKyAgIG1fcFRy ZWUtPnNldENhcHRpb24oIiBTaWRlYmFyICIpOwogfQogCiBib29sIEtvbnFUcmVlUGFydDo6b3Bl blVSTCggY29uc3QgS1VSTCAmIHVybCApCkluZGV4OiBkaXJ0cmVlL2tvbnFfdHJlZXBhcnQuaAo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09ClJDUyBmaWxlOiAvaG9tZS9rZGUva2RlYmFzZS9rb25xdWVyb3IvZGlydHJlZS9r b25xX3RyZWVwYXJ0LmgsdgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuNApkaWZmIC11IC0zIC1wIC1y MS40IGtvbnFfdHJlZXBhcnQuaAotLS0gZGlydHJlZS9rb25xX3RyZWVwYXJ0LmgJMjAwMS8wMS8x NCAxMjo1MTozOQkxLjQKKysrIGRpcnRyZWUva29ucV90cmVlcGFydC5oCTIwMDEvMDUvMDkgMjE6 MDA6MjgKQEAgLTk2LDYgKzk2LDkgQEAgcHVibGljOgogCiAgICAgdm9pZCBlbWl0U3RhdHVzQmFy VGV4dCggY29uc3QgUVN0cmluZyYgdGV4dCApOwogCitwdWJsaWMgc2xvdHM6CisgICAgdm9pZCBz ZXRUaXRsZSgpOworCiBwcml2YXRlOgogICAgIEtvbnFUcmVlQnJvd3NlckV4dGVuc2lvbiAqIG1f ZXh0ZW5zaW9uOwogICAgIEtvbnFUcmVlICogbV9wVHJlZTsK --------------Boundary-00=_5S63IT1LW0C50CR42LIK--