Ci8qIERvIG5vdCBlZGl0IHRoaXMgZmlsZSEgSXQgd2FzIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGJ5ICAgKi8KLyogICAgbG9hZGtleXMgLS1ta3RhYmxlIGRlZmtleW1hcC5tYXAgPiBkZWZrZXltYXAuYyAgICAgICAgICAqLwoKI2luY2x1ZGUgPGxpbnV4L3R5cGVzLmg+CiNpbmNsdWRlIDxsaW51eC9rZXlib2FyZC5oPgojaW5jbHVkZSA8bGludXgva2QuaD4KCnVfc2hvcnQgcGxhaW5fbWFwW05SX0tFWVNdID0gewoJMHhmMjAwLAkweGYwNjAsCTB4ZjAzMSwJMHhmMDMyLAkweGYwMzMsCTB4ZjAzNCwJMHhmMDM1LAkweGYwMzYsCgkweGYwMzcsCTB4ZjAzOCwJMHhmMDM5LAkweGYwMzAsCTB4ZjAyZCwJMHhmMDNkLAkweGYyMDAsCTB4ZjA3ZiwKCTB4ZjAwOSwJMHhmYjcxLAkweGZiNzcsCTB4ZmI2NSwJMHhmYjcyLAkweGZiNzQsCTB4ZmI3OSwJMHhmYjc1LAoJMHhmYjY5LAkweGZiNmYsCTB4ZmI3MCwJMHhmMDViLAkweGYwNWQsCTB4ZjA1YywJMHhmMjA3LAkweGZiNjEsCgkweGZiNzMsCTB4ZmI2NCwJMHhmYjY2LAkweGZiNjcsCTB4ZmI2OCwJMHhmYjZhLAkweGZiNmIsCTB4ZmI2YywKCTB4ZjAzYiwJMHhmMDI3LAkweGYwNjAsCTB4ZjIwMSwJMHhmNzAwLAkweGYyMDAsCTB4ZmI3YSwJMHhmYjc4LAoJMHhmYjYzLAkweGZiNzYsCTB4ZmI2MiwJMHhmYjZlLAkweGZiNmQsCTB4ZjAyYywJMHhmMDJlLAkweGYwMmYsCgkweGYyMDAsCTB4ZjcwMCwJMHhmNzAyLAkweGYyMDAsCTB4ZjcwMywJMHhmMDIwLAkweGY3MDMsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMTE1LAkweGYwN2YsCTB4ZjIwMCwJMHhmMjAwLAkweGY2MDEsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGY2MDMsCTB4ZjYwMCwJMHhmMTE4LAkweGYxMTksCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmNjAyLAkweGYyMDgsCTB4ZjAyZCwJMHhmMDJiLAkweGYzMGMsCTB4ZjAyZSwJMHhmMzBkLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMTcsCTB4ZjYwMCwJMHhmMjAwLAkweGYwMWIsCTB4ZjIwMCwKCTB4ZjEwMCwJMHhmMTAxLAkweGYxMDIsCTB4ZjEwMywJMHhmMTA0LAkweGYxMDUsCTB4ZjEwNiwJMHhmMTA3LAoJMHhmMTA4LAkweGYxMDksCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMTFkLAkweGYyMDAsCn07Cgp1X3Nob3J0IHNoaWZ0X21hcFtOUl9LRVlTXSA9IHsKCTB4ZjIwMCwJMHhmMDdlLAkweGYwMjEsCTB4ZjA0MCwJMHhmMDIzLAkweGYwMjQsCTB4ZjAyNSwJMHhmMDVlLAoJMHhmMDI2LAkweGYwMmEsCTB4ZjAyOCwJMHhmMDI5LAkweGYwNWYsCTB4ZjAyYiwJMHhmMjAwLAkweGYwN2YsCgkweGYwMDksCTB4ZmI1MSwJMHhmYjU3LAkweGZiNDUsCTB4ZmI1MiwJMHhmYjU0LAkweGZiNTksCTB4ZmI1NSwKCTB4ZmI0OSwJMHhmYjRmLAkweGZiNTAsCTB4ZjA3YiwJMHhmMDdkLAkweGYwN2MsCTB4ZjIwNywJMHhmYjQxLAoJMHhmYjUzLAkweGZiNDQsCTB4ZmI0NiwJMHhmYjQ3LAkweGZiNDgsCTB4ZmI0YSwJMHhmYjRiLAkweGZiNGMsCgkweGYwM2EsCTB4ZjAyMiwJMHhmMDdlLAkweGYyMDEsCTB4ZjcwMCwJMHhmMjAwLAkweGZiNWEsCTB4ZmI1OCwKCTB4ZmI0MywJMHhmYjU2LAkweGZiNDIsCTB4ZmI0ZSwJMHhmYjRkLAkweGYwM2MsCTB4ZjAzZSwJMHhmMDNmLAoJMHhmMjAwLAkweGY3MDAsCTB4ZjcwMiwJMHhmMjAwLAkweGY3MDMsCTB4ZjAyMCwJMHhmNzAzLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExNSwJMHhmMDdmLAkweGYyMDAsCTB4ZjIwMCwJMHhmNjAxLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmNjAzLAkweGY2MDAsCTB4ZjIwYiwJMHhmMjBhLAkweGYyMDAsCgkweGYyMDAsCTB4ZjYwMiwJMHhmMjEzLAkweGYwMmQsCTB4ZjAyYiwJMHhmMzBjLAkweGYwMmUsCTB4ZjMwZCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMTE3LAkweGY2MDAsCTB4ZjIwMCwJMHhmMDFiLAkweGYyMDAsCgkweGYxMGEsCTB4ZjEwYiwJMHhmMTBjLAkweGYxMGQsCTB4ZjEwZSwJMHhmMTBmLAkweGYxMTAsCTB4ZjExMSwKCTB4ZjExMiwJMHhmMTEzLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExZCwJMHhmMjAwLAp9OwoKdV9zaG9ydCBhbHRncl9tYXBbTlJfS0VZU10gPSB7CgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYwNDAsCTB4ZjIwMCwJMHhmMDI0LAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjA3YiwJMHhmMDViLAkweGYwNWQsCTB4ZjA3ZCwJMHhmMDVjLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGZiNzEsCTB4ZmI3NywJMHhmYjY1LAkweGZiNzIsCTB4ZmI3NCwJMHhmYjc5LAkweGZiNzUsCgkweGZiNjksCTB4ZmI2ZiwJMHhmYjcwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDcsCTB4ZmI2MSwKCTB4ZmI3MywJMHhmYjY0LAkweGZiNjYsCTB4ZmI2NywJMHhmYjY4LAkweGZiNmEsCTB4ZmI2YiwJMHhmYjZjLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAxLAkweGY3MDAsCTB4ZjIwMCwJMHhmYjdhLAkweGZiNzgsCgkweGZiNjMsCTB4ZmI3NiwJMHhmYjYyLAkweGZiNmUsCTB4ZmI2ZCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmNzAwLAkweGY3MDIsCTB4ZjIwMCwJMHhmNzAzLAkweGYyMDAsCTB4ZjcwMywJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMTUsCTB4ZjA3ZiwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMSwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMywJMHhmNjAwLAkweGYxMTgsCTB4ZjExOSwJMHhmMjAwLAoJMHhmMjAwLAkweGY2MDIsCTB4ZjIwOCwJMHhmMDJkLAkweGYwMmIsCTB4ZjMwYywJMHhmMDJlLAkweGYzMGQsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExNywJMHhmNjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmNTBjLAkweGY1MGQsCTB4ZjUwZSwJMHhmNTBmLAkweGY1MTAsCTB4ZjUxMSwJMHhmNTEyLAkweGY1MTMsCgkweGY1MTQsCTB4ZjUxNSwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMWQsCTB4ZjIwMCwKfTsKCnVfc2hvcnQgY3RybF9tYXBbTlJfS0VZU10gPSB7CgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYwMDAsCTB4ZjAxYiwJMHhmMDFjLAkweGYwMWQsCTB4ZjAxZSwKCTB4ZjAxZiwJMHhmMDdmLAkweGYyMDAsCTB4ZjIwMCwJMHhmMDFmLAkweGYyMDAsCTB4ZjIwMCwJMHhmMDA4LAoJMHhmMjAwLAkweGYwMTEsCTB4ZjAxNywJMHhmMDA1LAkweGYwMTIsCTB4ZjAxNCwJMHhmMDE5LAkweGYwMTUsCgkweGYwMDksCTB4ZjAwZiwJMHhmMDEwLAkweGYwMWIsCTB4ZjAxZCwJMHhmMDFjLAkweGYyMDcsCTB4ZjAwMSwKCTB4ZjAxMywJMHhmMDA0LAkweGYwMDYsCTB4ZjAwNywJMHhmMDA4LAkweGYwMGEsCTB4ZjAwYiwJMHhmMDBjLAoJMHhmMDA3LAkweGYwMDAsCTB4ZjIwMCwJMHhmMjAxLAkweGY3MDAsCTB4ZjIwMCwJMHhmMDFhLAkweGYwMTgsCgkweGYwMDMsCTB4ZjAxNiwJMHhmMDAyLAkweGYwMGUsCTB4ZjIwZSwJMHhmMDdmLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmNzAwLAkweGY3MDIsCTB4ZjIwMCwJMHhmNzAzLAkweGYwMDAsCTB4ZjcwMywJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMTUsCTB4ZjA3ZiwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMSwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMywJMHhmNjAwLAkweGYxMTgsCTB4ZjExOSwJMHhmMjAwLAoJMHhmMjAwLAkweGY2MDIsCTB4ZjIwOCwJMHhmMDJkLAkweGYwMmIsCTB4ZjMwYywJMHhmMDJlLAkweGYzMGQsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExNywJMHhmNjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMTAwLAkweGYxMDEsCTB4ZjEwMiwJMHhmMTAzLAkweGYxMDQsCTB4ZjEwNSwJMHhmMTA2LAkweGYxMDcsCgkweGYxMDgsCTB4ZjEwOSwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMWQsCTB4ZjIwMCwKfTsKCnVfc2hvcnQgc2hpZnRfY3RybF9tYXBbTlJfS0VZU10gPSB7CgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYwMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMDFmLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGYwMTEsCTB4ZjAxNywJMHhmMDA1LAkweGYwMTIsCTB4ZjAxNCwJMHhmMDE5LAkweGYwMTUsCgkweGYwMDksCTB4ZjAwZiwJMHhmMDEwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDcsCTB4ZjAwMSwKCTB4ZjAxMywJMHhmMDA0LAkweGYwMDYsCTB4ZjAwNywJMHhmMDA4LAkweGYwMGEsCTB4ZjAwYiwJMHhmMDBjLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAxLAkweGY3MDAsCTB4ZjIwMCwJMHhmMDFhLAkweGYwMTgsCgkweGYwMDMsCTB4ZjAxNiwJMHhmMDAyLAkweGYwMGUsCTB4ZjAwZCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmNzAwLAkweGY3MDIsCTB4ZjIwMCwJMHhmNzAzLAkweGYyMDAsCTB4ZjcwMywJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMTUsCTB4ZjA3ZiwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMSwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMywJMHhmNjAwLAkweGYxMTgsCTB4ZjExOSwJMHhmMjAwLAoJMHhmMjAwLAkweGY2MDIsCTB4ZjIwOCwJMHhmMDJkLAkweGYwMmIsCTB4ZjMwYywJMHhmMDJlLAkweGYzMGQsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExNywJMHhmNjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMWQsCTB4ZjIwMCwKfTsKCnVfc2hvcnQgYWx0X21hcFtOUl9LRVlTXSA9IHsKCTB4ZjIwMCwJMHhmODFiLAkweGY4MzEsCTB4ZjgzMiwJMHhmODMzLAkweGY4MzQsCTB4ZjgzNSwJMHhmODM2LAoJMHhmODM3LAkweGY4MzgsCTB4ZjgzOSwJMHhmODMwLAkweGY4MmQsCTB4ZjgzZCwJMHhmMjAwLAkweGY4N2YsCgkweGY4MDksCTB4Zjg3MSwJMHhmODc3LAkweGY4NjUsCTB4Zjg3MiwJMHhmODc0LAkweGY4NzksCTB4Zjg3NSwKCTB4Zjg2OSwJMHhmODZmLAkweGY4NzAsCTB4Zjg1YiwJMHhmODVkLAkweGY4NWMsCTB4ZjIwNywJMHhmODYxLAoJMHhmODczLAkweGY4NjQsCTB4Zjg2NiwJMHhmODY3LAkweGY4NjgsCTB4Zjg2YSwJMHhmODZiLAkweGY4M2IsCgkweGY4MjcsCTB4Zjg2MCwJMHhmMjAwLAkweGY4MGQsCTB4ZjcwMCwJMHhmMjAwLAkweGY4N2EsCTB4Zjg3OCwKCTB4Zjg2MywJMHhmODc2LAkweGY4NjIsCTB4ZjgyYywJMHhmODJlLAkweGY4MmYsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGY3MDAsCTB4ZjcwMiwJMHhmMjAwLAkweGY3MDMsCTB4ZjgyMCwJMHhmNzAzLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExNSwJMHhmMDdmLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjEwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmNjAzLAkweGY2MDAsCTB4ZjExOCwJMHhmMTE5LAkweGYyMDAsCgkweGYyMDAsCTB4ZjIxMSwJMHhmMjA4LAkweGYwMmQsCTB4ZjAyYiwJMHhmMzBjLAkweGYwMmUsCTB4ZjMwZCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMTE3LAkweGY2MDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGY1MDAsCTB4ZjUwMSwJMHhmNTAyLAkweGY1MDMsCTB4ZjUwNCwJMHhmNTA1LAkweGY1MDYsCTB4ZjUwNywKCTB4ZjUwOCwJMHhmNTA5LAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExZCwJMHhmMjAwLAp9OwoKdV9zaG9ydCBjdHJsX2FsdF9tYXBbTlJfS0VZU10gPSB7CgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmMjAwLAkweGY4MTEsCTB4ZjgxNywJMHhmODA1LAkweGY4MTIsCTB4ZjgxNCwJMHhmODE5LAkweGY4MTUsCgkweGY4MDksCTB4ZjgwZiwJMHhmODEwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDcsCTB4ZjgwMSwKCTB4ZjgxMywJMHhmODA0LAkweGY4MDYsCTB4ZjgwNywJMHhmODA4LAkweGY4MGEsCTB4ZjgwYiwJMHhmODBjLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAxLAkweGY3MDAsCTB4ZjIwMCwJMHhmODFhLAkweGY4MTgsCgkweGY4MDMsCTB4ZjgxNiwJMHhmODAyLAkweGY4MGUsCTB4ZjgwZCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmNzAwLAkweGY3MDIsCTB4ZjIwMCwJMHhmNzAzLAkweGYyMDAsCTB4ZjcwMywJMHhmMjAwLAoJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMTUsCTB4ZjA3ZiwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMSwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjYwMywJMHhmNjAwLAkweGYxMTgsCTB4ZjExOSwJMHhmMjAwLAoJMHhmMjAwLAkweGY2MDIsCTB4ZjIwOCwJMHhmMDJkLAkweGYwMmIsCTB4ZjMwYywJMHhmMDJlLAkweGYzMGQsCgkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwKCTB4ZjIwMCwJMHhmMjAwLAkweGYyMDAsCTB4ZjExNywJMHhmNjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAoJMHhmNTAwLAkweGY1MDEsCTB4ZjUwMiwJMHhmNTAzLAkweGY1MDQsCTB4ZjUwNSwJMHhmNTA2LAkweGY1MDcsCgkweGY1MDgsCTB4ZjUwOSwJMHhmMjAwLAkweGYyMDAsCTB4ZjIwMCwJMHhmMjAwLAkweGYxMWQsCTB4ZjIwMCwKfTsKCnVzaG9ydCAqa2V5X21hcHNbTUFYX05SX0tFWU1BUFNdID0gewoJcGxhaW5fbWFwLCBzaGlmdF9tYXAsIGFsdGdyX21hcCwgMCwKCWN0cmxfbWFwLCBzaGlmdF9jdHJsX21hcCwgMCwgMCwKCWFsdF9tYXAsIDAsIDAsIDAsCgljdHJsX2FsdF9tYXAsCTAKfTsKCnVuc2lnbmVkIGludCBrZXltYXBfY291bnQgPSA3OwoKCi8qCiAqIFBoaWxvc29waHk6IG1vc3QgcGVvcGxlIGRvIG5vdCBkZWZpbmUgbW9yZSBzdHJpbmdzLCBidXQgdGhleSB3aG8gZG8KICogb2Z0ZW4gd2FudCBxdWl0ZSBhIGxvdCBvZiBzdHJpbmcgc3BhY2UuIFNvLCB3ZSBzdGF0aWNhbGx5IGFsbG9jYXRlCiAqIHRoZSBkZWZhdWx0IGFuZCBhbGxvY2F0ZSBkeW5hbWljYWxseSBpbiBjaHVua3Mgb2YgNTEyIGJ5dGVzLgogKi8KCmNoYXIgZnVuY19idWZbXSA9IHsKCSdcMDMzJywgJ1snLCAnWycsICdBJywgMCwgCgknXDAzMycsICdbJywgJ1snLCAnQicsIDAsIAoJJ1wwMzMnLCAnWycsICdbJywgJ0MnLCAwLCAKCSdcMDMzJywgJ1snLCAnWycsICdEJywgMCwgCgknXDAzMycsICdbJywgJ1snLCAnRScsIDAsIAoJJ1wwMzMnLCAnWycsICcxJywgJzcnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcxJywgJzgnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcxJywgJzknLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzAnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzEnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzMnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzQnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzUnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzYnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzgnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcyJywgJzknLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICczJywgJzEnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICczJywgJzInLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICczJywgJzMnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICczJywgJzQnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICcxJywgJ34nLCAwLCAKCSdcMDMzJywgJ1snLCAnMicsICd+JywgMCwgCgknXDAzMycsICdbJywgJzMnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICc0JywgJ34nLCAwLCAKCSdcMDMzJywgJ1snLCAnNScsICd+JywgMCwgCgknXDAzMycsICdbJywgJzYnLCAnficsIDAsIAoJJ1wwMzMnLCAnWycsICdNJywgMCwgCgknXDAzMycsICdbJywgJ1AnLCAwLCAKfTsKCgpjaGFyICpmdW5jYnVmcHRyID0gZnVuY19idWY7CmludCBmdW5jYnVmc2l6ZSA9IHNpemVvZihmdW5jX2J1Zik7CmludCBmdW5jYnVmbGVmdCA9IDA7ICAgICAgICAgIC8qIHNwYWNlIGxlZnQgKi8KCmNoYXIgKmZ1bmNfdGFibGVbTUFYX05SX0ZVTkNdID0gewoJZnVuY19idWYgKyAwLAoJZnVuY19idWYgKyA1LAoJZnVuY19idWYgKyAxMCwKCWZ1bmNfYnVmICsgMTUsCglmdW5jX2J1ZiArIDIwLAoJZnVuY19idWYgKyAyNSwKCWZ1bmNfYnVmICsgMzEsCglmdW5jX2J1ZiArIDM3LAoJZnVuY19idWYgKyA0MywKCWZ1bmNfYnVmICsgNDksCglmdW5jX2J1ZiArIDU1LAoJZnVuY19idWYgKyA2MSwKCWZ1bmNfYnVmICsgNjcsCglmdW5jX2J1ZiArIDczLAoJZnVuY19idWYgKyA3OSwKCWZ1bmNfYnVmICsgODUsCglmdW5jX2J1ZiArIDkxLAoJZnVuY19idWYgKyA5NywKCWZ1bmNfYnVmICsgMTAzLAoJZnVuY19idWYgKyAxMDksCglmdW5jX2J1ZiArIDExNSwKCWZ1bmNfYnVmICsgMTIwLAoJZnVuY19idWYgKyAxMjUsCglmdW5jX2J1ZiArIDEzMCwKCWZ1bmNfYnVmICsgMTM1LAoJZnVuY19idWYgKyAxNDAsCglmdW5jX2J1ZiArIDE0NSwKCTAsCgkwLAoJZnVuY19idWYgKyAxNDksCgkwLAp9OwoKc3RydWN0IGtiZGlhY3IgYWNjZW50X3RhYmxlW01BWF9ESUFDUl0gPSB7Cgl7J2AnLCAnQScsICfAJ30sCXsnYCcsICdhJywgJ+AnfSwKCXsnXCcnLCAnQScsICfBJ30sCXsnXCcnLCAnYScsICfhJ30sCgl7J14nLCAnQScsICfCJ30sCXsnXicsICdhJywgJ+InfSwKCXsnficsICdBJywgJ8MnfSwJeyd+JywgJ2EnLCAn4yd9LAoJeyciJywgJ0EnLCAnxCd9LAl7JyInLCAnYScsICfkJ30sCgl7J08nLCAnQScsICfFJ30sCXsnbycsICdhJywgJ+UnfSwKCXsnMCcsICdBJywgJ8UnfSwJeycwJywgJ2EnLCAn5Sd9LAoJeydBJywgJ0EnLCAnxSd9LAl7J2EnLCAnYScsICflJ30sCgl7J0EnLCAnRScsICfGJ30sCXsnYScsICdlJywgJ+YnfSwKCXsnLCcsICdDJywgJ8cnfSwJeycsJywgJ2MnLCAn5yd9LAoJeydgJywgJ0UnLCAnyCd9LAl7J2AnLCAnZScsICfoJ30sCgl7J1wnJywgJ0UnLCAnySd9LAl7J1wnJywgJ2UnLCAn6Sd9LAoJeydeJywgJ0UnLCAnyid9LAl7J14nLCAnZScsICfqJ30sCgl7JyInLCAnRScsICfLJ30sCXsnIicsICdlJywgJ+snfSwKCXsnYCcsICdJJywgJ8wnfSwJeydgJywgJ2knLCAn7Cd9LAoJeydcJycsICdJJywgJ80nfSwJeydcJycsICdpJywgJ+0nfSwKCXsnXicsICdJJywgJ84nfSwJeydeJywgJ2knLCAn7id9LAoJeyciJywgJ0knLCAnzyd9LAl7JyInLCAnaScsICfvJ30sCgl7Jy0nLCAnRCcsICfQJ30sCXsnLScsICdkJywgJ/AnfSwKCXsnficsICdOJywgJ9EnfSwJeyd+JywgJ24nLCAn8Sd9LAoJeydgJywgJ08nLCAn0id9LAl7J2AnLCAnbycsICfyJ30sCgl7J1wnJywgJ08nLCAn0yd9LAl7J1wnJywgJ28nLCAn8yd9LAoJeydeJywgJ08nLCAn1Cd9LAl7J14nLCAnbycsICf0J30sCgl7J34nLCAnTycsICfVJ30sCXsnficsICdvJywgJ/UnfSwKCXsnIicsICdPJywgJ9YnfSwJeyciJywgJ28nLCAn9id9LAoJeycvJywgJ08nLCAn2Cd9LAl7Jy8nLCAnbycsICf4J30sCgl7J2AnLCAnVScsICfZJ30sCXsnYCcsICd1JywgJ/knfSwKCXsnXCcnLCAnVScsICfaJ30sCXsnXCcnLCAndScsICf6J30sCgl7J14nLCAnVScsICfbJ30sCXsnXicsICd1JywgJ/snfSwKCXsnIicsICdVJywgJ9wnfSwJeyciJywgJ3UnLCAn/Cd9LAoJeydcJycsICdZJywgJ90nfSwJeydcJycsICd5JywgJ/0nfSwKCXsnVCcsICdIJywgJ94nfSwJeyd0JywgJ2gnLCAn/id9LAoJeydzJywgJ3MnLCAn3yd9LAl7JyInLCAneScsICf/J30sCgl7J3MnLCAneicsICffJ30sCXsnaScsICdqJywgJ/8nfSwKfTsKCnVuc2lnbmVkIGludCBhY2NlbnRfdGFibGVfc2l6ZSA9IDY4Owo=