This is a multi-part message in MIME format. --------------0CCA52067BC08F8444A78476 Content-Type: multipart/alternative; boundary="------------9A8090A25BB6D5E3494127DE" --------------9A8090A25BB6D5E3494127DE Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Greetings, Thank you for bringing this up Nate. The previous decade surely hasn't been phpBB's best. I must thank Eike for his wise reply. I also fail to see anything unacceptable about Nate's request. But I will still thank everyone for avoiding further damage, and because you all inspired me - albeit likely involuntarily - to blog a geekultural essay which I hope will make this "diskourse" (pun intended) even more konstruktive. I'm attaching here its essence, an algorithm in the form of pseudo-Java. Coming back to Nate's request, I've never used Discourse yet, but I'm confident that Discourse and phpBB are currently the 2 best free software forum engines available. And the wind has clearly turned in Discourse's favor. That being said, to my knowledge Debian does *not* use Discourse. In fact, at this time, Debian does not even *package* Discourse (although to be fair, it no longer packages phpBB neither - it hasn't since the previous stable release). One tool I do know is Docker, and I do agree that if Discourse has an absolute dependency on a tool of that maturity, we have an orange flag. I've never noticed any other application with an intentional absolute dependency on Docker. But the worst flag I can see is that Discourse seems to have no ITS. Of course, that's not the case for phpBB, so I would consider that as a red flag for an actual migration. Such a lack would obviously be a huge issue per se, but also speak quite poorly about Discourse's maturity. Anyway, if you think this deserves being duly evaluated at this point, the proper way to formulate such requests is via our ITS. In this case, you can file a ticket against the sysadmin product, or against forums.kde.org, which I believe is best if the goal is indeed to change that site's engine. There are 2 ways to do that: 1. Report each issue which you find problematic in forums.kde.org (phpBB) and which Discourse would solve or alleviate 2. Report an issue about forums.kde.org using a sub-optimal engine, a bit like https://bugs.kde.org/show_bug.cgi?id=417941. It is important to formulate such tickets carefully though - failing that, they are particularly likely to be mishandled. I would say none of these is clearly better than the other. #1 can be considered cleaner / more useful, but #2 will likely require less time if your efforts truly result in a quick migration. It's also possible to combine both. It would be a shame to do that without cross-referencing the relevant tickets. Bugzilla offers a "Blocks" relationship between tickets, which would enable us to mark #1 issues as blocked by the ticket from #2, except for the fact that there are in fact many more ways to fix each individual issue than migrating. Jira offers a much more less restrictive (and much vaguer) "relates to" relationship. Having that on bugs.kde.org would be helpful... but meanwhile, relations can be mentioned in the text. P.S. It seems you forgot to Cc whoever "Adam" is. Le 2021-02-23 à 19:34, Eike Hein a écrit : > Hey, > > This all sounds much too confrontational :-). Come on everyone, we can > do this much better. > > Ben, I don't think Nate's request implies prioritization. For folks > outside a particular team it can be difficult to follow what the team > has on their plate at the moment; you probably also wouldn't know the > same about Nate's VDG/QA space. > > Everyone knows that sysadmin is working hard all the time, but it has > to still be possible to do roadmap planning. In fact it's one of the > best ways to avoid getting overcommitted in the future. Declaring a > goal and/or agreeing to work on it in the abstract doesn't mean it has > to be done straight away or rushed, but it e.g. allows attracting > contributors to the goal to get the work done, as also seen in the > thread already. > > The idea of adopting Discourse as a replacement for the old forums has > been around for a number of years, and I would say it's probably > become more compelling with time. KDE Forums hasn't seen a lot of work > and Discourse has risen 8n popularity and familiarity. It's at least > worth investigating with an open mind now. If the investigation finds > road blocks (capacity, technical, others) we can discuss them further > - constructively, without being strangely afraid others will make > decisions without them. The only way that happens is by not communicating. > > I would suggest making a rough proposal on what this really means > operationally. How would we migrate, how would we sundown, what sort > of work would Discourse need, what sort of setup and infra are > required. Sysadmin should ideally provide input there based on > experience, implementation policy, etc. Then we know what we need, > what we don't have, and what we think we should do about it. > > > > Cheers, > Eike > > > > > On February 24, 2021 1:21:14 AM GMT+01:00, Nate Graham > wrote: > > On 2/23/21 4:07 PM, Nate Graham wrote: > > On 2/23/21 3:53 PM, Ben Cooksley wrote: > > May I take this as a formal request from yourself that > Gitlab CI is deprioritised and delayed? Based on the > extremely frequent requests we get concerning it in > #kde-sysadmin I am not sure if your request here is in > line with general community consensus. Also, be aware that > Sysadmin currently has other infrastructure level projects > underway needed to get us off Ubuntu 16.04, which are > currently delayed because we haven't had anyone volunteer > to assist us with adding support for OAuth2/MyKDE to > Reimbursements. Based on the above, I assume you are also > requesting that we delay this, and accept the > corresponding security issues that will accompany it when > Ubuntu 16.04 loses support in the coming months in order > to get this actioned? > > Hmm, I don't see where I suggested any of those things. If you > folks are really that overloaded, we need to figure out how to > fix that. A workload that exceeds available resources doesn't > help anyone. The last time this came up, people called for > additional volunteers to assist. Did that end up bearing any > fruit? > > > Anyway I apologize if my tone was off. I wasn't meaning to accuse > sysadmins of anything, and I guess I didn't realize how overloaded the > team is right now. > > That being what it is, perhaps a more productive line of discussion > would be to ask: "what do you need from us so that these things that > need to happen, and that we all want, can reach fruition faster?" You > don't have to suffer in silence! :) > > Nate > > > -- > Sent from my Android device with K-9 Mail. Please excuse my brevity. -- Philippe Cloutier http://www.philippecloutier.com --------------9A8090A25BB6D5E3494127DE Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit

Greetings,
Thank you for bringing this up Nate. The previous decade surely hasn't been phpBB's best.

I must thank Eike for his wise reply. I also fail to see anything unacceptable about Nate's request. But I will still thank everyone for avoiding further damage, and because you all inspired me - albeit likely involuntarily - to blog a geekultural essay which I hope will make this "diskourse" (pun intended) even more konstruktive. I'm attaching here its essence, an algorithm in the form of pseudo-Java.


Coming back to Nate's request, I've never used Discourse yet, but I'm confident that Discourse and phpBB are currently the 2 best free software forum engines available. And the wind has clearly turned in Discourse's favor. That being said, to my knowledge Debian does *not* use Discourse. In fact, at this time, Debian does not even *package* Discourse (although to be fair, it no longer packages phpBB neither - it hasn't since the previous stable release).

One tool I do know is Docker, and I do agree that if Discourse has an absolute dependency on a tool of that maturity, we have an orange flag. I've never noticed any other application with an intentional absolute dependency on Docker.
But the worst flag I can see is that Discourse seems to have no ITS. Of course, that's not the case for phpBB, so I would consider that as a red flag for an actual migration. Such a lack would obviously be a huge issue per se, but also speak quite poorly about Discourse's maturity.


Anyway, if you think this deserves being duly evaluated at this point, the proper way to formulate such requests is via our ITS. In this case, you can file a ticket against the sysadmin product, or against forums.kde.org, which I believe is best if the goal is indeed to change that site's engine. There are 2 ways to do that:

  1. Report each issue which you find problematic in forums.kde.org (phpBB) and which Discourse would solve or alleviate
  2. Report an issue about forums.kde.org using a sub-optimal engine, a bit like https://bugs.kde.org/show_bug.cgi?id=417941. It is important to formulate such tickets carefully though - failing that, they are particularly likely to be mishandled.

I would say none of these is clearly better than the other. #1 can be considered cleaner / more useful, but #2 will likely require less time if your efforts truly result in a quick migration.

It's also possible to combine both. It would be a shame to do that without cross-referencing the relevant tickets. Bugzilla offers a "Blocks" relationship between tickets, which would enable us to mark #1 issues as blocked by the ticket from #2, except for the fact that there are in fact many more ways to fix each individual issue than migrating. Jira offers a much more less restrictive (and much vaguer) "relates to" relationship. Having that on bugs.kde.org would be helpful... but meanwhile, relations can be mentioned in the text.

P.S. It seems you forgot to Cc whoever "Adam" is.

Le 2021-02-23 à 19:34, Eike Hein a écrit :
Hey,

This all sounds much too confrontational :-). Come on everyone, we can do this much better.

Ben, I don't think Nate's request implies prioritization. For folks outside a particular team it can be difficult to follow what the team has on their plate at the moment; you probably also wouldn't know the same about Nate's VDG/QA space.

Everyone knows that sysadmin is working hard all the time, but it has to still be possible to do roadmap planning. In fact it's one of the best ways to avoid getting overcommitted in the future. Declaring a goal and/or agreeing to work on it in the abstract doesn't mean it has to be done straight away or rushed, but it e.g. allows attracting contributors to the goal to get the work done, as also seen in the thread already.

The idea of adopting Discourse as a replacement for the old forums has been around for a number of years, and I would say it's probably become more compelling with time. KDE Forums hasn't seen a lot of work and Discourse has risen 8n popularity and familiarity. It's at least worth investigating with an open mind now. If the investigation finds road blocks (capacity, technical, others) we can discuss them further - constructively, without being strangely afraid others will make decisions without them. The only way that happens is by not communicating.

I would suggest making a rough proposal on what this really means operationally. How would we migrate, how would we sundown, what sort of work would Discourse need, what sort of setup and infra are required. Sysadmin should ideally provide input there based on experience, implementation policy, etc. Then we know what we need, what we don't have, and what we think we should do about it.



Cheers,
Eike




On February 24, 2021 1:21:14 AM GMT+01:00, Nate Graham <nate@kde.org> wrote:
On 2/23/21 4:07 PM, Nate Graham wrote:
On 2/23/21 3:53 PM, Ben Cooksley wrote:
May I take this as a formal request from yourself that Gitlab CI is deprioritised and delayed? Based on the extremely frequent requests we get concerning it in #kde-sysadmin I am not sure if your request here is in line with general community consensus. Also, be aware that Sysadmin currently has other infrastructure level projects underway needed to get us off Ubuntu 16.04, which are currently delayed because we haven't had anyone volunteer to assist us with adding support for OAuth2/MyKDE to Reimbursements. Based on the above, I assume you are also requesting that we delay this, and accept the corresponding security issues that will accompany it when Ubuntu 16.04 loses support in the coming months in order to get this actioned?
Hmm, I don't see where I suggested any of those things. If you folks are really that overloaded, we need to figure out how to fix that. A workload that exceeds available resources doesn't help anyone. The last time this came up, people called for additional volunteers to assist. Did that end up bearing any fruit?
Anyway I apologize if my tone was off. I wasn't meaning to accuse sysadmins of anything, and I guess I didn't realize how overloaded the team is right now. That being what it is, perhaps a more productive line of discussion would be to ask: "what do you need from us so that these things that need to happen, and that we all want, can reach fruition faster?" You don't have to suffer in silence! :) Nate

--
Sent from my Android device with K-9 Mail. Please excuse my brevity.
-- 
Philippe Cloutier
http://www.philippecloutier.com
--------------9A8090A25BB6D5E3494127DE-- --------------0CCA52067BC08F8444A78476 Content-Type: text/plain; charset=UTF-8; name="FingerSaver.java" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="FingerSaver.java" aW1wb3J0IEh1bWFuRW11bGF0aW9uLkZlZWxpbmc7DQppbXBvcnQgSHVtYW5FbXVsYXRpb24u SnVkZ21lbnQ7DQppbXBvcnQgTGlmZS4qOw0KaW1wb3J0IEludGVybmV0Lk1lc3NhZ2U7DQoN Ci8vIEZJWE1FOiBVbmxpa2VseSB0byBidWlsZCB3aXRob3V0IC0tbGVuaWVuY3k9bWF4DQoN CnB1YmxpYyBjbGFzcyBGaW5nZXJTYXZlciB7DQogICAgcHVibGljIHN0YXRpYyB2b2lkIG1h aW4oU3RyaW5nIGFyZ3NbXSApIHRocm93cyBFeGNlcHRpb24gew0KICAgICAgICBNZXNzYWdl IGluY29taW5nID0gTWVzc2FnZS5nZXRMYXRlc3QoKTsNCiAgICAgICAgaW5jb21pbmcucmVh ZCgpOw0KICAgICAgICBpZiAoISBpbmNvbWluZy5yZXBseVdhcnJhbnRlZCgpKSB7DQogICAg ICAgICAgICBTeXN0ZW0uZXhpdChGZWVsaW5nLkhBUFBZKTsNCiAgICAgICAgfQ0KICAgICAg ICBpZiAoaW5jb21pbmcuaXNVcmdlbnQoKSkgew0KICAgICAgICAgICAgaW5jb21pbmcucHJv Y2Vzc1JlZ3VsYXIoKTsNCiAgICAgICAgICAgIFN5c3RlbS5leGl0KDApOw0KICAgICAgICB9 DQoNCiAgICAgICAgVGhyZWFkIHRob3VnaHQgPSBuZXcgRGVlcFRoaW5rZXIoaW5jb21pbmcp Ow0KICAgICAgICB0aG91Z2h0LnN0YXJ0KCk7DQoNCiAgICAgICAgLy8gSWYgd2UgdXNlIFRo dW5kZXJiaXJkIHdpdGggWE5vdGUrKywgd2UgY291bGQgc3RvcmUgcXVpY2sgaWRlYXMgYWJv dXQgd2hhdCB0byByZXBseSBhcyBhIG5vdGUuDQogICAgICAgIFN0cmluZyBza2VsZXRvbiA9 IHRob3VnaHQuZ2V0Rmlyc3RSZXBseUlkZWFzKCk7DQoNCiAgICAgICAgTWVzc2FnZSBpbml0 aWFsVmVyc2lvbiA9IG51bGwsIHByZXZpb3VzVmVyc2lvbiA9IG51bGwsIGxhdGVzdFZlcnNp b24gPSBudWxsOyAvLyBSZXBseSB2ZXJzaW9ucw0KICAgICAgICBkbyB7DQogICAgICAgICAg ICBpZiAobGF0ZXN0VmVyc2lvbiAhPSBudWxsKSB7DQogICAgICAgICAgICAgICAgcHJldmlv dXNWZXJzaW9uID0gbGF0ZXN0VmVyc2lvbjsNCiAgICAgICAgICAgICAgICBpZiAoaW5pdGlh bFZlcnNpb24gPT0gbnVsbCkgew0KICAgICAgICAgICAgICAgICAgICBpbml0aWFsVmVyc2lv biA9IGxhdGVzdFZlcnNpb247DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICBJbnRlZ2VyIHRvbmd1ZVR1cm5zID0gNzsNCg0KICAgICAgICAgICAg ZmVlbGluZyA9IEZlZWxpbmcuZ2V0Q3VycmVudCgpOw0KICAgICAgICAgICAgdG9uZ3VlVHVy bnMgPSB0b25ndWVUdXJucyArIGZlZWxpbmcuZ2V0QW5nZXIoKTsNCg0KICAgICAgICAgICAg LyogSW5jcmVhc2UgcXVhbGl0eSBwcm9wb3J0aW9uYWxseSB0byB0aGUgbnVtYmVyIG9mIHJl YWRlcnMNCiAgICAgICAgICAgIEFsc28gcmVkdWNlIGNvbGxpc2lvbiByaXNrDQogICAgICAg ICAgICBUT0RPOiBNYWtlIGxvZ2FyaXRobWljIHJhdGhlciB0aGFuIGxpbmVhciAqLw0KICAg ICAgICAgICAgdG9uZ3VlVHVybnMgKj0gTWVzc2FnZS5nZXRQZW9wbGVJbkRpc2N1c3Npb24o KTsNCg0KICAgICAgICAgICAgaWYgKE1lc3NhZ2UuaXNFbWFpbCgpKSB7DQogICAgICAgICAg ICAgICAgLy8gV2Ugd29uJ3QgYmUgYWJsZSB0byBkZWxldGUgb3IgbW9kaWZ5IG91ciBtZXNz YWdlIGlmIHdlIHNlbmQgaXQgdG9vIGZhc3QsIHNvIGJldHRlciBwbGF5IHNhZmUuDQogICAg ICAgICAgICAgICAgdG9uZ3VlVHVybnMgKj0gMjsNCiAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgLy8gTGV0IG91ciBkZWVwIHRoaW5raW5nIHRocmVhZCBkbyBpdHMgbWFnaWMgd2hp bGUgd2UncmUgZWF0aW5nLCBzaG93ZXJpbmcsIHRyYWluaW5nLCBjb21tdXRpbmcsIGV0Yy4N CiAgICAgICAgICAgIHRob3VnaHQucG9uZGVyRm9ySG91cnModG9uZ3VlVHVybnMpOw0KDQog ICAgICAgICAgICB3YWl0KCk7IC8vIEl0IG1heSB0YWtlIHNvbWUgbW9yZSB0aW1lIGJlZm9y ZSBIdW1hbkVtdWxhdGlvbiB3YWtlcyB1cyB1cCBpZiB3ZSdyZSBidXN5IG9yIG5vdCBmZWVs aW5nIGdvb2QuDQoNCiAgICAgICAgICAgIEFycmF5PE1lc3NhZ2U+IHJlcGxpZXNGcm9tT3Ro ZXJzID0gaW5jb21pbmcuZ2V0UmVwbGllcygpOw0KICAgICAgICAgICAgaWYgKCEgc2tlbGV0 b24ud29ydGhXcml0aW5nKHJlcGxpZXNGcm9tT3RoZXJzKSkgew0KICAgICAgICAgICAgICAg IHRocm93IG5ldyBFeGNlcHRpb24oIldlJ3JlIGV4Y2VwdGlvbmFsbHkgc21hcnQ7IHdlIG1h bmFnZWQgdG8gbGV0IHNvbWVvbmUgZWxzZSBkbyB0aGUgam9iISIpOw0KICAgICAgICAgICAg ICAgIExpZmUuZW5qb3koKTsNCiAgICAgICAgICAgICAgICBpZiAoTGlmZS5nZXRGcmVlVGlt ZSgpKSB7DQogICAgICAgICAgICAgICAgICAgIC8qIElmIHdlIHNhdmVkIHNvIG11Y2ggdGlt ZSB0aGF0IHdlJ3JlIG5vdyBmZWVsaW5nIGd1aWx0eSBhYm91dCBoYXZpbmcgc29tZSBmcmVl IHRpbWUsDQogICAgICAgICAgICAgICAgICAgIHVzZSBpdCB0byBhdHRyYWN0IG5ldyByZWNy dWl0cyBpbiBvdXIgdGVhbS4NCiAgICAgICAgICAgICAgICAgICAgVGhpcyBzaG91bGQgYmUg ZWFzaWVyIG5vdyB0aGF0IG91ciB0ZWFtIGhhcyBxdWFsaXR5IGNvbW11bmljYXRpb24NCiAg ICAgICAgICAgICAgICAgICAgYW5kIGxvb2tzIGxpa2UgYSBncm93dGggb3Bwb3J0dW5pdHkg Zm9yIHByb3NwZWN0cywNCiAgICAgICAgICAgICAgICAgICAgcmF0aGVyIHRoYW4gYW4gaW1t YXR1cmUgYW5kIG92ZXJ3b3JrLWZydXN0cmF0ZWQgY3Jldy4gKi8NCiAgICAgICAgICAgICAg ICAgICAgcmVjcnVpdE5ld0NvbGxlYWd1ZXMoKTsNCiAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgRmVlbGluZy5zdHJlc3MtLTsNCiAgICAgICAgICAgICAgICBTeXN0ZW0u ZXhpdChGZWVsaW5nLkhBUFBZKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgaW5j b21pbmcucmVhZCgpOyAvLyBXQVJOSU5HOiBtb3ZpbmcgdGhpcyBvdXQgb2YgdGhlIGxvb3Ag d2lsbCBOT1Qgb3B0aW1pemUhDQoNCiAgICAgICAgICAgIC8qIFRvIGJlIHRydWx5IGV2aWws IGlmIG90aGVycyBhbHJlYWR5IG1hZGUgc29tZSBvZiBvdXIgcG9pbnRzLCByZW1lbWJlciB0 byB0aGFuayB0aGVtLA0KICAgICAgICAgICAgdG8gZW5jb3VyYWdlIHRoZW0gdG8ga2VlcCBk b2luZyBvdXIgam9iIGluIHRoZSBmdXR1cmUhICovDQogICAgICAgICAgICAvLyBXZSB1c3Vh bGx5IHN0b3JlIGEgcmVwbHkgYXMgYSBkcmFmdCBpbiBhbiBNVUEuDQogICAgICAgICAgICBp ZiAobGF0ZXN0VmVyc2lvbiA9PSBudWxsKSB7DQogICAgICAgICAgICAgICAgbGF0ZXN0VmVy c2lvbiA9IGluY29taW5nLmdlbmVyYXRlUmVwbHlGcm9tSWRlYXMoc2tlbGV0b24sIHJlcGxp ZXNGcm9tT3RoZXJzKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAg bGF0ZXN0VmVyc2lvbi5yZWFkQ2FyZWZ1bGx5KCk7DQoNCiAgICAgICAgICAgICAgICAvKiBJ ZiB0aGUgc2VuZGVyIGRpc2N1c3NlZCBhIHZhbGlkIHByb2JsZW0gYW5kIGl0J3MgbmVjZXNz YXJ5IHRvIGRpc2N1c3MgdGltZWZyYW1lcywNCiAgICAgICAgICAgICAgICB3ZSBjYW4gdXNl IHRoaXMgb3Bwb3J0dW5pdHkgdG8gdHJ5IGVudGljaW5nIHRoZW0gdG8gaGVscA0KICAgICAg ICAgICAgICAgIG1lbnRpb25pbmcgdGhhdCBtb3JlICpza2lsbGVkKiBtYW5wb3dlciB3b3Vs ZCBzcGVlZCB1cC4gKi8NCiAgICAgICAgICAgICAgICBsYXRlc3RWZXJzaW9uID0gaW5jb21p bmcucmV2aWV3UmVwbHkobGF0ZXN0VmVyc2lvbiwgcmVwbGllc0Zyb21PdGhlcnMpOw0KICAg ICAgICAgICAgfQ0KICAgICAgICB9IHdoaWxlIChwcmV2aW91c1ZlcnNpb24gPT0gbnVsbCB8 fCAhIEp1ZGdtZW50LmFyZVNpbWlsYXIocHJldmlvdXNWZXJzaW9uLCBsYXRlc3RWZXJzaW9u KSk7DQogICAgICAgIE1lc3NhZ2UgcmVwbHkgPSBsYXRlc3RWZXJzaW9uOw0KDQogICAgICAg IGlmIChyZXBseS5nZXRWYWx1ZVRvUmVhZGVycygpIDwgcmVwbHkuZ2V0Q29zdFRvUmVhZCgp KSB7DQogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIkFib3J0aW5nIGR1ZSB0byBu ZWdhdGl2ZSBuZXQgdmFsdWUiKTsNCiAgICAgICAgICAgIFN5c3RlbS5leGl0KDEpOw0KICAg ICAgICB9DQoNCiAgICAgICAgLyogV2UgZW5kZWQgdXAgaGF2aW5nIHRvIHJlcGx5IGFueXdh eSwgYnV0IGF0IGxlYXN0LCBpZiBvdGhlcnMgcmVwbGllZCBmaXJzdCwNCiAgICAgICAgIHdl IGhhdmUgbGVzcyB0byB3cml0ZSwgYW5kIHdlIGxldCB0aGVtIGRvIHNvbWUgcmVzZWFyY2gg YW5kIHByYWN0aWNlIHRoZWlyIHdyaXRpbmcgc2tpbGxzLA0KICAgICAgICAgc28gd2UgZ2V0 IGxlZnQgd2l0aCBldmVuIGxlc3Mgb24gb3VyIHBsYXRlIG5leHQgdGltZS4NCg0KICAgICAg ICAgQW5kIHRoZSBiZXN0IHBhcnQgaXMgdGhhdCB3aXRoIGFsbCB0aGVzZSB0b25ndWUgdHVy bnMsIHdlJ3JlIG1vcmUgbGlrZWx5IHJlcGx5aW5nIGR1cmluZyB0aGUgd2Vla2VuZCwNCiAg ICAgICAgIHdoaWNoIG1lYW5zIGl0J3MgbW9yZSBsaWtlbHkgcmVjaXBpZW50cyB3aWxsIHJl YWQgdXMgb24gYSB3ZWVrZW5kIGFuZCB3aWxsIGhhdmUgYSBjb29sZXIgcmVhY3Rpb24sDQog ICAgICAgICBldmVuIGlmIHRoZXkncmUgbGFja2luZyBGaW5nZXJTYXZlciEgKi8NCiAgICAg ICAgcmVwbHkuc2VuZCgpOw0KDQogICAgICAgIC8qIElmIHdlJ3JlIGx1Y2t5LCBvdXIgcmVw bHkgd2FzIGV4aGF1c3RpdmUgYW5kIGJvcmluZy4NCiAgICAgICAgIFdlIHdvbid0IG5lZWQg dG8gYW5zd2VyIGZvbGxvdy11cCBxdWVzdGlvbnMgb3IgY2xhcmlmeS9qdXN0aWZ5IHdoYXQg d2Ugd3JvdGUuDQogICAgICAgICBTbyB3ZSBzaG91bGRuJ3QgYmUgYmFjayBoZXJlIGZvciBh IHdoaWxlLCBidXQgcGxheSBzYWZlLiAqLw0KICAgICAgICBzbGVlcChBX0JJVCk7DQoNCiAg ICAgICAgLyogV293LCB3ZSBtYW5hZ2VkIHRvIHdyaXRlIGFuIGluY3JlZGlibHkgaW5zaWdo dGZ1bCByZXBseSwNCiAgICAgICAgIHdoaWNoIG1ha2VzIHVzIGxvb2sgbXVjaCBtb3JlIGJy aWxsaWFudCB0aGFuIHRoZSBzdHVwaWQgcHJvZ3JhbSB3ZSdyZSB1c2luZyENCiAgICAgICAg IFdpdGggYWxsIHRoZSB0aW1lIHdlIHNhdmVkLCB3ZSBjYW4gaW50ZWdyYXRlIHRoZSBwZW9w bGUgd2hvIHdpbGwgdm9sdW50ZWVyIHRvIGhlbHAgdXMuDQogICAgICAgICBBbmQgaW4gY2Fz ZSB0aGVzZSB0YWtlIHNvbWUgdGltZSB0byBzaG93IHVwLCB3aGlsZSB0aGV5J3JlIGRpZ2Vz dGluZyB0aGUgZnVsbCBleHRlbnQgb2Ygb3VyIGdlbml1cywNCiAgICAgICAgIHdlIGNhbiB2 YWxpZGF0ZSB0aGF0IG91ciBpc3N1ZSB0cmFja2VyIHByb3Blcmx5IHJlZmxlY3RzIG91ciBs b2FkIGxldmVsLA0KICAgICAgICAgYW5kIGlmIGl0J3MgcmVhbGx5IHVyZ2VudCwgY2FsbCBm b3IgaGVscC4gKi8NCg0KICAgICAgICBGZWVsaW5nLnN0cmVzcy0tOyAvLyBXZSB3b24ndCBo YXZlIHRvIGRlZmVuZCBoYXZpbmcgc2FpZCBzb21ldGhpbmcgc3R1cGlkLg0KDQoNCiAgICAg ICAgLyogV2UncmUgYmFkIGp1ZGdlcyBvZiBvdXIgb3duIGVtb3Rpdml0eSwgYnV0IHdlIGNh biBhdCBsZWFzdCBzZWUgaG93IG11Y2ggd2UgaW1wcm92ZWQNCiAgICAgICAgIHRvIGVzdGlt YXRlIHRoZSBtaW5pbXVtIGVtb3Rpdml0eSB3ZSB3ZXJlIHVuZGVyLiAqLw0KICAgICAgICBG bG9hdCBjbGltYXRlQ2hhbmdlUmVkdWN0aW9uRmFjdG9yID0NCiAgICAgICAgICAgICAgICBK dWRnbWVudC5nZXRGbGFtbWFiaWxpdHkoaW5pdGlhbFZlcnNpb24pIC8gSnVkZ21lbnQuZ2V0 RmxhbW1hYmlsaXR5KGxhdGVzdFZlcnNpb24pOw0KDQogICAgICAgIC8qIEluIGNhc2Ugb3Vy IGluaXRpYWwgcmVhY3Rpb24gdHVybmVkIG91dCBleGNlc3NpdmVseSBpbmZsYW1tYXRvcnks DQogICAgICAgIGFkanVzdCBvdXIgc3lzdGVtJ3MgYmFsYW5jZSBiZXR3ZWVuIGxvbmdldml0 eSBhbmQgcGVyZm9ybWFuY2UuICovDQogICAgICAgIFN5c3RlbS50aHJvdHRsZUJ5RmFjdG9y KGNsaW1hdGVDaGFuZ2VSZWR1Y3Rpb25GYWN0b3IpOw0KICAgIH0NCn0NCi8vIFRPRE86IEV4 cGFuZCB0byBoZWxwIHRydWx5IGhlYWxpbmcgZnJvbSBidXJub3V0LiBBdCB0aGlzIHBvaW50 LCB0aGlzIG9ubHkgYWltcyB0byBoZWxwIHdpdGggb3ZlcndvcmsuDQo= --------------0CCA52067BC08F8444A78476--