From mboxrd@z Thu Jan 1 00:00:00 1970 From: raja gobi Subject: WARN_ON(!rt_rq->rt_nr_running) question? Date: Tue, 10 Feb 2009 19:17:57 -0800 (PST) Message-ID: <229545.37726.qm@web59515.mail.ac4.yahoo.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="0-865079110-1234322277=:37726" To: linux-rt-users@vger.kernel.org Return-path: Received: from web59515.mail.ac4.yahoo.com ([76.13.12.219]:34986 "HELO web59515.mail.ac4.yahoo.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1753240AbZBKDR7 (ORCPT ); Tue, 10 Feb 2009 22:17:59 -0500 Sender: linux-rt-users-owner@vger.kernel.org List-ID: --0-865079110-1234322277=:37726 Content-Type: text/plain; charset=us-ascii Hi all, This is a question about sched_rt.c. I am hoping this is the correct mailing list for such questions. If not, could somebody direct me to the correct place? I am using 2.6.25.16 on an MX27 (ARM) While running a process with 3 threads using RT scheduler (priorities at RT, -93 and -87), get the WARN_ON() WARN_ON(!rt_rq->rt_nr_running) I also see WARN_ON(rt_se_prio(rt_se) < rt_rq->highest_prio); Both these warnings are very rare. This happens after running the application for several hours (> 6 hours) to a small number of days (1 or 2 days) CONFIG_SMP is not enabled CONFIG_RT_GROUP_SCHED is enabled As it happens very rarely, it has been hard to track it down. Does anybody know of any issues in this area in 2.6.25.16 and if yes, what is the best way to address this? I am attaching the dump_stack() output. Thanks much for your help, -raja. --0-865079110-1234322277=:37726 Content-Type: text/plain; name="warn_on_slowpath.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="warn_on_slowpath.txt" LS0tLS0tLS0tLS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tCldBUk5JTkc6 IGF0IGtlcm5lbC9zY2hlZF9ydC5jOjMwNiBkZXF1ZXVlX3J0X2VudGl0eSsw eDIwNC8weDIxYygpCk1vZHVsZXMgbGlua2VkIGluOiBkZHJpdmVyCls8YzAw MjI1MjQ+XSAoZHVtcF9zdGFjaysweDAvMHgxNCkgZnJvbSBbPGMwMDM0Mjk0 Pl0gKHdhcm5fb25fc2xvd3BhdGgrMHg0Yy8weDYwKQpbPGMwMDM0MjQ4Pl0g KHdhcm5fb25fc2xvd3BhdGgrMHgwLzB4NjApIGZyb20gWzxjMDAyYzRlND5d IChkZXF1ZXVlX3J0X2VudGl0eSsweDIwNC8weDIxYykKIHI2OmMwMmMzZDkw IHI1OjAwMDAwMDAwIHI0OmMwMmMzOTk4Cls8YzAwMmMyZTA+XSAoZGVxdWV1 ZV9ydF9lbnRpdHkrMHgwLzB4MjFjKSBmcm9tIFs8YzAwMmM1NDA+XSAoZGVx dWV1ZV9ydF9zdGFjaysweDQ0LzB4NTApCiByNjpjN2M0YThjMCByNTowMDAw MGZhZCByNDpjN2M0YWExOApbPGMwMDJjNGZjPl0gKGRlcXVldWVfcnRfc3Rh Y2srMHgwLzB4NTApIGZyb20gWzxjMDAyYzkxMD5dIChlbnF1ZXVlX3Rhc2tf cnQrMHgyOC8weDQ4KQogcjQ6YzdjNGFhMTgKWzxjMDAyYzhlOD5dIChlbnF1 ZXVlX3Rhc2tfcnQrMHgwLzB4NDgpIGZyb20gWzxjMDAyYjZkND5dIChlbnF1 ZXVlX3Rhc2srMHg0NC8weDU4KQogcjQ6MTIyOTM0ZTAKWzxjMDAyYjY5MD5d IChlbnF1ZXVlX3Rhc2srMHgwLzB4NTgpIGZyb20gWzxjMDAyYjcxND5dIChh Y3RpdmF0ZV90YXNrKzB4MmMvMHgzYykKIHI2OmMwMmMzZDE4IHI1OmM3YzRh OGMwIHI0OmMwMmMzZDE4Cls8YzAwMmI2ZTg+XSAoYWN0aXZhdGVfdGFzaysw eDAvMHgzYykgZnJvbSBbPGMwMDJmZWUwPl0gKHRyeV90b193YWtlX3VwKzB4 MTA4LzB4MTMwKQogcjU6YzdjNGE4YzAgcjQ6MDAwMDAwMDEKWzxjMDAyZmRk OD5dICh0cnlfdG9fd2FrZV91cCsweDAvMHgxMzApIGZyb20gWzxjMDAyZmYx Yz5dIChkZWZhdWx0X3dha2VfZnVuY3Rpb24rMHgxNC8weDE4KQogcjk6MDAw MDAwMDAgcjg6MDAwMDAwMDAgcjc6MDAwMDAwMDAgcjY6YmYwMThiY2MgcjU6 MDAwMDAwMDAKcjQ6YzdmZTVlYTgKWzxjMDAyZmYwOD5dIChkZWZhdWx0X3dh a2VfZnVuY3Rpb24rMHgwLzB4MTgpIGZyb20gWzxjMDA0YjRlYz5dIChhdXRv cmVtb3ZlX3dha2VfZnVuY3Rpb24rMHgxOC8weDQwKQpbPGMwMDRiNGQ0Pl0g KGF1dG9yZW1vdmVfd2FrZV9mdW5jdGlvbisweDAvMHg0MCkgZnJvbSBbPGMw MDJiMmYwPl0gKF9fd2FrZV91cF9jb21tb24rMHg1OC8weDg4KQogcjQ6YmYw MThiYzAKWzxjMDAyYjI5OD5dIChfX3dha2VfdXBfY29tbW9uKzB4MC8weDg4 KSBmcm9tIFs8YzAwMmRkM2M+XSAoX193YWtlX3VwKzB4NGMvMHg3YykKWzxj MDAyZGNmMD5dIChfX3dha2VfdXArMHgwLzB4N2MpIGZyb20gWzxiZjAwMmY0 OD5dIChkZHJpdmVybWJveF9ldmVudF9yZWFkZXIrMHgxZjAvMHgzYjQgW2Rk cml2ZXJdKQogcjg6MDAwMDAwMDAgcjc6MDAwMDAwMDAgcjY6MDAwMDAwMDEg cjU6MDAwMDAwMDEgcjQ6YmYwMThhZTgKWzxiZjAwMmQ1OD5dIChkZHJpdmVy X2V2ZW50X3JlYWRlcisweDAvMHgzYjQgW2Rkcml2ZXJdKSBmcm9tIFs8YzAw NDZmZDg+XSAocnVuX3dvcmtxdWV1ZSsweGQ4LzB4MWEwKQpbPGMwMDQ2ZjAw Pl0gKHJ1bl93b3JrcXVldWUrMHgwLzB4MWEwKSBmcm9tIFs8YzAwNDdiZjg+ XSAod29ya2VyX3RocmVhZCsweDc4LzB4ZDApCiByODowMDAwMDAwMCByNzow MDAwMDAwMCByNjpjN2MyN2ZhYyByNTpjN2MwMTllOCByNDpjN2MwMTllMApb PGMwMDQ3YjgwPl0gKHdvcmtlcl90aHJlYWQrMHgwLzB4ZDApIGZyb20gWzxj MDA0YjEyMD5dIChrdGhyZWFkKzB4NTAvMHg3YykKIHI2OjAwMDAwMDAwIHI1 OmMwMDQ3YjgwIHI0OmM3YzAxOWUwCls8YzAwNGIwZDA+XSAoa3RocmVhZCsw eDAvMHg3YykgZnJvbSBbPGMwMDM4MWJjPl0gKGRvX2V4aXQrMHgwLzB4NmMw KQogcjU6MDAwMDAwMDAgcjQ6MDAwMDAwMDAKLS0tWyBlbmQgdHJhY2UgODQx MzU2MTBiYWY2ZDlkMyBdLS0tCi0tLS0tLS0tLS0tLVsgY3V0IGhlcmUgXS0t LS0tLS0tLS0tLQpXQVJOSU5HOiBhdCBrZXJuZWwvc2NoZWRfcnQuYzozMTIg ZGVxdWV1ZV9ydF9lbnRpdHkrMHgxYTgvMHgyMWMoKQpNb2R1bGVzIGxpbmtl ZCBpbjogZGRyaXZlcgpbPGMwMDIyNTI0Pl0gKGR1bXBfc3RhY2srMHgwLzB4 MTQpIGZyb20gWzxjMDAzNDI5ND5dICh3YXJuX29uX3Nsb3dwYXRoKzB4NGMv MHg2MCkKWzxjMDAzNDI0OD5dICh3YXJuX29uX3Nsb3dwYXRoKzB4MC8weDYw KSBmcm9tIFs8YzAwMmM0ODg+XSAoZGVxdWV1ZV9ydF9lbnRpdHkrMHgxYTgv MHgyMWMpCiByNjpjMDJjM2Q5MCByNTpmZmZmZmZmZiByNDpjMDJjMzk5OApb PGMwMDJjMmUwPl0gKGRlcXVldWVfcnRfZW50aXR5KzB4MC8weDIxYykgZnJv bSBbPGMwMDJjNTQwPl0gKGRlcXVldWVfcnRfc3RhY2srMHg0NC8weDUwKQog cjY6YzdjNGE4YzAgcjU6MDAwMDBmYWQgcjQ6YzdjNGFhMTgKWzxjMDAyYzRm Yz5dIChkZXF1ZXVlX3J0X3N0YWNrKzB4MC8weDUwKSBmcm9tIFs8YzAwMmM5 MTA+XSAoZW5xdWV1ZV90YXNrX3J0KzB4MjgvMHg0OCkKIHI0OmM3YzRhYTE4 Cls8YzAwMmM4ZTg+XSAoZW5xdWV1ZV90YXNrX3J0KzB4MC8weDQ4KSBmcm9t IFs8YzAwMmI2ZDQ+XSAoZW5xdWV1ZV90YXNrKzB4NDQvMHg1OCkKIHI0OjEy MjkzNGUwCls8YzAwMmI2OTA+XSAoZW5xdWV1ZV90YXNrKzB4MC8weDU4KSBm cm9tIFs8YzAwMmI3MTQ+XSAoYWN0aXZhdGVfdGFzaysweDJjLzB4M2MpCiBy NjpjMDJjM2QxOCByNTpjN2M0YThjMCByNDpjMDJjM2QxOApbPGMwMDJiNmU4 Pl0gKGFjdGl2YXRlX3Rhc2srMHgwLzB4M2MpIGZyb20gWzxjMDAyZmVlMD5d ICh0cnlfdG9fd2FrZV91cCsweDEwOC8weDEzMCkKIHI1OmM3YzRhOGMwIHI0 OjAwMDAwMDAxCls8YzAwMmZkZDg+XSAodHJ5X3RvX3dha2VfdXArMHgwLzB4 MTMwKSBmcm9tIFs8YzAwMmZmMWM+XSAoZGVmYXVsdF93YWtlX2Z1bmN0aW9u KzB4MTQvMHgxOCkKIHI5OjAwMDAwMDAwIHI4OjAwMDAwMDAwIHI3OjAwMDAw MDAwIHI2OmJmMDE4YmNjIHI1OjAwMDAwMDAwCnI0OmM3ZmU1ZWE4Cls8YzAw MmZmMDg+XSAoZGVmYXVsdF93YWtlX2Z1bmN0aW9uKzB4MC8weDE4KSBmcm9t IFs8YzAwNGI0ZWM+XSAoYXV0b3JlbW92ZV93YWtlX2Z1bmN0aW9uKzB4MTgv MHg0MCkKWzxjMDA0YjRkND5dIChhdXRvcmVtb3ZlX3dha2VfZnVuY3Rpb24r MHgwLzB4NDApIGZyb20gWzxjMDAyYjJmMD5dIChfX3dha2VfdXBfY29tbW9u KzB4NTgvMHg4OCkKIHI0OmJmMDE4YmMwCls8YzAwMmIyOTg+XSAoX193YWtl X3VwX2NvbW1vbisweDAvMHg4OCkgZnJvbSBbPGMwMDJkZDNjPl0gKF9fd2Fr ZV91cCsweDRjLzB4N2MpCls8YzAwMmRjZjA+XSAoX193YWtlX3VwKzB4MC8w eDdjKSBmcm9tIFs8YmYwMDJmNDg+XSAoZGRyaXZlcm1ib3hfZXZlbnRfcmVh ZGVyKzB4MWYwLzB4M2I0IFtkZHJpdmVyXSkKIHI4OjAwMDAwMDAwIHI3OjAw MDAwMDAwIHI2OjAwMDAwMDAxIHI1OjAwMDAwMDAxIHI0OmJmMDE4YWU4Cls8 YmYwMDJkNTg+XSAoZGRyaXZlcm1ib3hfZXZlbnRfcmVhZGVyKzB4MC8weDNi NCBbZGRyaXZlcl0pIGZyb20gWzxjMDA0NmZkOD5dIChydW5fd29ya3F1ZXVl KzB4ZDgvMHgxYTApCls8YzAwNDZmMDA+XSAocnVuX3dvcmtxdWV1ZSsweDAv MHgxYTApIGZyb20gWzxjMDA0N2JmOD5dICh3b3JrZXJfdGhyZWFkKzB4Nzgv MHhkMCkKIHI4OjAwMDAwMDAwIHI3OjAwMDAwMDAwIHI2OmM3YzI3ZmFjIHI1 OmM3YzAxOWU4IHI0OmM3YzAxOWUwCls8YzAwNDdiODA+XSAod29ya2VyX3Ro cmVhZCsweDAvMHhkMCkgZnJvbSBbPGMwMDRiMTIwPl0gKGt0aHJlYWQrMHg1 MC8weDdjKQogcjY6MDAwMDAwMDAgcjU6YzAwNDdiODAgcjQ6YzdjMDE5ZTAK WzxjMDA0YjBkMD5dIChrdGhyZWFkKzB4MC8weDdjKSBmcm9tIFs8YzAwMzgx YmM+XSAoZG9fZXhpdCsweDAvMHg2YzApCiByNTowMDAwMDAwMCByNDowMDAw MDAwMAotLS1bIGVuZCB0cmFjZSA4NDEzNTYxMGJhZjZkOWQzIF0tLS0KLS0t LS0tLS0tLS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tCldBUk5JTkc6IGF0 IGtlcm5lbC9zY2hlZF9ydC5jOjMwNiBkZXF1ZXVlX3J0X2VudGl0eSsweDIw NC8weDIxYygpCk1vZHVsZXMgbGlua2VkIGluOiBkZHJpdmVyCls8YzAwMjI1 MjQ+XSAoZHVtcF9zdGFjaysweDAvMHgxNCkgZnJvbSBbPGMwMDM0Mjk0Pl0g KHdhcm5fb25fc2xvd3BhdGgrMHg0Yy8weDYwKQpbPGMwMDM0MjQ4Pl0gKHdh cm5fb25fc2xvd3BhdGgrMHgwLzB4NjApIGZyb20gWzxjMDAyYzRlND5dIChk ZXF1ZXVlX3J0X2VudGl0eSsweDIwNC8weDIxYykKIHI2OmMwMmMzZDkwIHI1 OjAwMDAwMDAwIHI0OmMwMmMzOTk4Cls8YzAwMmMyZTA+XSAoZGVxdWV1ZV9y dF9lbnRpdHkrMHgwLzB4MjFjKSBmcm9tIFs8YzAwMmM1NDA+XSAoZGVxdWV1 ZV9ydF9zdGFjaysweDQ0LzB4NTApCiByNjpjN2NhYzU0MCByNTowMDAwMGZh ZCByNDpjN2NhYzY5OApbPGMwMDJjNGZjPl0gKGRlcXVldWVfcnRfc3RhY2sr MHgwLzB4NTApIGZyb20gWzxjMDAyYzkxMD5dIChlbnF1ZXVlX3Rhc2tfcnQr MHgyOC8weDQ4KQogcjQ6YzdjYWM2OTgKWzxjMDAyYzhlOD5dIChlbnF1ZXVl X3Rhc2tfcnQrMHgwLzB4NDgpIGZyb20gWzxjMDAyYjZkND5dIChlbnF1ZXVl X3Rhc2srMHg0NC8weDU4KQogcjQ6MTJjMWNiNjAKWzxjMDAyYjY5MD5dIChl bnF1ZXVlX3Rhc2srMHgwLzB4NTgpIGZyb20gWzxjMDAyYjcxND5dIChhY3Rp dmF0ZV90YXNrKzB4MmMvMHgzYykKIHI2OmMwMmMzZDE4IHI1OmM3Y2FjNTQw IHI0OmMwMmMzZDE4Cls8YzAwMmI2ZTg+XSAoYWN0aXZhdGVfdGFzaysweDAv MHgzYykgZnJvbSBbPGMwMDJmZWUwPl0gKHRyeV90b193YWtlX3VwKzB4MTA4 LzB4MTMwKQogcjU6YzdjYWM1NDAgcjQ6MDAwMDAwMGYKWzxjMDAyZmRkOD5d ICh0cnlfdG9fd2FrZV91cCsweDAvMHgxMzApIGZyb20gWzxjMDAyZmY1MD5d ICh3YWtlX3VwX3Byb2Nlc3MrMHgxOC8weDFjKQogcjk6N2ZmZmZmZmYgcjg6 ZmZmZmZmZmYgcjc6MDAwMDU4MTAgcjY6YzAyYjM5ZTggcjU6YzAwNGVkNTgK cjQ6MDAwMDAwMDAKWzxjMDAyZmYzOD5dICh3YWtlX3VwX3Byb2Nlc3MrMHgw LzB4MWMpIGZyb20gWzxjMDA0ZWQ4ND5dIChocnRpbWVyX3dha2V1cCsweDJj LzB4MzQpCls8YzAwNGVkNTg+XSAoaHJ0aW1lcl93YWtldXArMHgwLzB4MzQp IGZyb20gWzxjMDA0ZTk2OD5dIChfX3J1bl9ocnRpbWVyKzB4YzgvMHhlMCkK IHI0OmM3ZmVmZjE4Cls8YzAwNGU4YTA+XSAoX19ydW5faHJ0aW1lcisweDAv MHhlMCkgZnJvbSBbPGMwMDRmNmQwPl0gKGhydGltZXJfaW50ZXJydXB0KzB4 MTVjLzB4MWZjKQogcjY6MDgyNTI3ZDggcjU6YzAyYjM5ZTggcjQ6YzdmZWZm MTgKWzxjMDA0ZjU3ND5dIChocnRpbWVyX2ludGVycnVwdCsweDAvMHgxZmMp IGZyb20gWzxjMDAyOGQ0OD5dIChteGNfdGltZXJfaW50ZXJydXB0KzB4Mjgv MHgzOCkKWzxjMDAyOGQyMD5dIChteGNfdGltZXJfaW50ZXJydXB0KzB4MC8w eDM4KSBmcm9tIFs8YzAwNWVjZjA+XSAoaGFuZGxlX0lSUV9ldmVudCsweDQ0 LzB4ODQpCls8YzAwNWVjYWM+XSAoaGFuZGxlX0lSUV9ldmVudCsweDAvMHg4 NCkgZnJvbSBbPGMwMDYwYmE4Pl0gKGhhbmRsZV9sZXZlbF9pcnErMHhhOC8w eDE1OCkKIHI3OmMwMmIyMTcwIHI2OjAwMDAwMDFhIHI1OmM3YzI2MDAwIHI0 OmMwMmI0NTEwCls8YzAwNjBiMDA+XSAoaGFuZGxlX2xldmVsX2lycSsweDAv MHgxNTgpIGZyb20gWzxjMDAxZTA0OD5dIChfX2V4Y2VwdGlvbl90ZXh0X3N0 YXJ0KzB4NDgvMHg2MCkKIHI3OmM3YzI3ZWM4IHI2OmMwMmQ5YzA0IHI1OmMw MmI0NTEwIHI0OjAwMDAwMDFhCls8YzAwMWUwMDA+XSAoX19leGNlcHRpb25f dGV4dF9zdGFydCsweDAvMHg2MCkgZnJvbSBbPGMwMjFkMmE0Pl0gKF9faXJx X3N2YysweDQ0LzB4NmMpCkV4Y2VwdGlvbiBzdGFjaygweGM3YzI3ZTIwIHRv IDB4YzdjMjdlNjgpCjdlMjA6IDAwMDAwMDMyIGM3ZDE5NDIwIGM3YzI2MDAw IDYwMDAwMDEzIGM3ZDE5NDIwIGM3YzI2MDAwIDAwMDAwMDMyIGM3ZDE5NDIw CjdlNDA6IDAwMDAwMDAxIGM3YzI2MDAwIDAwMDAwMDAwIGM3YzI3ZTg0IGM3 YzI3ZTg4IGM3YzI3ZTY4IGMwMDYwYmE4IGMwMDVlY2Q4CjdlNjA6IDYwMDAw MDEzIGZmZmZmZmZmCiByNzowMDAxMDAwMyByNjowMDFhMDAwMCByNTpkNDA0 MDAwMCByNDpmZmZmZmZmZgpbPGMwMDVlY2FjPl0gKGhhbmRsZV9JUlFfZXZl bnQrMHgwLzB4ODQpIGZyb20gWzxjMDA2MGJhOD5dIChoYW5kbGVfbGV2ZWxf aXJxKzB4YTgvMHgxNTgpCiByNzpjN2QxOTQyMCByNjowMDAwMDAzMiByNTpj N2MyNjAwMCByNDpjMDJiNGE1MApbPGMwMDYwYjAwPl0gKGhhbmRsZV9sZXZl bF9pcnErMHgwLzB4MTU4KSBmcm9tIFs8YzAwMWUwNDg+XSAoX19leGNlcHRp b25fdGV4dF9zdGFydCsweDQ4LzB4NjApCiByNzowMDAwMDAwMCByNjpjMDJk OWMwNCByNTpjMDJiNGE1MCByNDowMDAwMDAzMgpbPGMwMDFlMDAwPl0gKF9f ZXhjZXB0aW9uX3RleHRfc3RhcnQrMHgwLzB4NjApIGZyb20gWzxjMDIxZDJh ND5dIChfX2lycV9zdmMrMHg0NC8weDZjKQpFeGNlcHRpb24gc3RhY2soMHhj N2MyN2VjOCB0byAweGM3YzI3ZjEwKQo3ZWMwOiAgICAgICAgICAgICAgICAg ICAwMDAwMDAwMSBjN2ZlNWViNCBiZjAxOGJjYyBiZjAxOGJjYyBiZjAxOGJj YyAwMDAwMDAwMQo3ZWUwOiAwMDAwMDAwMCAwMDAwMDAwMCAwMDAwMDAxMyAw MDAwMDAxNyAwMDAwMDAwMCBjN2MyN2YzYyBiZjAxOGJjMCBjN2MyN2YxMAo3 ZjAwOiBjMDAyZmYwNCBjMDAyZGQ0MCA2MDAwMDAxMyBmZmZmZmZmZgogcjc6 MDAwMDAwMDIgcjY6MDAzMjAwMDAgcjU6ZDQwNDAwMDAgcjQ6ZmZmZmZmZmYK WzxjMDAyZGNmMD5dIChfX3dha2VfdXArMHgwLzB4N2MpIGZyb20gWzxiZjAw MmY0OD5dIChkZHJpdmVybWJveF9ldmVudF9yZWFkZXIrMHgxZjAvMHgzYjQg W2Rkcml2ZXJdKQogcjg6MDAwMDAwMDAgcjc6MDAwMDAwMDAgcjY6MDAwMDAw MDEgcjU6MDAwMDAwMDEgcjQ6YmYwMThhZTgKWzxiZjAwMmQ1OD5dIChkZHJp dmVybWJveF9ldmVudF9yZWFkZXIrMHgwLzB4M2I0IFtkZHJpdmVyXSkgZnJv bSBbPGMwMDQ2ZmQ4Pl0gKHJ1bl93b3JrcXVldWUrMHhkOC8weDFhMCkKWzxj MDA0NmYwMD5dIChydW5fd29ya3F1ZXVlKzB4MC8weDFhMCkgZnJvbSBbPGMw MDQ3YmY4Pl0gKHdvcmtlcl90aHJlYWQrMHg3OC8weGQwKQogcjg6MDAwMDAw MDAgcjc6MDAwMDAwMDAgcjY6YzdjMjdmYWMgcjU6YzdjMDE5ZTggcjQ6Yzdj MDE5ZTAKWzxjMDA0N2I4MD5dICh3b3JrZXJfdGhyZWFkKzB4MC8weGQwKSBm cm9tIFs8YzAwNGIxMjA+XSAoa3RocmVhZCsweDUwLzB4N2MpCiByNjowMDAw MDAwMCByNTpjMDA0N2I4MCByNDpjN2MwMTllMApbPGMwMDRiMGQwPl0gKGt0 aHJlYWQrMHgwLzB4N2MpIGZyb20gWzxjMDAzODFiYz5dIChkb19leGl0KzB4 MC8weDZjMCkKIHI1OjAwMDAwMDAwIHI0OjAwMDAwMDAwCi0tLVsgZW5kIHRy YWNlIDg0MTM1NjEwYmFmNmQ5ZDMgXS0tLQotLS0tLS0tLS0tLS1bIGN1dCBo ZXJlIF0tLS0tLS0tLS0tLS0KV0FSTklORzogYXQga2VybmVsL3NjaGVkX3J0 LmM6MzA2IGRlcXVldWVfcnRfZW50aXR5KzB4MjA0LzB4MjFjKCkKTW9kdWxl cyBsaW5rZWQgaW46IGRkcml2ZXIKWzxjMDAyMjUyND5dIChkdW1wX3N0YWNr KzB4MC8weDE0KSBmcm9tIFs8YzAwMzQyOTQ+XSAod2Fybl9vbl9zbG93cGF0 aCsweDRjLzB4NjApCls8YzAwMzQyNDg+XSAod2Fybl9vbl9zbG93cGF0aCsw eDAvMHg2MCkgZnJvbSBbPGMwMDJjNGU0Pl0gKGRlcXVldWVfcnRfZW50aXR5 KzB4MjA0LzB4MjFjKQogcjY6YzAyYzNkOTAgcjU6MDAwMDAwMDAgcjQ6YzAy YzM5OTgKWzxjMDAyYzJlMD5dIChkZXF1ZXVlX3J0X2VudGl0eSsweDAvMHgy MWMpIGZyb20gWzxjMDAyYzU0MD5dIChkZXF1ZXVlX3J0X3N0YWNrKzB4NDQv MHg1MCkKIHI2OmM3YzRiOTQwIHI1OjAwMDAwZmFkIHI0OmM3YzRiYTk4Cls8 YzAwMmM0ZmM+XSAoZGVxdWV1ZV9ydF9zdGFjaysweDAvMHg1MCkgZnJvbSBb PGMwMDJjOTEwPl0gKGVucXVldWVfdGFza19ydCsweDI4LzB4NDgpCiByNDpj N2M0YmE5OApbPGMwMDJjOGU4Pl0gKGVucXVldWVfdGFza19ydCsweDAvMHg0 OCkgZnJvbSBbPGMwMDJiNmQ0Pl0gKGVucXVldWVfdGFzaysweDQ0LzB4NTgp CiByNDoyNzllNjNlNApbPGMwMDJiNjkwPl0gKGVucXVldWVfdGFzaysweDAv MHg1OCkgZnJvbSBbPGMwMDJiNzE0Pl0gKGFjdGl2YXRlX3Rhc2srMHgyYy8w eDNjKQogcjY6YzAyYzNkMTggcjU6YzdjNGI5NDAgcjQ6YzAyYzNkMTgKWzxj MDAyYjZlOD5dIChhY3RpdmF0ZV90YXNrKzB4MC8weDNjKSBmcm9tIFs8YzAw MmZlZTA+XSAodHJ5X3RvX3dha2VfdXArMHgxMDgvMHgxMzApCiByNTpjN2M0 Yjk0MCByNDowMDAwMDAwMwpbPGMwMDJmZGQ4Pl0gKHRyeV90b193YWtlX3Vw KzB4MC8weDEzMCkgZnJvbSBbPGMwMDJmZjFjPl0gKGRlZmF1bHRfd2FrZV9m dW5jdGlvbisweDE0LzB4MTgpCiByOTowMDAwMDAwMCByODowMDAwMDAwMCBy NzowMDAwMDAwMCByNjpjN2ZjZGU2NCByNTowMDAwMDAwMApyNDpjN2ZjZGU1 OApbPGMwMDJmZjA4Pl0gKGRlZmF1bHRfd2FrZV9mdW5jdGlvbisweDAvMHgx OCkgZnJvbSBbPGMwMDJiMmYwPl0gKF9fd2FrZV91cF9jb21tb24rMHg1OC8w eDg4KQpbPGMwMDJiMjk4Pl0gKF9fd2FrZV91cF9jb21tb24rMHgwLzB4ODgp IGZyb20gWzxjMDAyZGQzYz5dIChfX3dha2VfdXArMHg0Yy8weDdjKQpbPGMw MDJkY2YwPl0gKF9fd2FrZV91cCsweDAvMHg3YykgZnJvbSBbPGMwMDU3M2Uw Pl0gKHdha2VfZnV0ZXgrMHg0Yy8weDVjKQogcjg6ZmZmZmZmZmYgcjc6MDAw MDAwMDEgcjY6YzdlNjNiYjQgcjU6YzAyZDc0NjAgcjQ6YzdmY2RlNTAKWzxj MDA1NzM5ND5dICh3YWtlX2Z1dGV4KzB4MC8weDVjKSBmcm9tIFs8YzAwNTc3 YzQ+XSAoZnV0ZXhfd2FrZSsweGYwLzB4MTQwKQogcjQ6YzAyZDc0NWMKWzxj MDA1NzZkND5dIChmdXRleF93YWtlKzB4MC8weDE0MCkgZnJvbSBbPGMwMDU4 NTZjPl0gKGRvX2Z1dGV4KzB4YjQvMHg5YWMpCls8YzAwNTg0Yjg+XSAoZG9f ZnV0ZXgrMHgwLzB4OWFjKSBmcm9tIFs8YzAwNThmMjg+XSAoc3lzX2Z1dGV4 KzB4YzQvMHgxNTApCls8YzAwNThlNjQ+XSAoc3lzX2Z1dGV4KzB4MC8weDE1 MCkgZnJvbSBbPGMwMDFlNWEwPl0gKHJldF9mYXN0X3N5c2NhbGwrMHgwLzB4 MmMpCi0tLVsgZW5kIHRyYWNlIDg0MTM1NjEwYmFmNmQ5ZDMgXS0tLQotLS0t LS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0KV0FSTklORzogYXQg a2VybmVsL3NjaGVkX3J0LmM6MzA2IGRlcXVldWVfcnRfZW50aXR5KzB4MjA0 LzB4MjFjKCkKTW9kdWxlcyBsaW5rZWQgaW46IGRkcml2ZXIKWzxjMDAyMjUy ND5dIChkdW1wX3N0YWNrKzB4MC8weDE0KSBmcm9tIFs8YzAwMzQyOTQ+XSAo d2Fybl9vbl9zbG93cGF0aCsweDRjLzB4NjApCls8YzAwMzQyNDg+XSAod2Fy bl9vbl9zbG93cGF0aCsweDAvMHg2MCkgZnJvbSBbPGMwMDJjNGU0Pl0gKGRl cXVldWVfcnRfZW50aXR5KzB4MjA0LzB4MjFjKQogcjY6YzAyYzNkOTAgcjU6 MDAwMDAwMDAgcjQ6YzAyYzM5OTgKWzxjMDAyYzJlMD5dIChkZXF1ZXVlX3J0 X2VudGl0eSsweDAvMHgyMWMpIGZyb20gWzxjMDAyYzU0MD5dIChkZXF1ZXVl X3J0X3N0YWNrKzB4NDQvMHg1MCkKIHI2OmM3YzRiNTIwIHI1OjAwMDAwZmFk IHI0OmM3YzRiNjc4Cls8YzAwMmM0ZmM+XSAoZGVxdWV1ZV9ydF9zdGFjaysw eDAvMHg1MCkgZnJvbSBbPGMwMDJjOTEwPl0gKGVucXVldWVfdGFza19ydCsw eDI4LzB4NDgpCiByNDpjN2M0YjY3OApbPGMwMDJjOGU4Pl0gKGVucXVldWVf dGFza19ydCsweDAvMHg0OCkgZnJvbSBbPGMwMDJiNmQ0Pl0gKGVucXVldWVf dGFzaysweDQ0LzB4NTgpCiByNDozNTUzZWY0OQpbPGMwMDJiNjkwPl0gKGVu cXVldWVfdGFzaysweDAvMHg1OCkgZnJvbSBbPGMwMDJiNzE0Pl0gKGFjdGl2 YXRlX3Rhc2srMHgyYy8weDNjKQogcjY6YzAyYzNkMTggcjU6YzdjNGI1MjAg cjQ6YzAyYzNkMTgKWzxjMDAyYjZlOD5dIChhY3RpdmF0ZV90YXNrKzB4MC8w eDNjKSBmcm9tIFs8YzAwMmZlZTA+XSAodHJ5X3RvX3dha2VfdXArMHgxMDgv MHgxMzApCiByNTpjN2M0YjUyMCByNDowMDAwMDAwZgpbPGMwMDJmZGQ4Pl0g KHRyeV90b193YWtlX3VwKzB4MC8weDEzMCkgZnJvbSBbPGMwMDJmZjUwPl0g KHdha2VfdXBfcHJvY2VzcysweDE4LzB4MWMpCiByOTo3ZmZmZmZmZiByODpm ZmZmZmZmZiByNzowMDAwNTgxMiByNjpjMDJiMzllOCByNTpjMDA0ZWQ1OApy NDowMDAwMDAwMApbPGMwMDJmZjM4Pl0gKHdha2VfdXBfcHJvY2VzcysweDAv MHgxYykgZnJvbSBbPGMwMDRlZDg0Pl0gKGhydGltZXJfd2FrZXVwKzB4MmMv MHgzNCkKWzxjMDA0ZWQ1OD5dIChocnRpbWVyX3dha2V1cCsweDAvMHgzNCkg ZnJvbSBbPGMwMDRlOTY4Pl0gKF9fcnVuX2hydGltZXIrMHhjOC8weGUwKQog cjQ6YzdmZTllMDAKWzxjMDA0ZThhMD5dIChfX3J1bl9ocnRpbWVyKzB4MC8w eGUwKSBmcm9tIFs8YzAwNGY2ZDA+XSAoaHJ0aW1lcl9pbnRlcnJ1cHQrMHgx NWMvMHgxZmMpCiByNjoyZTU0NWZmNCByNTpjMDJiMzllOCByNDpjN2ZlOWUw MApbPGMwMDRmNTc0Pl0gKGhydGltZXJfaW50ZXJydXB0KzB4MC8weDFmYykg ZnJvbSBbPGMwMDI4ZDQ4Pl0gKG14Y190aW1lcl9pbnRlcnJ1cHQrMHgyOC8w eDM4KQpbPGMwMDI4ZDIwPl0gKG14Y190aW1lcl9pbnRlcnJ1cHQrMHgwLzB4 MzgpIGZyb20gWzxjMDA1ZWNmMD5dIChoYW5kbGVfSVJRX2V2ZW50KzB4NDQv MHg4NCkKWzxjMDA1ZWNhYz5dIChoYW5kbGVfSVJRX2V2ZW50KzB4MC8weDg0 KSBmcm9tIFs8YzAwNjBiYTg+XSAoaGFuZGxlX2xldmVsX2lycSsweGE4LzB4 MTU4KQogcjc6YzAyYjIxNzAgcjY6MDAwMDAwMWEgcjU6YzAyYWEwMDAgcjQ6 YzAyYjQ1MTAKWzxjMDA2MGIwMD5dIChoYW5kbGVfbGV2ZWxfaXJxKzB4MC8w eDE1OCkgZnJvbSBbPGMwMDFlMDQ4Pl0gKF9fZXhjZXB0aW9uX3RleHRfc3Rh cnQrMHg0OC8weDYwKQogcjc6MDAwMDAwMDAgcjY6YzAyZDljMDQgcjU6YzAy YjQ1MTAgcjQ6MDAwMDAwMWEKWzxjMDAxZTAwMD5dIChfX2V4Y2VwdGlvbl90 ZXh0X3N0YXJ0KzB4MC8weDYwKSBmcm9tIFs8YzAyMWQyYTQ+XSAoX19pcnFf c3ZjKzB4NDQvMHg2YykKRXhjZXB0aW9uIHN0YWNrKDB4YzAyYWJmNDAgdG8g MHhjMDJhYmY4OCkKYmY0MDogMDAwMDAwMDAgMDAwNTMxN2YgMDAwNTIxN2Yg NjAwMDAwMTMgYzAwMWY3ZTggYzAyYWEwMDAgYzAyYzJiMDggYzAyYWRkNzgK YmY2MDogYTAwMWE5NWMgNDEwNjkyNjQgYTAwMWE5MjggYzAyYWJmOTQgNjAw MDAwZDMgYzAyYWJmODggYzAwMWY4MmMgYzAwMWY4MzgKYmY4MDogNjAwMDAw MTMgZmZmZmZmZmYKIHI3OjAwMDAwMDAyIHI2OjAwMWEwMDAwIHI1OmQ0MDQw MDAwIHI0OmZmZmZmZmZmCls8YzAwMWY3ZTg+XSAoZGVmYXVsdF9pZGxlKzB4 MC8weDU4KSBmcm9tIFs8YzAwMWY2OTg+XSAoY3B1X2lkbGUrMHg0Yy8weDdj KQpbPGMwMDFmNjRjPl0gKGNwdV9pZGxlKzB4MC8weDdjKSBmcm9tIFs8YzAy MWEzNDg+XSAocmVzdF9pbml0KzB4NjQvMHg3NCkKIHI2OmMwMDFiZGJjIHI1 OmMwMmMyYWM0IHI0OmMwMmQ4MTg0Cls8YzAyMWEyZTQ+XSAocmVzdF9pbml0 KzB4MC8weDc0KSBmcm9tIFs8YzAwMDhiYzg+XSAoc3RhcnRfa2VybmVsKzB4 MjAwLzB4Mjg4KQpbPGMwMDA4OWM4Pl0gKHN0YXJ0X2tlcm5lbCsweDAvMHgy ODgpIGZyb20gWzxhMDAwODAzND5dICgweGEwMDA4MDM0KQotLS1bIGVuZCB0 cmFjZSA4NDEzNTYxMGJhZjZkOWQzIF0tLS0KYWF3LTExLTEtNTovdmFyL3Zv bGF0aWxlL2xvZy9vbCAjCg== --0-865079110-1234322277=:37726--