CiAgVGVzdGNhc2U6CgoKICAgIF9fbTEyOCBjdnQwKCkgeyByZXR1cm4gX21tX2N2dGVwaTMyX3Bz KF9tbV9zZXQxX2VwaTMyKDIpKTsgfQogICAgX19tMTI4IGN2dDAoX19tMTI4aSB4KSB7IHJldHVy biBfbW1fY3Z0ZXBpMzJfcHMoeCk7IH0KCiAgY29tcGlsZXMgdG8gSVI6CgoKICAgIGRlZmluZSA8 NCB4IGZsb2F0PiBAX1o0Y3Z0MHYoKSAjMCB7CiAgICBlbnRyeToKICAgICAgcmV0IDw0IHggZmxv YXQ+IDxmbG9hdCAyLjAwMDAwMGUrMDAsIGZsb2F0IDIuMDAwMDAwZSswMCwgZmxvYXQgMi4wMDAw MDBlKzAwLCBmbG9hdCAyLjAwMDAwMGUrMDA+CiAgICB9CgogICAgZGVmaW5lIDw0IHggZmxvYXQ+ IEBfWjRjdnQwRHYyX3goPDIgeCBpNjQ+ICV4KSAjMCB7CiAgICBlbnRyeToKICAgICAgJTAgPSBi aXRjYXN0IDwyIHggaTY0PiAleCB0byA8NCB4IGkzMj4KICAgICAgJWNvbnYuaSA9IHNpdG9mcCA8 NCB4IGkzMj4gJTAgdG8gPDQgeCBmbG9hdD4KICAgICAgcmV0IDw0IHggZmxvYXQ+ICVjb252LmkK ICAgIH0KCiAgYW5kIHg4NjoKCgogICAgMDAwMDAwMDAwMDAwMDAwMCA8Y3Z0MCgpPjoKICAgICAg IDA6wrcgICAgICAgYzUgZjggMjggMDUgMDAgMDAgMDAgMDAgwrcgdm1vdmFwcyAweDAoJXJpcCks JXhtbTAgICAgICAgICMgOCA8Y3Z0MCgpKzB4OD7CtyAgICA0OiBSX1g4Nl82NF9QQzMywrcgICAg ICAgICAuTENQSTBfMC0weDQKICAgICAgIDg6wrcgICAgICAgYzMgICAgICAgICAgICAgICAgICAg wrcgICAgcmV0cQoKICAgIDAwMDAwMDAwMDAwMDAwMTAgPGN2dDAobG9uZyBsb25nIF9fdmVjdG9y KDIpKT46CiAgICAgIDEwOsK3ICAgICAgIGM1IGY4IDViIGMwICAgICAgICAgIMK3ICAgIHZjdnRk cTJwcyAleG1tMCwleG1tMAogICAgICAxNDrCtyAgICAgICBjMyAgICAgICAgICAgICAgICAgICDC tyAgICByZXRxCgpodHRwOi8vbGx2bS1yZXZpZXdzLmNoYW5kbGVyYy5jb20vRDE3OTIKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KY2ZlLWNvbW1pdHMgbWFp bGluZyBsaXN0CmNmZS1jb21taXRzQGNzLnVpdWMuZWR1Cmh0dHA6Ly9saXN0cy5jcy51aXVjLmVk dS9tYWlsbWFuL2xpc3RpbmZvL2NmZS1jb21taXRzCg==