[PATCH 04/17] vcomp/tests: Use the available ARRAY_SIZE() macro
Michael Stefaniuc <[email protected]> Wed, 30 May 2018 21:15:36 +0200
| Newsgroups | gmane.comp.emulators.wine.patches,gmane.comp.emulators.wine.devel |
|---|---|
| Message-ID | <[email protected]> |
U2lnbmVkLW9mZi1ieTogTWljaGFlbCBTdGVmYW5pdWMgPG1zdGVmYW5pQHdpbmVocS5vcmc+Ci0t LQogZGxscy92Y29tcC90ZXN0cy92Y29tcC5jIHwgNTYgKysrKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygr KSwgMjggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZGxscy92Y29tcC90ZXN0cy92Y29tcC5j IGIvZGxscy92Y29tcC90ZXN0cy92Y29tcC5jCmluZGV4IDE1NDc0NGI3YzUuLmVhNjI5MDk3NTYg MTAwNjQ0Ci0tLSBhL2RsbHMvdmNvbXAvdGVzdHMvdmNvbXAuYworKysgYi9kbGxzL3Zjb21wL3Rl c3RzL3Zjb21wLmMKQEAgLTc2Niw3ICs3NjYsNyBAQCBzdGF0aWMgdm9pZCBDREVDTCBmb3Jfc3Rh dGljX3NpbXBsZV9jYih2b2lkKQogICAgIGludCB0aHJlYWRfbnVtID0gcG9tcF9nZXRfdGhyZWFk X251bSgpOwogICAgIGludCBpOwogCi0gICAgZm9yIChpID0gMDsgaSA8IHNpemVvZih0ZXN0cykv c2l6ZW9mKHRlc3RzWzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRl c3RzKTsgaSsrKQogICAgIHsKICAgICAgICAgdW5zaWduZWQgaW50IG15X2JlZ2luLCBteV9lbmQs IGJlZ2luLCBlbmQ7CiAKQEAgLTk2Niw3ICs5NjYsNyBAQCBzdGF0aWMgdm9pZCBDREVDTCBmb3Jf c3RhdGljX2NiKHZvaWQpCiAgICAgaW50IHRocmVhZF9udW0gPSBwb21wX2dldF90aHJlYWRfbnVt KCk7CiAgICAgaW50IGk7CiAKLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRlc3RzKS9zaXpl b2YodGVzdHNbMF0pOyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMp OyBpKyspCiAgICAgewogICAgICAgICBpbnQgbXlfYmVnaW4sIG15X2VuZCwgbXlfbmV4dCwgbXlf bGFzdGNodW5rOwogICAgICAgICBpbnQgYmVnaW4sIGVuZCwgbmV4dCwgbGFzdGNodW5rOwpAQCAt MTYxNCwyNSArMTYxNCwyNSBAQCBzdGF0aWMgdm9pZCB0ZXN0X2F0b21pY19pbnRlZ2VyOCh2b2lk KQogICAgIH07CiAgICAgaW50IGk7CiAKLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRlc3Rz MSkvc2l6ZW9mKHRlc3RzMVswXSk7IGkrKykKKyAgICBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0la RSh0ZXN0czEpOyBpKyspCiAgICAgewogICAgICAgICBjaGFyIHZhbCA9IHRlc3RzMVtpXS52MTsK ICAgICAgICAgdGVzdHMxW2ldLmZ1bmMoJnZhbCwgdGVzdHMxW2ldLnYyKTsKICAgICAgICAgb2so dmFsID09IHRlc3RzMVtpXS5leHBlY3RlZCwgInRlc3QgJWQ6IGV4cGVjdGVkIHZhbCA9PSAlZCwg Z290ICVkXG4iLCBpLCB0ZXN0czFbaV0uZXhwZWN0ZWQsIHZhbCk7CiAgICAgfQotICAgIGZvciAo aSA9IDA7IGkgPCBzaXplb2YodGVzdHMyKS9zaXplb2YodGVzdHMyWzBdKTsgaSsrKQorICAgIGZv ciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzMik7IGkrKykKICAgICB7CiAgICAgICAgIGNo YXIgdmFsID0gdGVzdHMyW2ldLnYxOwogICAgICAgICB0ZXN0czJbaV0uZnVuYygmdmFsLCB0ZXN0 czJbaV0udjIpOwogICAgICAgICBvayh2YWwgPT0gdGVzdHMyW2ldLmV4cGVjdGVkLCAidGVzdCAl ZDogZXhwZWN0ZWQgdmFsID09ICVkLCBnb3QgJWRcbiIsIGksIHRlc3RzMltpXS5leHBlY3RlZCwg dmFsKTsKICAgICB9Ci0gICAgZm9yIChpID0gMDsgaSA8IHNpemVvZih0ZXN0czMpL3NpemVvZih0 ZXN0czNbMF0pOyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMzKTsg aSsrKQogICAgIHsKICAgICAgICAgdW5zaWduZWQgY2hhciB2YWwgPSB0ZXN0czNbaV0udjE7CiAg ICAgICAgIHRlc3RzM1tpXS5mdW5jKCZ2YWwsIHRlc3RzM1tpXS52Mik7CiAgICAgICAgIG9rKHZh bCA9PSB0ZXN0czNbaV0uZXhwZWN0ZWQsICJ0ZXN0ICVkOiBleHBlY3RlZCB2YWwgPT0gJXUsIGdv dCAldVxuIiwgaSwgdGVzdHMzW2ldLmV4cGVjdGVkLCB2YWwpOwogICAgIH0KLSAgICBmb3IgKGkg PSAwOyBpIDwgc2l6ZW9mKHRlc3RzNCkvc2l6ZW9mKHRlc3RzNFswXSk7IGkrKykKKyAgICBmb3Ig KGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0ZXN0czQpOyBpKyspCiAgICAgewogICAgICAgICB1bnNp Z25lZCBjaGFyIHZhbCA9IHRlc3RzNFtpXS52MTsKICAgICAgICAgdGVzdHM0W2ldLmZ1bmMoJnZh bCwgdGVzdHM0W2ldLnYyKTsKQEAgLTE3MDcsMjUgKzE3MDcsMjUgQEAgc3RhdGljIHZvaWQgdGVz dF9hdG9taWNfaW50ZWdlcjE2KHZvaWQpCiAgICAgfTsKICAgICBpbnQgaTsKIAotICAgIGZvciAo aSA9IDA7IGkgPCBzaXplb2YodGVzdHMxKS9zaXplb2YodGVzdHMxWzBdKTsgaSsrKQorICAgIGZv ciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzMSk7IGkrKykKICAgICB7CiAgICAgICAgIHNo b3J0IHZhbCA9IHRlc3RzMVtpXS52MTsKICAgICAgICAgdGVzdHMxW2ldLmZ1bmMoJnZhbCwgdGVz dHMxW2ldLnYyKTsKICAgICAgICAgb2sodmFsID09IHRlc3RzMVtpXS5leHBlY3RlZCwgInRlc3Qg JWQ6IGV4cGVjdGVkIHZhbCA9PSAlZCwgZ290ICVkXG4iLCBpLCB0ZXN0czFbaV0uZXhwZWN0ZWQs IHZhbCk7CiAgICAgfQotICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdHMyKS9zaXplb2Yo dGVzdHMyWzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzMik7 IGkrKykKICAgICB7CiAgICAgICAgIHNob3J0IHZhbCA9IHRlc3RzMltpXS52MTsKICAgICAgICAg dGVzdHMyW2ldLmZ1bmMoJnZhbCwgdGVzdHMyW2ldLnYyKTsKICAgICAgICAgb2sodmFsID09IHRl c3RzMltpXS5leHBlY3RlZCwgInRlc3QgJWQ6IGV4cGVjdGVkIHZhbCA9PSAlZCwgZ290ICVkXG4i LCBpLCB0ZXN0czJbaV0uZXhwZWN0ZWQsIHZhbCk7CiAgICAgfQotICAgIGZvciAoaSA9IDA7IGkg PCBzaXplb2YodGVzdHMzKS9zaXplb2YodGVzdHMzWzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7 IGkgPCBBUlJBWV9TSVpFKHRlc3RzMyk7IGkrKykKICAgICB7CiAgICAgICAgIHVuc2lnbmVkIHNo b3J0IHZhbCA9IHRlc3RzM1tpXS52MTsKICAgICAgICAgdGVzdHMzW2ldLmZ1bmMoJnZhbCwgdGVz dHMzW2ldLnYyKTsKICAgICAgICAgb2sodmFsID09IHRlc3RzM1tpXS5leHBlY3RlZCwgInRlc3Qg JWQ6IGV4cGVjdGVkIHZhbCA9PSAldSwgZ290ICV1XG4iLCBpLCB0ZXN0czNbaV0uZXhwZWN0ZWQs IHZhbCk7CiAgICAgfQotICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdHM0KS9zaXplb2Yo dGVzdHM0WzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzNCk7 IGkrKykKICAgICB7CiAgICAgICAgIHVuc2lnbmVkIHNob3J0IHZhbCA9IHRlc3RzNFtpXS52MTsK ICAgICAgICAgdGVzdHM0W2ldLmZ1bmMoJnZhbCwgdGVzdHM0W2ldLnYyKTsKQEAgLTE3NzcsMTMg KzE3NzcsMTMgQEAgc3RhdGljIHZvaWQgdGVzdF9hdG9taWNfaW50ZWdlcjMyKHZvaWQpCiAgICAg fTsKICAgICBpbnQgaTsKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdHMxKS9zaXpl b2YodGVzdHMxWzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3Rz MSk7IGkrKykKICAgICB7CiAgICAgICAgIGludCB2YWwgPSB0ZXN0czFbaV0udjE7CiAgICAgICAg IHRlc3RzMVtpXS5mdW5jKCZ2YWwsIHRlc3RzMVtpXS52Mik7CiAgICAgICAgIG9rKHZhbCA9PSB0 ZXN0czFbaV0uZXhwZWN0ZWQsICJ0ZXN0ICVkOiBleHBlY3RlZCB2YWwgPT0gJWQsIGdvdCAlZFxu IiwgaSwgdGVzdHMxW2ldLmV4cGVjdGVkLCB2YWwpOwogICAgIH0KLSAgICBmb3IgKGkgPSAwOyBp IDwgc2l6ZW9mKHRlc3RzMikvc2l6ZW9mKHRlc3RzMlswXSk7IGkrKykKKyAgICBmb3IgKGkgPSAw OyBpIDwgQVJSQVlfU0laRSh0ZXN0czIpOyBpKyspCiAgICAgewogICAgICAgICB1bnNpZ25lZCBp bnQgdmFsID0gdGVzdHMyW2ldLnYxOwogICAgICAgICB0ZXN0czJbaV0uZnVuYygmdmFsLCB0ZXN0 czJbaV0udjIpOwpAQCAtMTg3MSwyNiArMTg3MSwyNiBAQCBzdGF0aWMgdm9pZCB0ZXN0X2F0b21p Y19pbnRlZ2VyNjQodm9pZCkKICAgICB9OwogICAgIGludCBpOwogCi0gICAgZm9yIChpID0gMDsg aSA8IHNpemVvZih0ZXN0czEpL3NpemVvZih0ZXN0czFbMF0pOyBpKyspCisgICAgZm9yIChpID0g MDsgaSA8IEFSUkFZX1NJWkUodGVzdHMxKTsgaSsrKQogICAgIHsKICAgICAgICAgTE9ORzY0IHZh bCA9IHRlc3RzMVtpXS52MTsKICAgICAgICAgdGVzdHMxW2ldLmZ1bmMoJnZhbCwgdGVzdHMxW2ld LnYyKTsKICAgICAgICAgb2sodmFsID09IHRlc3RzMVtpXS5leHBlY3RlZCwgInRlc3QgJWQ6IHVu ZXhwZWN0ZWRseSBnb3QgJXNcbiIsIGksIHdpbmVfZGJnc3RyX2xvbmdsb25nKHZhbCkpOwogICAg IH0KLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRlc3RzMikvc2l6ZW9mKHRlc3RzMlswXSk7 IGkrKykKKyAgICBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0ZXN0czIpOyBpKyspCiAgICAg ewogICAgICAgICBMT05HNjQgdmFsID0gdGVzdHMyW2ldLnYxOwogICAgICAgICB0ZXN0czJbaV0u ZnVuYygmdmFsLCB0ZXN0czJbaV0udjIpOwogICAgICAgICB0b2RvX3dpbmVfaWYodGVzdHMyW2ld LnRvZG8pCiAgICAgICAgIG9rKHZhbCA9PSB0ZXN0czJbaV0uZXhwZWN0ZWQsICJ0ZXN0ICVkOiB1 bmV4cGVjdGVkbHkgZ290ICVzXG4iLCBpLCB3aW5lX2RiZ3N0cl9sb25nbG9uZyh2YWwpKTsKICAg ICB9Ci0gICAgZm9yIChpID0gMDsgaSA8IHNpemVvZih0ZXN0czMpL3NpemVvZih0ZXN0czNbMF0p OyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMzKTsgaSsrKQogICAg IHsKICAgICAgICAgVUxPTkc2NCB2YWwgPSB0ZXN0czNbaV0udjE7CiAgICAgICAgIHRlc3RzM1tp XS5mdW5jKCZ2YWwsIHRlc3RzM1tpXS52Mik7CiAgICAgICAgIG9rKHZhbCA9PSB0ZXN0czNbaV0u ZXhwZWN0ZWQsICJ0ZXN0ICVkOiB1bmV4cGVjdGVkbHkgZ290ICVzXG4iLCBpLCB3aW5lX2RiZ3N0 cl9sb25nbG9uZyh2YWwpKTsKICAgICB9Ci0gICAgZm9yIChpID0gMDsgaSA8IHNpemVvZih0ZXN0 czQpL3NpemVvZih0ZXN0czRbMF0pOyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJ WkUodGVzdHM0KTsgaSsrKQogICAgIHsKICAgICAgICAgVUxPTkc2NCB2YWwgPSB0ZXN0czRbaV0u djE7CiAgICAgICAgIHRlc3RzNFtpXS5mdW5jKCZ2YWwsIHRlc3RzNFtpXS52Mik7CkBAIC0xOTE1 LDcgKzE5MTUsNyBAQCBzdGF0aWMgdm9pZCB0ZXN0X2F0b21pY19mbG9hdCh2b2lkKQogICAgIH07 CiAgICAgaW50IGk7CiAKLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRlc3RzKS9zaXplb2Yo dGVzdHNbMF0pOyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMpOyBp KyspCiAgICAgewogICAgICAgICBmbG9hdCB2YWwgPSB0ZXN0c1tpXS52MTsKICAgICAgICAgdGVz dHNbaV0uZnVuYygmdmFsLCB0ZXN0c1tpXS52Mik7CkBAIC0xOTQwLDcgKzE5NDAsNyBAQCBzdGF0 aWMgdm9pZCB0ZXN0X2F0b21pY19kb3VibGUodm9pZCkKICAgICB9OwogICAgIGludCBpOwogCi0g ICAgZm9yIChpID0gMDsgaSA8IHNpemVvZih0ZXN0cykvc2l6ZW9mKHRlc3RzWzBdKTsgaSsrKQor ICAgIGZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzKTsgaSsrKQogICAgIHsKICAgICAg ICAgZG91YmxlIHZhbCA9IHRlc3RzW2ldLnYxOwogICAgICAgICB0ZXN0c1tpXS5mdW5jKCZ2YWws IHRlc3RzW2ldLnYyKTsKQEAgLTE5NzgsMTMgKzE5NzgsMTMgQEAgc3RhdGljIHZvaWQgdGVzdF9y ZWR1Y3Rpb25faW50ZWdlcjgodm9pZCkKICAgICB9OwogICAgIGludCBpOwogCi0gICAgZm9yIChp ID0gMDsgaSA8IHNpemVvZih0ZXN0cykvc2l6ZW9mKHRlc3RzWzBdKTsgaSsrKQorICAgIGZvciAo aSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzKTsgaSsrKQogICAgIHsKICAgICAgICAgY2hhciB2 YWwgPSB0ZXN0c1tpXS52MTsKICAgICAgICAgcF92Y29tcF9yZWR1Y3Rpb25faTEodGVzdHNbaV0u ZmxhZ3MsICZ2YWwsIHRlc3RzW2ldLnYyKTsKICAgICAgICAgb2sodmFsID09IHRlc3RzW2ldLmV4 cGVjdGVkLCAidGVzdCAlZDogZXhwZWN0ZWQgdmFsID09ICVkLCBnb3QgJWRcbiIsIGksIHRlc3Rz W2ldLmV4cGVjdGVkLCB2YWwpOwogICAgIH0KLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRl c3RzKS9zaXplb2YodGVzdHNbMF0pOyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJ WkUodGVzdHMpOyBpKyspCiAgICAgewogICAgICAgICB1bnNpZ25lZCBjaGFyIHZhbCA9IHRlc3Rz W2ldLnYxOwogICAgICAgICBwX3Zjb21wX3JlZHVjdGlvbl91MSh0ZXN0c1tpXS5mbGFncywgJnZh bCwgdGVzdHNbaV0udjIpOwpAQCAtMjAyMiwxMyArMjAyMiwxMyBAQCBzdGF0aWMgdm9pZCB0ZXN0 X3JlZHVjdGlvbl9pbnRlZ2VyMTYodm9pZCkKICAgICB9OwogICAgIGludCBpOwogCi0gICAgZm9y IChpID0gMDsgaSA8IHNpemVvZih0ZXN0cykvc2l6ZW9mKHRlc3RzWzBdKTsgaSsrKQorICAgIGZv ciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3RzKTsgaSsrKQogICAgIHsKICAgICAgICAgc2hv cnQgdmFsID0gdGVzdHNbaV0udjE7CiAgICAgICAgIHBfdmNvbXBfcmVkdWN0aW9uX2kyKHRlc3Rz W2ldLmZsYWdzLCAmdmFsLCB0ZXN0c1tpXS52Mik7CiAgICAgICAgIG9rKHZhbCA9PSB0ZXN0c1tp XS5leHBlY3RlZCwgInRlc3QgJWQ6IGV4cGVjdGVkIHZhbCA9PSAlZCwgZ290ICVkXG4iLCBpLCB0 ZXN0c1tpXS5leHBlY3RlZCwgdmFsKTsKICAgICB9Ci0gICAgZm9yIChpID0gMDsgaSA8IHNpemVv Zih0ZXN0cykvc2l6ZW9mKHRlc3RzWzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7IGkgPCBBUlJB WV9TSVpFKHRlc3RzKTsgaSsrKQogICAgIHsKICAgICAgICAgdW5zaWduZWQgc2hvcnQgdmFsID0g dGVzdHNbaV0udjE7CiAgICAgICAgIHBfdmNvbXBfcmVkdWN0aW9uX3UyKHRlc3RzW2ldLmZsYWdz LCAmdmFsLCB0ZXN0c1tpXS52Mik7CkBAIC0yMTA1LDEzICsyMTA1LDEzIEBAIHN0YXRpYyB2b2lk IHRlc3RfcmVkdWN0aW9uX2ludGVnZXIzMih2b2lkKQogCiAgICAgcG9tcF9zZXRfbnVtX3RocmVh ZHMobWF4X3RocmVhZHMpOwogCi0gICAgZm9yIChpID0gMDsgaSA8IHNpemVvZih0ZXN0cykvc2l6 ZW9mKHRlc3RzWzBdKTsgaSsrKQorICAgIGZvciAoaSA9IDA7IGkgPCBBUlJBWV9TSVpFKHRlc3Rz KTsgaSsrKQogICAgIHsKICAgICAgICAgaW50IHZhbCA9IHRlc3RzW2ldLnYxOwogICAgICAgICBw X3Zjb21wX3JlZHVjdGlvbl9pNCh0ZXN0c1tpXS5mbGFncywgJnZhbCwgdGVzdHNbaV0udjIpOwog ICAgICAgICBvayh2YWwgPT0gdGVzdHNbaV0uZXhwZWN0ZWQsICJ0ZXN0ICVkOiBleHBlY3RlZCB2 YWwgPT0gJWQsIGdvdCAlZFxuIiwgaSwgdGVzdHNbaV0uZXhwZWN0ZWQsIHZhbCk7CiAgICAgfQot ICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdHMpL3NpemVvZih0ZXN0c1swXSk7IGkrKykK KyAgICBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0ZXN0cyk7IGkrKykKICAgICB7CiAgICAg ICAgIHVuc2lnbmVkIGludCB2YWwgPSB0ZXN0c1tpXS52MTsKICAgICAgICAgcF92Y29tcF9yZWR1 Y3Rpb25fdTQodGVzdHNbaV0uZmxhZ3MsICZ2YWwsIHRlc3RzW2ldLnYyKTsKQEAgLTIxNDgsMTMg KzIxNDgsMTMgQEAgc3RhdGljIHZvaWQgdGVzdF9yZWR1Y3Rpb25faW50ZWdlcjY0KHZvaWQpCiAg ICAgfTsKICAgICBpbnQgaTsKIAotICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdHMpL3Np emVvZih0ZXN0c1swXSk7IGkrKykKKyAgICBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0ZXN0 cyk7IGkrKykKICAgICB7CiAgICAgICAgIExPTkc2NCB2YWwgPSB0ZXN0c1tpXS52MTsKICAgICAg ICAgcF92Y29tcF9yZWR1Y3Rpb25faTgodGVzdHNbaV0uZmxhZ3MsICZ2YWwsIHRlc3RzW2ldLnYy KTsKICAgICAgICAgb2sodmFsID09IHRlc3RzW2ldLmV4cGVjdGVkLCAidGVzdCAlZDogdW5leHBl Y3RlZGx5IGdvdCAlc1xuIiwgaSwgd2luZV9kYmdzdHJfbG9uZ2xvbmcodmFsKSk7CiAgICAgfQot ICAgIGZvciAoaSA9IDA7IGkgPCBzaXplb2YodGVzdHMpL3NpemVvZih0ZXN0c1swXSk7IGkrKykK KyAgICBmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRSh0ZXN0cyk7IGkrKykKICAgICB7CiAgICAg ICAgIFVMT05HNjQgdmFsID0gdGVzdHNbaV0udjE7CiAgICAgICAgIHBfdmNvbXBfcmVkdWN0aW9u X3U4KHRlc3RzW2ldLmZsYWdzLCAmdmFsLCB0ZXN0c1tpXS52Mik7CkBAIC0yMjA2LDE0ICsyMjA2 LDE0IEBAIHN0YXRpYyB2b2lkIHRlc3RfcmVkdWN0aW9uX2Zsb2F0X2RvdWJsZSh2b2lkKQogICAg IH07CiAgICAgaW50IGk7CiAKLSAgICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRlc3RzKS9zaXpl b2YodGVzdHNbMF0pOyBpKyspCisgICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMp OyBpKyspCiAgICAgewogICAgICAgICBmbG9hdCB2YWwgPSB0ZXN0c1tpXS52MTsKICAgICAgICAg cF92Y29tcF9yZWR1Y3Rpb25fcjQodGVzdHNbaV0uZmxhZ3MsICZ2YWwsIHRlc3RzW2ldLnYyKTsK ICAgICAgICAgb2sodGVzdHNbaV0uZXhwZWN0ZWQgLSAwLjAwMSA8IHZhbCAmJiB2YWwgPCB0ZXN0 c1tpXS5leHBlY3RlZCArIDAuMDAxLAogICAgICAgICAgICAidGVzdCAlZDogZXhwZWN0ZWQgdmFs ID09ICVmLCBnb3QgJWZcbiIsIGksIHRlc3RzW2ldLmV4cGVjdGVkLCB2YWwpOwogICAgIH0KLSAg ICBmb3IgKGkgPSAwOyBpIDwgc2l6ZW9mKHRlc3RzKS9zaXplb2YodGVzdHNbMF0pOyBpKyspCisg ICAgZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUodGVzdHMpOyBpKyspCiAgICAgewogICAgICAg ICBkb3VibGUgdmFsID0gdGVzdHNbaV0udjE7CiAgICAgICAgIHBfdmNvbXBfcmVkdWN0aW9uX3I4 KHRlc3RzW2ldLmZsYWdzLCAmdmFsLCB0ZXN0c1tpXS52Mik7Ci0tIAoyLjE0LjMKCgoK