Reversi Strategy board game for two players. 1.0 dots.gif R0lGODlhEAAQAPeHAMzV3efs7s7U2YCFitfe4+/y9nKBkNLZ3hEUFtrg5fH09/f3+N3j6U9b ZzE4P9HY3ePl5vv8/r/I0b/H0PX3+Pv7+u/x85Sbot3i5ujt8KmxuE9aZe3t7dvi5/f4+cXM 1Pb4+Vtnc/b3+d3j5zY+R9vf4tzi562yuNjg5/P193aFlZKXm+Dl6f79/djf49Pb4w0QFZ2g pAkMD+Pp7ezv8rfAynV/iwkLD4yRloqUn+/x9B8lK+3x9dbd4klUYBQXGdbc4dTZ4NDW3MfK zwgKDhQXGxASFPLy8vn6+7nCzQMFBwYICufq7PT2+Pj4+UNITU5ZZff5+e7w8vv8/drg5N3i 51djcObq7URITigvN9fb3vz9/e/v797j5/7+/uvv8dvh5nl+hO/y9W9+jrO4vgQHCt/h4wwO EJKapNPc4/n5+bnDzSkvN9zg5Q8RE9DY3tLY29zk6cfP1kROWfv6+9vg5RASFWVscunq6+zs 7ent8QUHCujt79nh6O3x89TZ3/n6+pCUl9Xc4unt8N/j5QAAAP///////wAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAIcALAAAAAAQABAAAAjaAA8JHEiw4MAA QFwQCCDQzIA7F5gM/HJggSERL2jgwaJkyQ4bUgQSsGCopII4MW4UKnRmzgSBglKUNBTBBA4Y K934qCGwA4OZBUoMIVHkh4MxQQRGAdCngB4BHA5pCGFFxRo1A73M6EHoyMAucjC0IAghUJgT FATySTACzKCBEJ7skZElBxI/FQ2BSHNF4IoyK+1AEVJFx0wFbwQOILISQQMJCZrMnPJAIBk2 RhA4MNCGxc+SYuAI9IBmQwMDSegAAoCCRwYBeQZu+fOhTgWBTqg80MLFoO+CAQEAOw== dots.ico AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAA AAEAAAABAAAAAAAABwUDAAoHBAAKCAYADgoIAA8MCQAQDgwAExEPABUQDQAUEhAAFhQRABoX FAArJR8ANy8oAD84MQBHPjYATUhDAE5IRABZTkQAYFRJAGZaTgBwY1cAc2dbAHJsZQCOfm8A i391AIR+eQCQgXIAlYV2AIqFgACWkYwAn5SKAJeUkACbl5IApJqSAKKblACkoJ0AuLGpALiy rQC+uLMAysC3AM3CuQDQx78A0ci/AM/KxwDVzcYA2dTOAN3VzADc1tAA29jSAN3Y0QDe2tUA 49vTAOPc0wDg2dQA4t3WAOLf2QDl4NoA4+HfAObi3QDo4dkA6ePdAOnk3ADm5eMA6eXgAO3p 4wDs6uYA7uznAOvq6QDv7egA7e3tAPDt6QDy7+wA8vDuAPXx7gDy8vIA9/TxAPj29QD5+PYA +vn5AP38+wD+/v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAD///8A////////////////////////UDYtOVD//1A4NjZG////TiIUFBspUFAuNkxGLkb/ /ycNCQkOGzg5PVBQUEw2//8dBAAACRQtOU1QUFBQNv//IQIAAAkULj1MUFBQTDb//z8QAgQN H1BMNk5QUDZG////PyAaJk3//0Y2QDlA/////1BGNjlM////QC05UP///1AuPUxAMkb/JhYV GylQ//85PVBQUE02LA4LCw4bNv//Nk1QUFBQPx8JAAAJEyj//zZNUFBQTT0kBAAABBIr//9G Nk5QUDZGRhAABAwZTP///0A2OTZA//8/HRciRv///////////////////////wAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAA= black.gif R0lGODlhKAAoAOYAAIKTpHOCkVJcZwUGB7vCyunp6fHx8dPU0yMnLHJ+ipquw/z8/DY8Q4qb rUpTXIWNlu7u7WVwfS0zOMPK0fj4+Pr6+mJteqGxxFZga/b29pqgpU1XYebm5lxpdaOtuNLV 2MvP0ygtMkFJUTE3PdXY2258ivT09Nva2f7+/pObpB4iJXqJmtDR05GjtZutvz1FTau2wTpB SWt4hpapvGl2gmVzgVplceHh4JOlubK/zbG1un6Nnt/e3kRNVtnb3RASFaW2yBYZG4yesBgb HhseIeXn6oiZq6y9zhMVGEFLVF9reHuLnIWWqOfo6JChs93c27vF0Pz7+vX19ff39w4QEoCQ oHeGlkZPWAsMDj9HTzxETDpDTDxDS+Tk4/Pz8+zs6+De3fr6+fj49zhASTg/R0NLVPv7++vs 6+vs7fz8++vr6vb0852nsP39/f7+/fDw8O/v76e5zK+7x/n5+ePj4+Hk5tjX19rc33mImPHw 7/Ly86SywI2Wn7/EyQAAAP///yH5BAAAAAAALAAAAAAoACgAAAf/gH+Cg4SFhn8oh4qLi1N6 cG96GW6IKImMmIMUdzoPCRFKFgkPbFBFYW4Ll5mHejo0G0lZIj1XDg4CAh0JbB9eUaqshQQW L1xcMWTKMVy0GwI2HSUpJBlhbcJ/UnxJY2QMIxLi4iMMZC9XGzZKNVYEBmILrHAJW98SIQgI Kvv6IRIMYpTZgEEJjQAw0GSQx0hPAm8j8qkgMmRIkIpE+IUYQSaJg4IlAshBE2+RmQdjGEjY ZxEJkh8/qPxAcpEfQBEfLZRYQgDCFGyHdGQhM2JfECRUqGBZujQpTX4cRWzoQMMKkw95KKwa VAQDUaM/lg4YS3bA0h9BVGwkc0WAziUu/zh4MWNIQ8p8Q5CIJetnQF+zWJAMQRCCwQt1MqwY meBzKxoMY1YS0Yulr5/LmC0vRUIEgYQYVzBECFBlTxc9dAf1SUJGctixmTH7HYvlR0aAZdyW qOKEBAStg1JsYRBCRRAqsGPHHkslLQIGWaaW2NEAipoMQCnQ0BLRuNLkyv9iaU7k3wsHHWQs MSKnyxqGXV8UnYzcb3jZA6hwRjCCiwMbMuBhxAU8wFGBICRskEVEky1l2X2XbdaZBP4BuN4F J3xBgSAgCLBgcUiBdx9zSEClxX/qNTCDHQVMkUiHSajkHRYiLmdWc2qNEJ001LnwgRouovAB Bj2QgdcPNSpn1v8PgxUmggBKJFCFEBew6GIbdXTgABdFqRDibMv9pZ9NoGFQQwBMOAEDCUCi 0IYBCWxQhoxDvAbmnUsOkWMW/9WABxM4yOHDGVq1EUUKAmzZXRAx7UVWU2jlWKYFAewgxAxQ gAHHHIj8QYANApTRWghEMKoUjaiOh1Z5EpAhlQ0HMdHCBSDQYcCBiBSRAAYbiDDqREfBJNNM QWT0j6sERbDbpUfYwYEUQLWRBhsd8DoUPipMZFEQF2VEWKs4QRmgrApM8IQawCGyAAkyKJHo UOHos0+2/HjGEZ+6HDTlDHGwcMOthKQhhgcWKMFrGVyAI04IDJPDABcDFXQmdThcAMX/CU1g RwgKURRgRA0RgHpFGS8kw8DJAb1QRls2RCBDpUa0oEAOdvyLKyELhOFDFTLUUO0GG1wxchll 1AI0Bh3UUIIVO8SswBEs8ICGi4eYIcYHfJRQQg1K2GADBrnk4rUSylYKgBA4PM3CE2hIwZAh KMyxBglOBBBACT1HYMHeEdQgQ0grAGCEE2lD/UQBczGCAgVr0CEHAEvgYYXdlFuxwg4ANID2 DEBAcQAPiFew1SFxe/HFB3s0AAAAVbAOABNGNNBC2p2DUPMZJpgxuiIomCFFHhx80AcMbLRg PA4zuABEDhN8cAIPHLwxxdvCtEGBHhAU0MUJH0zgPQi2nwBGRRcFwCHFHEBlIwgKC8whhQFw qFEAB/Rz0AQacHiRwRzBqF+Im+2bQgakYAITSCEDFKjAAtLnP94twAxziGAFzNCG3S0iEAA7 white.gif R0lGODlhKAAoAOYAALi4t8zZ4unt8brK1bHBy+Pp7u3x9Nzh5fX19fLy8dXd5cvLytvc3cXM 0/T2+dne49TT0+3t7eXl5dnh6aq+y7K+xtTZ3fb4+vn7/L3M2MTDwvr6+qqsra3BzszQ1fL0 9uHl6Pr7/NHW2sbKzcHP2Ky1urHE0efr8LvEy+rq6bbI1dHd5sbR3b7AwqK0wPj4+MrV3t/k 6fP1+ODm7Ky5wbbG0am6xsXQ2sfX4cTU3cnS2c3T2OLh4brH09zi6a+8xaKyvam5ws3X4c7W 3qeusq7D0J6yvdDY4bLG1MHS3vDz9evv8vj6+6+ys/79/dfh59bb4NLb5P7+/fj49/j5+uns 8OTn6t7l7MbQ1r7Q27bH1Ky6xOzr69fX16W4w/3+/vz9/f39/fz9/vz8/Pv8/ff39/38+83U 2t/e3r7I0Ki8yOfn56q3v9ff58zY4MjIyLfAxrfK2Ono6M/Pz8vO1NXd4f3+/err7PDw8Pv7 +8vU2q65v6ewt/39/v7+/v///yH5BAAAAAAALAAAAAAoACgAAAf/gH+Cg4SFglJSZk5+foaO j5BgMgUKbjkwbnUgeFOKkJ+FSisDFF6mNjZqNhQEJA9LCGONoI4yMGouWygNHiIiFiJnWGkE FDVud1NjtIVXFEAVDTsWUAcHMdgHaFAWDTUUSHUJG7OgIQEueyMi1SB3AktLBksCJ1YxD0c6 JkV6XFNhQGHIYQQOHQsHCghQ8qHMhYcXHHwwIMCKDwVDBnQgIadMwEdhcBhp4YEBiCUfLjAh MwaMmJdkQlBxoMTeAwsZimCR86JcoScFPUCxYuACGTGMZiX1Y4fMBRlLrOQbUMQDlw2ODKjZ Q4eBFSVMkILy0yfEhSWUhGip0SXBMkJ9/0gAGWEBRNEvPiGRdbpkRpQcRdLwKFNIgBc4Ig5E cCCW2R8/X5wK8HEkg4k5XN4+zgGkgYWvIfKO/RIGwwdKLJCgQINg1osOFXYcuHNBlmNBeCNf MOBDiAoUEPB8POEFxZEYBpgwui0IMhgMSgocIUFghJw8gp64aAAlhRIMomlB7sP3QBIkLQb/ kUKCDZYHVmSEZt68Tx8wTJTMgIEETtvSGWxxxgFVOEBGeGPZV9YHJwQQRwVz4JHHCzVUMGCB B9L32Bf2hSDDCQrE8cMCEWxQxgA/XChDhsx94aJ9ZDgggAJZjHjHBlOgyMIBJ6yI4Cccuhjj CW0k8cMbd7zwAv8JW+jwwAnf/fjIeELKqEASe5C4gRlu2MDdDEX1IWUhuYnpBxkftpFFCRGO IQUIaqQxhA8CXIDUmLiNZ2YI0a0QRxP/+RFBEQTooEABSoRgJihlIoXXbjGsUAEADLT2xxQk /NDAEXQaZSZkjkD2xUt9CCLGhz7gUIIGa2D1Rx4HqFEDCwpcARYYfXC41FK5goFrI19QYcAM bQzAwRwRfBRGBANUcMMQE5zggKJh5Orii/b5+qsgaE62Ag2UWirIFHWwcoMQdDqAARlgHHWf ttqKaaoDS1wxgbFvpOCqIGHgQQIFPejAqQAOMBECGX2MwS6uZn7xxxdg0DvDFSIBwFr/Xi9Y UUMHPTwbrRLTHhwvXoyIwQRUM/gQABscQBABdoWEgcABNRDQMQxtFIDSBVQcTMbPMTHhgAEn XHHFClscu0ZPjoyRAAM1FFFDBjcckfNCIDugNU1EzzDBBDgEwcEbPCDwkSN54IFGGkWYMEAG SQjRxhUFnCDA3ScUEMMTbTyRBR8cLCBBLKDkkQAP3hSBRA1xZMCCEFEo0IYCCkSxAg5ZUMAB ABAMfvYnYyAgRxcjEICECUgg0XgSSeCQQxY17EFEExqgcYdHt4XxAh48QPAGCgQUE3wxbPDR BAALdLHGOHgaEkYZeMiBRhcLvNHC9RpoMEcXPHChxAufaxiGH4kJRCDHGjxIIEEKETSUR/ga EuJHGHlssMELG7zPXCAAOw== gameboard.png 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 TkSuQmCC gameboard.html 77u/PEhUTUw+DQo8SEVBRD4NCjxNRVRBIEhUVFAtRVFVSVY9IkNvbnRlbnQtVHlwZSIgQ09O VEVOVD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxNRVRBIEhUVFAtRVFVSVY9Ik1T VGhlbWVDb21wYXRpYmxlIiBDT05URU5UPSJZZXMiPg0KPFNDUklQVCBsYW5ndWFnZT0iSlNj cmlwdCI+DQoNCi8vIEJvYXJkIG9mIDggeCA4IG51bWJlcnM6DQovLyAgIDAgPSBlbXB0eQ0K Ly8gICAxID0gYmxhY2sNCi8vICAgMiA9IHdoaXRlDQp2YXIgZ0JvYXJkU3RhdGUgPSBbCVsg MCwgMCwgMCwgMCwgICAwLCAwLCAwLCAwLCBdLA0KCQkJCQlbIDAsIDAsIDAsIDAsICAgMCwg MCwgMCwgMCwgXSwNCgkJCQkJWyAwLCAwLCAwLCAwLCAgIDAsIDAsIDAsIDAsIF0sDQoJCQkJ CVsgMCwgMCwgMCwgMCwgICAwLCAwLCAwLCAwLCBdLA0KDQoJCQkJCVsgMCwgMCwgMCwgMCwg ICAwLCAwLCAwLCAwLCBdLA0KCQkJCQlbIDAsIDAsIDAsIDAsICAgMCwgMCwgMCwgMCwgXSwN CgkJCQkJWyAwLCAwLCAwLCAwLCAgIDAsIDAsIDAsIDAsIF0sDQoJCQkJCVsgMCwgMCwgMCwg MCwgICAwLCAwLCAwLCAwLCBdCV07DQoNCnZhciBnRGlyZWN0aW9ucwkJPSBbCVsgLTEsIC0x IF0sDQoJCQkJCQlbICAwLCAtMSBdLA0KCQkJCQkJWyAgMSwgLTEgXSwNCgkJCQkJCVsgIDEs ICAwIF0sDQoJCQkJCQlbICAxLCAgMSBdLA0KCQkJCQkJWyAgMCwgIDEgXSwNCgkJCQkJCVsg LTEsICAxIF0sDQoJCQkJCQlbIC0xLCAgMCBdCV07DQoNCnZhciBnQ3VycmVudFR1cm4JPSAw Ow0KdmFyIGdNeU51bWJlcgkJPSAwOw0KDQovLyBGb3JmZWl0cyB3aGVuIGNsb3NpbmcgdGhl IHdpbmRvdyBpZiB0aGUgZ2FtZSBpcyBzdGlsbCBpbiBwcm9ncmVzcw0KZnVuY3Rpb24gb3V0 bml0ICgpDQp7DQoJaWYgKCBnQ3VycmVudFR1cm4gKQ0KCXsNCgkJdmFyIGRvbSA9IG5ldyBB Y3RpdmVYT2JqZWN0KCAnTXN4bWwyLkRPTURvY3VtZW50JyApOw0KCQlkb20ubG9hZFhNTCgg JzxtZXNzYWdlPjx0aHJlYWQvPjx4IHhtbG5zPSJodHRwOi8vcmh5bWJveC5jb20vcHJvdG9j b2wvcmV2ZXJzaS5odG1sIzEuMCI+PGZvcmZlaXQvPjwveD48L21lc3NhZ2U+JyApOw0KCQlk b20uc2VsZWN0U2luZ2xlTm9kZSggJy9tZXNzYWdlL3RocmVhZCcgKS50ZXh0ID0gZXh0ZXJu YWwud25kLnBhcmFtc1sxXTsNCgkJZG9tLmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUo ICd0bycsIGV4dGVybmFsLnduZC5wYXJhbXNbMF0gKTsNCgkJd2FybiggJ1NFTlQ6ICcgKyBk b20ueG1sICk7DQoJCWV4dGVybmFsLlhNUFAuU2VuZFhNTCggZG9tICk7DQoJfQ0KfQ0KDQov LyBTZXRzIHVwIHRoZSBib2FyZCBhbmQgZG9lcyBjb25uZWN0aW9uIGhhbmRzaGFrZQ0KZnVu Y3Rpb24gaW5pdCAoKQ0Kew0KCWRvY3VtZW50Lm9uc2VsZWN0c3RhcnQgPSBkb2N1bWVudC5v bmRyYWdzdGFydCA9IGZ1bmN0aW9uKCl7cmV0dXJuIGV2ZW50LnNyY0VsZW1lbnQudGFnTmFt ZT09J1RFWFRBUkVBJ3x8ZXZlbnQuc3JjRWxlbWVudC50YWdOYW1lPT0nSU5QVVQnfTsNCgll eHRlcm5hbC53bmQuaGlkZSggZmFsc2UgKTsNCglleHRlcm5hbC53bmQuZm9jdXMoKTsNCgli b2FyZF9yZXNldCgpOw0KCWlmICggZXh0ZXJuYWwud25kLnBhcmFtc1syXSApDQoJew0KCQlk b2N1bWVudC5nZXRFbGVtZW50QnlJZCggJ3R4dC1uYW1lMScgKS5pbm5lclRleHQgPSBleHRl cm5hbC53bmQucGFyYW1zWzBdLnJlcGxhY2UoIC9cL3xcQC4qJC8sICcnICk7DQoJCWRvY3Vt ZW50LmdldEVsZW1lbnRCeUlkKCAndHh0LW5hbWUyJyApLmlubmVyVGV4dCA9IGV4dGVybmFs Lmdsb2JhbHMoICdjZmcnICkoICduaWNrJyApOw0KCQlnTXlOdW1iZXIgPSAyOw0KCQlpZiAo IDYgPT0gZXh0ZXJuYWwud25kLm1lc3NhZ2VCb3goIHRydWUsICdEbyB5b3Ugd2FudCB0byBw bGF5IGEgZ2FtZSBvZiBSZXZlcnNpIGFnYWluc3QgJyArIGRvY3VtZW50LmdldEVsZW1lbnRC eUlkKCAndHh0LW5hbWUxJyApLmlubmVyVGV4dCArICc/JywgZXh0ZXJuYWwuZ2xvYmFscygg J3NvZnR3YXJlbmFtZScgKSwgNCB8IDMyICkgKQ0KCQl7DQoJCQljb25maXJtX2ludml0YXRp b24oKTsNCgkJCWdDdXJyZW50VHVybiA9IDE7DQoJCQlzdGF0dXMoICdPcHBvbmVudFwncyBt b3ZlJyApOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJZGVueV9pbnZpdGF0aW9uKCk7DQoJCQll eHRlcm5hbC53bmQuY2xvc2UoKTsNCgkJfQ0KCX0NCgllbHNlDQoJew0KCQlkb2N1bWVudC5n ZXRFbGVtZW50QnlJZCggJ3R4dC1uYW1lMScgKS5pbm5lclRleHQgPSBleHRlcm5hbC5nbG9i YWxzKCAnY2ZnJyApKCAnbmljaycgKTsNCgkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoICd0 eHQtbmFtZTInICkuaW5uZXJUZXh0ID0gZXh0ZXJuYWwud25kLnBhcmFtc1swXS5yZXBsYWNl KCAvXC98XEAuKiQvLCAnJyApOw0KCQlnTXlOdW1iZXIgPSAxOw0KCQlyZXF1ZXN0X2ludml0 YXRpb24oKTsNCgl9DQp9DQoNCi8vIFNlbmQgYSBERU5JRUQgbWVzc2FnZSB0byB0aGUgb3Ro ZXIgcGFydHkNCmZ1bmN0aW9uIGRlbnlfaW52aXRhdGlvbiAoKQ0Kew0KCXZhciBkb20gPSBu ZXcgQWN0aXZlWE9iamVjdCggJ01zeG1sMi5ET01Eb2N1bWVudCcgKTsNCglkb20ubG9hZFhN TCggJzxpcSB0eXBlPSJlcnJvciI+PGdhbWUgeG1sbnM9Imh0dHA6Ly9yaHltYm94LmNvbS9w cm90b2NvbC9yZXZlcnNpLmh0bWwjMS4wIi8+PC9pcT4nICk7DQoJZG9tLmRvY3VtZW50RWxl bWVudC5zZXRBdHRyaWJ1dGUoICd0bycsIGV4dGVybmFsLnduZC5wYXJhbXNbMF0gKTsNCglk b20uZG9jdW1lbnRFbGVtZW50LnNldEF0dHJpYnV0ZSggJ2lkJywgZXh0ZXJuYWwud25kLnBh cmFtc1sxXSApOw0KCXdhcm4oICdTRU5UOiAnICsgZG9tLnhtbCApOw0KCWV4dGVybmFsLlhN UFAuU2VuZFhNTCggZG9tICk7DQp9DQoNCi8vIFNlbmQgYW4gT0sgbWVzc2FnZSB0byB0aGUg b3RoZXIgcGFydHkNCmZ1bmN0aW9uIGNvbmZpcm1faW52aXRhdGlvbiAoKQ0Kew0KCXZhciBk b20gPSBuZXcgQWN0aXZlWE9iamVjdCggJ01zeG1sMi5ET01Eb2N1bWVudCcgKTsNCglkb20u bG9hZFhNTCggJzxpcSB0eXBlPSJyZXN1bHQiPjxnYW1lIHhtbG5zPSJodHRwOi8vcmh5bWJv eC5jb20vcHJvdG9jb2wvcmV2ZXJzaS5odG1sIzEuMCIvPjwvaXE+JyApOw0KCWRvbS5kb2N1 bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKCAndG8nLCBleHRlcm5hbC53bmQucGFyYW1zWzBd ICk7DQoJZG9tLmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoICdpZCcsIGV4dGVybmFs LnduZC5wYXJhbXNbMV0gKTsNCgl3YXJuKCAnU0VOVDogJyArIGRvbS54bWwgKTsNCglleHRl cm5hbC5YTVBQLlNlbmRYTUwoIGRvbSApOw0KfQ0KDQovLyBBc2sgaWYgdGhlIG90aGVyIHBh cnR5IHdhbnRzIHRvIHBsYXkNCmZ1bmN0aW9uIHJlcXVlc3RfaW52aXRhdGlvbiAoKQ0Kew0K CXN0YXR1cyggJ0Nvbm5lY3RpbmcuLi4nICk7DQoJdmFyIGRvbSA9IG5ldyBBY3RpdmVYT2Jq ZWN0KCAnTXN4bWwyLkRPTURvY3VtZW50JyApOw0KCWRvbS5sb2FkWE1MKCAnPGlxIHR5cGU9 InNldCI+PGdhbWUgeG1sbnM9Imh0dHA6Ly9yaHltYm94LmNvbS9wcm90b2NvbC9yZXZlcnNp Lmh0bWwjMS4wIi8+PC9pcT4nICk7DQoJZG9tLmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1 dGUoICd0bycsIGV4dGVybmFsLnduZC5wYXJhbXNbMF0gKTsNCglkb20uZG9jdW1lbnRFbGVt ZW50LnNldEF0dHJpYnV0ZSggJ2lkJywgZXh0ZXJuYWwud25kLnBhcmFtc1sxXSApOw0KCXdh cm4oICdTRU5UOiAnICsgZG9tLnhtbCApOw0KCWV4dGVybmFsLlhNUFAuU2VuZFhNTCggZG9t ICk7DQp9DQoNCi8vIEhhbmRsZXMgaW5jb21pbmcgSVFzIChwcmUtZmlsdGVyZWQgYnkgcmV2 ZXJzaS54bWwgaW4gdGhlIE9uWE1QUElRIGV2ZW50KQ0KZnVuY3Rpb24gcmVjdl9pcSAoIGNv bnRleHQgKQ0Kew0KCWlmICggZ0N1cnJlbnRUdXJuICE9IDAgKQ0KCQlyZXR1cm47DQoJdmFy IGlxX3R5cGUgPSBjb250ZXh0KCAneG1sZG9tJyApLmRvY3VtZW50RWxlbWVudC5nZXRBdHRy aWJ1dGUoICd0eXBlJyApOw0KCS8vIEludml0YXRpb24gYWNjZXB0ZWQNCglpZiAoIGlxX3R5 cGUgPT0gJ3Jlc3VsdCcgKQ0KCXsNCgkJc3RhdHVzKCAnWW91ciBtb3ZlJyApOw0KCQlnQ3Vy cmVudFR1cm4gPSAxOw0KCX0NCgkvLyBJbnZpdGF0aW9uIGRlbmllZA0KCWVsc2UgaWYgKCBp cV90eXBlID09ICdlcnJvcicgKQ0KCXsNCgkJc3RhdHVzKCBleHRlcm5hbC53bmQucGFyYW1z WzBdLnJlcGxhY2UoIC9cL3xcQC4qJC8sICcnICkgKyAnIGRlbmllZCB0aGUgaW52aXRhdGlv bicgKTsNCgl9DQp9DQoNCi8vIEhhbmRsZXMgaW5jb21pbmcgbWVzc2FnZXMgKHByZS1maWx0 ZXJlZCBieSByZXZlcnNpLnhtbCBpbiB0aGUgT25YTVBQTWVzc2FnZSBldmVudCkNCmZ1bmN0 aW9uIHJlY3ZfbXNnICggY29udGV4dCApDQp7DQoJaWYgKCBnQ3VycmVudFR1cm4gPT0gMCAp DQoJCXJldHVybjsNCg0KCS8vIE90aGVyIHBlcnNvbiBwYXNzZXMgdGhlIHR1cm4NCgl2YXIg dGFnID0gY29udGV4dCggJ3htbGRvbScgKS5zZWxlY3RTaW5nbGVOb2RlKCAiL21lc3NhZ2Uv eFtAeG1sbnM9J2h0dHA6Ly9yaHltYm94LmNvbS9wcm90b2NvbC9yZXZlcnNpLmh0bWwjMS4w J10vcGFzcyIgKTsNCglpZiAoIHRhZyAmJiBnQ3VycmVudFR1cm4gIT0gZ015TnVtYmVyICYm IGdDdXJyZW50VHVybiAhPSAwICkNCgl7DQoJCWlmICggbW92ZV9wb3NzaWJsZSggZ015TnVt YmVyICkgKQ0KCQl7DQoJCQlnQ3VycmVudFR1cm4gPSBnTXlOdW1iZXI7DQoJCQlzdGF0dXMo ICdZb3VyIG1vdmUnICk7DQoJCX0NCgkJZWxzZQ0KCQkJZ2FtZV9lbmQoKTsNCgkJcmV0dXJu Ow0KCX0NCg0KCS8vIE90aGVyIHBlcnNvbiBmb3JmZWl0cyB0aGUgZ2FtZQ0KCXRhZyA9IGNv bnRleHQoICd4bWxkb20nICkuc2VsZWN0U2luZ2xlTm9kZSggIi9tZXNzYWdlL3hbQHhtbG5z PSdodHRwOi8vcmh5bWJveC5jb20vcHJvdG9jb2wvcmV2ZXJzaS5odG1sIzEuMCddL2ZvcmZl aXQiICk7DQoJaWYgKCB0YWcgKQ0KCXsNCgkJZ0N1cnJlbnRUdXJuID0gMDsNCgkJc3RhdHVz KCBleHRlcm5hbC53bmQucGFyYW1zWzBdLnJlcGxhY2UoIC9cL3xcQC4qJC8sICcnICkgKyAn IGhhcyBsZWZ0IHRoZSBnYW1lJyApOw0KCQlyZXR1cm47DQoJfQ0KDQoJLy8gT3RoZXIgcGVy c29uIG1ha2VzIGEgbW92ZQ0KCXRhZyA9IGNvbnRleHQoICd4bWxkb20nICkuc2VsZWN0U2lu Z2xlTm9kZSggIi9tZXNzYWdlL3hbQHhtbG5zPSdodHRwOi8vcmh5bWJveC5jb20vcHJvdG9j b2wvcmV2ZXJzaS5odG1sIzEuMCddL21vdmVbeCBhbmQgeV0iICk7DQoJaWYgKCB0YWcgKQ0K CXsNCgkJdmFyIHggPSBwYXJzZUludCggdGFnLnNlbGVjdFNpbmdsZU5vZGUoICd4JyApLnRl eHQsIDEwICk7DQoJCXZhciB5ID0gcGFyc2VJbnQoIHRhZy5zZWxlY3RTaW5nbGVOb2RlKCAn eScgKS50ZXh0LCAxMCApOw0KCQlpZiAoIGlzTmFOKCB4ICkgfHwgaXNOYU4oIHkgKSApDQoJ CQlyZXR1cm47DQoJCXZhciBIaXNOdW1iZXIgPSBnTXlOdW1iZXIgPT0gMSA/IDIgOiAxOw0K CQlpZiAoIGdDdXJyZW50VHVybiA9PSBIaXNOdW1iZXIgJiYgZHJhd19hbGxvd2VkKCB4LCB5 LCBIaXNOdW1iZXIgKSApDQoJCXsNCgkJCWdDdXJyZW50VHVybiA9IGdNeU51bWJlcjsNCgkJ CXN0YXR1cyggJ1lvdXIgbW92ZScgKTsNCgkJCXVwZGF0ZV9zY29yZXMoKTsNCgkJfQ0KDQoJ CWlmICggISBtb3ZlX3Bvc3NpYmxlKCBnTXlOdW1iZXIgKSApDQoJCXsNCgkJCWlmICggISBt b3ZlX3Bvc3NpYmxlKCBIaXNOdW1iZXIgKSApDQoJCQkJZ2FtZV9lbmQoKTsNCgkJCWVsc2UN CgkJCXsNCgkJCQlnQ3VycmVudFR1cm4gPSBIaXNOdW1iZXI7DQoJCQkJc3RhdHVzKCAnT3Bw b25lbnRcJ3MgbW92ZScgKTsNCg0KCQkJCXZhciBkb20gPSBuZXcgQWN0aXZlWE9iamVjdCgg J01zeG1sMi5ET01Eb2N1bWVudCcgKTsNCgkJCQlkb20ubG9hZFhNTCggJzxtZXNzYWdlPjx0 aHJlYWQvPjx4IHhtbG5zPSJodHRwOi8vcmh5bWJveC5jb20vcHJvdG9jb2wvcmV2ZXJzaS5o dG1sIzEuMCI+PHBhc3MvPjwveD48L21lc3NhZ2U+JyApOw0KCQkJCWRvbS5zZWxlY3RTaW5n bGVOb2RlKCAnL21lc3NhZ2UvdGhyZWFkJyApLnRleHQgPSBleHRlcm5hbC53bmQucGFyYW1z WzFdOw0KCQkJCWRvbS5kb2N1bWVudEVsZW1lbnQuc2V0QXR0cmlidXRlKCAndG8nLCBleHRl cm5hbC53bmQucGFyYW1zWzBdICk7DQoJCQkJd2FybiggJ1NFTlQ6ICcgKyBkb20ueG1sICk7 DQoJCQkJZXh0ZXJuYWwuWE1QUC5TZW5kWE1MKCBkb20gKTsNCgkJCX0NCgkJfQ0KCQlyZXR1 cm47DQoJfQ0KfQ0KDQovLyBTaG93IHRoZSBvdXRjb21lIG9mIHRoZSBnYW1lDQpmdW5jdGlv biBnYW1lX2VuZCAoKQ0Kew0KCWdDdXJyZW50VHVybiA9IDA7DQoJdmFyIHMxID0gcGFyc2VJ bnQoIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCAndHh0LXNjb3JlMScgKS5pbm5lclRleHQs IDEwICk7DQoJdmFyIHMyID0gcGFyc2VJbnQoIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCAn dHh0LXNjb3JlMicgKS5pbm5lclRleHQsIDEwICk7DQoJaWYgKCBzMSA9PSBzMiApDQoJCXN0 YXR1cyggJ0dBTUUgT1ZFUiA6IFRpZWQnICk7DQoJZWxzZSBpZiAoICggczEgPiBzMiAmJiBn TXlOdW1iZXIgPT0gMiApIHx8ICggczEgPCBzMiAmJiBnTXlOdW1iZXIgPT0gMSApICkNCgkJ c3RhdHVzKCAnR0FNRSBPVkVSIDogWW91IGxvc2UnICk7DQoJZWxzZQ0KCQlzdGF0dXMoICdH QU1FIE9WRVIgOiBZb3Ugd2luJyApOw0KfQ0KDQovLyBJbml0aWFsaXplIHRoZSBnYW1lIHdp dGggdHdvIHBhaXJzIG9mIGRvdHMNCmZ1bmN0aW9uIGJvYXJkX3Jlc2V0ICgpDQp7DQoJZm9y ICggdmFyIGkgPSAxOyBpIDw9IDg7ICsraSApDQoJCWZvciAoIHZhciBqID0gMTsgaiA8PSA4 OyArK2ogKQ0KCQkJc2V0X3N0YXRlKCBpLCBqLCAwICk7DQoNCglzZXRfc3RhdGUgKCA0LCA0 LCAxICk7DQoJc2V0X3N0YXRlICggNSwgNSwgMSApOw0KCXNldF9zdGF0ZSAoIDUsIDQsIDIg KTsNCglzZXRfc3RhdGUgKCA0LCA1LCAyICk7DQoNCgl1cGRhdGVfc2NvcmVzKCk7DQp9DQoN Ci8vIFJldHVybnMgdHJ1ZSBpZiB0aGUgcGxheWVyIGNhbiBzdGlsbCBtYWtlIGEgbW92ZSwg ZmFsc2UgaWYgdGhlIHBsYXllciBjYW4gbm90IG1ha2UgYW55IG1vdmVzDQpmdW5jdGlvbiBt b3ZlX3Bvc3NpYmxlICggcGxheWVyICkNCnsNCglmb3IgKCB2YXIgeCA9IDE7IHggPD0gODsg Kyt4ICkNCgkJZm9yICggdmFyIHkgPSAxOyB5IDw9IDg7ICsreSApDQoJCXsNCgkJCWlmICgg Z2V0X3N0YXRlKCB4LCB5ICkgIT0gMCApDQoJCQkJY29udGludWU7DQoJCQlmb3IgKCB2YXIg aSA9IDA7IGkgPCA4OyArK2kgKQ0KCQkJCWlmICggZmluZF9hbGxvd2VkKCB4LCB5LCBnRGly ZWN0aW9uc1tpXVswXSwgZ0RpcmVjdGlvbnNbaV1bMV0sIHBsYXllciApICkNCgkJCQkJcmV0 dXJuIHRydWU7DQoJCX0NCglyZXR1cm4gZmFsc2U7DQp9DQoNCi8vIERyYXcgdGhlIHNjb3Jl Ym9hcmQNCmZ1bmN0aW9uIHVwZGF0ZV9zY29yZXMgKCkNCnsNCgl2YXIgczEgPSAwOw0KCXZh ciBzMiA9IDA7DQoJZm9yICggdmFyIGkgPSAwOyBpIDwgODsgKytpICkNCgkJZm9yICggdmFy IGogPSAwOyBqIDwgODsgKytqICkNCgkJew0KCQkJdmFyIHZhbHVlID0gZ0JvYXJkU3RhdGVb IGkgXVsgaiBdOw0KCQkJaWYgKCB2YWx1ZSA9PSAxICkNCgkJCQkrK3MxOw0KCQkJZWxzZSBp ZiAoIHZhbHVlID09IDIgKQ0KCQkJCSsrczI7DQoJCX0NCglkb2N1bWVudC5nZXRFbGVtZW50 QnlJZCggJ3R4dC1zY29yZTEnICkuaW5uZXJUZXh0ID0gczE7DQoJZG9jdW1lbnQuZ2V0RWxl bWVudEJ5SWQoICd0eHQtc2NvcmUyJyApLmlubmVyVGV4dCA9IHMyOw0KfQ0KDQovLyBVcGRh dGUgc3RhdHVzbWVzc2FnZQ0KZnVuY3Rpb24gc3RhdHVzICggc3RyICkNCnsNCglkb2N1bWVu dC5nZXRFbGVtZW50QnlJZCggJ3R4dC1zdGF0dXMnICkuaW5uZXJUZXh0ID0gc3RyOw0KfQ0K DQovLyBTZW5kIHNvbWV0aGluZyB0byB0aGUgTmV0d29yayBNb25pdG9yDQpmdW5jdGlvbiB3 YXJuICggc3RyICkNCnsNCglleHRlcm5hbC53aW5kb3dzKCAnTWFpbldpbmRvdycgKS5Ebygg J3dhcm4nLCBzdHIgKTsNCn0NCg0KLy8gUmV0dXJucyB0aGUgY3VycmVudCB2YWx1ZSBvZiBh IGNlcnRhaW4gcG9zaXRpb24gb24gdGhlIGJvYXJkDQpmdW5jdGlvbiBnZXRfc3RhdGUgKCB4 LCB5ICkNCnsNCglyZXR1cm4gZ0JvYXJkU3RhdGVbIHktMSBdWyB4LTEgXTsNCn0NCg0KLy8g U2V0cyB0aGUgdmFsdWUgaW4gdGhlIGRhdGFzdHJ1Y3R1cmUgYW5kIHVwZGF0ZXMgdGhlIEhU TE0NCmZ1bmN0aW9uIHNldF9zdGF0ZSAoIHgsIHksIHZhbHVlICkNCnsNCglnQm9hcmRTdGF0 ZVsgeS0xIF1bIHgtMSBdID0gdmFsdWU7DQoJZHJhd19zcXVhcmUoIHgsIHksIHZhbHVlICk7 DQp9DQoNCi8vIFNldHMgdGhlIGJhY2tncm91bmQgaW1hZ2Ugb2YgYSBzcXVhcmUgdG8gdGhl IHByb3BlciBjb2xvdXINCmZ1bmN0aW9uIGRyYXdfc3F1YXJlICggeCwgeSwgcGxheWVyICkN CnsNCglkb2N1bWVudC5nZXRFbGVtZW50QnlJZCggJ2JvYXJkLWFyZWEnICkuY2hpbGROb2Rl cy5pdGVtKCB4ICsgKCAoIHkgLSAxICkgKiA4ICkgLSAxICkuc3R5bGUuYmFja2dyb3VuZElt YWdlID0gcGxheWVyID09IDEgPyAndXJsKCBibGFjay5naWYgKScgOiAoIHBsYXllciA9PSAy ID8gJ3VybCggd2hpdGUuZ2lmICknIDogJycgKTsNCn0NCg0KLy8gQ2xpY2sgZXZlbnQgZm9y IGV2ZXJ5IEhUTUwgc3F1YXJlDQpmdW5jdGlvbiBnbyAoIHgsIHkgKQ0Kew0KCWlmICggZ0N1 cnJlbnRUdXJuID09IGdNeU51bWJlciAmJiBkcmF3X2FsbG93ZWQoIHgsIHksIGdNeU51bWJl ciApICkNCgl7DQoJCXZhciBkb20gPSBuZXcgQWN0aXZlWE9iamVjdCggJ01zeG1sMi5ET01E b2N1bWVudCcgKTsNCgkJZG9tLmxvYWRYTUwoICc8bWVzc2FnZT48dGhyZWFkLz48eCB4bWxu cz0iaHR0cDovL3JoeW1ib3guY29tL3Byb3RvY29sL3JldmVyc2kuaHRtbCMxLjAiPjxtb3Zl Pjx4Lz48eS8+PC9tb3ZlPjwveD48L21lc3NhZ2U+JyApOw0KCQlkb20uc2VsZWN0U2luZ2xl Tm9kZSggJy9tZXNzYWdlL3gvbW92ZS94JyApLnRleHQgPSB4Ow0KCQlkb20uc2VsZWN0U2lu Z2xlTm9kZSggJy9tZXNzYWdlL3gvbW92ZS95JyApLnRleHQgPSB5Ow0KCQlkb20uc2VsZWN0 U2luZ2xlTm9kZSggJy9tZXNzYWdlL3RocmVhZCcgKS50ZXh0ID0gZXh0ZXJuYWwud25kLnBh cmFtc1sxXTsNCgkJZG9tLmRvY3VtZW50RWxlbWVudC5zZXRBdHRyaWJ1dGUoICd0bycsIGV4 dGVybmFsLnduZC5wYXJhbXNbMF0gKTsNCgkJd2FybiggJ1NFTlQ6ICcgKyBkb20ueG1sICk7 DQoJCWV4dGVybmFsLlhNUFAuU2VuZFhNTCggZG9tICk7DQoNCgkJc3RhdHVzKCAnT3Bwb25l bnRcJ3MgbW92ZScgKTsNCgkJZ0N1cnJlbnRUdXJuID0gZ015TnVtYmVyID09IDEgPyAyIDog MTsNCgkJdXBkYXRlX3Njb3JlcygpOw0KCQlpZiAoICEgbW92ZV9wb3NzaWJsZSggMSApICYm ICEgbW92ZV9wb3NzaWJsZSggMiApICkNCgkJCWdhbWVfZW5kKCk7DQoJfQ0KfQ0KDQovLyBE cmF3IGFsbCBwb3NzaWJsZSBzcXVhcmVzIGZyb20gYSBjZXJ0YWluIHBvaW50IGFjY29yZGlu ZyB0byB0aGUgcnVsZXMgb2YgdGhlIGdhbWUuDQovLyBSZXR1cm4gdHJ1ZSBpZiAoeCx5KSB3 YXMgYSB2YWxpZCBtb3ZlIG9yIGZhbHNlIGlmIGl0IHdhcyBub3QuDQpmdW5jdGlvbiBkcmF3 X2FsbG93ZWQgKCB4LCB5LCBwbGF5ZXIgKQ0Kew0KCWlmICggZ2V0X3N0YXRlKCB4LCB5ICkg IT0gMCApDQoJCXJldHVybiBmYWxzZTsNCgl2YXIgc3RlcHMgPSAwOw0KCXZhciByZXR2YWwg PSBmYWxzZTsNCglmb3IgKCB2YXIgaSA9IDA7IGkgPCA4OyArK2kgKQ0KCQlpZiAoIHN0ZXBz ID0gZmluZF9hbGxvd2VkKCB4LCB5LCBnRGlyZWN0aW9uc1tpXVswXSwgZ0RpcmVjdGlvbnNb aV1bMV0sIHBsYXllciApICkNCgkJew0KCQkJZm9yICggdmFyIGogPSAxOyBqIDw9IHN0ZXBz ICsgMTsgKytqICkNCgkJCQlzZXRfc3RhdGUoIHggKyAoIGogKiBnRGlyZWN0aW9uc1tpXVsw XSApLCB5ICsgKCBqICogZ0RpcmVjdGlvbnNbaV1bMV0gKSwgcGxheWVyICk7DQoJCQlzZXRf c3RhdGUoIHgsIHksIHBsYXllciApOw0KCQkJcmV0dmFsID0gdHJ1ZTsNCgkJfQ0KCXJldHVy biByZXR2YWw7DQp9DQoNCi8vIFJldHVybnMgaG93IG1hbnkgc3RlcHMgZnJvbSAoeCx5KSBp biBkaXJlY3Rpb24gKHYxLHYyKSB0aGUgcGxheWVyIGNhbiBjYXB0dXJlDQpmdW5jdGlvbiBm aW5kX2FsbG93ZWQgKCB4LCB5LCB2MSwgdjIsIHBsYXllciApDQp7DQoJdmFyIHN0ZXBzID0g LTE7DQoJdmFyIHZhbHVlID0gMDsNCglkbw0KCXsNCgkJKytzdGVwczsNCgkJeCArPSB2MTsN CgkJeSArPSB2MjsNCgkJaWYgKCB4IDw9IDAgfHwgeSA8PSAwIHx8IHggPiA4IHx8IHkgPiA4 ICkNCgkJCXJldHVybiAwOw0KCQl2YWx1ZSA9IGdldF9zdGF0ZSggeCwgeSApOw0KCX0NCgl3 aGlsZSAoIHZhbHVlICE9IDAgJiYgdmFsdWUgIT0gcGxheWVyICkNCglyZXR1cm4gdmFsdWUg PT0gcGxheWVyID8gc3RlcHMgOiAwOw0KfQ0KDQo8L1NDUklQVD4NCjxTVFlMRSB0eXBlPSJ0 ZXh0L2NzcyI+DQpCT0RZIHsNCgljdXJzb3I6IGRlZmF1bHQ7DQp9DQpESVYgew0KCWZvbnQt d2VpZ2h0OiBib2xkOw0KCXBvc2l0aW9uOiBhYnNvbHV0ZTsNCglmb250LWZhbWlseTogVGFo b21hOw0KCWNvbG9yOiAjNDU2OEE3Ow0KfQ0KI3R4dC1uYW1lMSB7DQoJZm9udC1zaXplOiAx NHB4Ow0KCWxlZnQ6IDM1cHg7DQoJdG9wOiAxM3B4Ow0KCXdpZHRoOiAxNTBweDsNCn0NCiN0 eHQtbmFtZTIgew0KCWZvbnQtc2l6ZTogMTRweDsNCglsZWZ0OiAyMTFweDsNCgl0b3A6IDEz cHg7DQoJd2lkdGg6IDE1MHB4Ow0KCXRleHQtYWxpZ246IHJpZ2h0Ow0KfQ0KI3R4dC1zY29y ZTEgew0KCWZvbnQtc2l6ZTogMzBweDsNCglsZWZ0OiAzNXB4Ow0KCXRvcDogMzJweDsNCgl3 aWR0aDogMTUwcHg7DQp9DQojdHh0LXNjb3JlMiB7DQoJZm9udC1zaXplOiAzMHB4Ow0KCWxl ZnQ6IDIxMXB4Ow0KCXRvcDogMzJweDsNCgl3aWR0aDogMTUwcHg7DQoJdGV4dC1hbGlnbjog cmlnaHQ7DQp9DQojdHh0LXN0YXR1cyB7DQoJZm9udC1zaXplOiAxOHB4Ow0KCWxlZnQ6IDBw eDsNCgl0b3A6IDQ2cHg7DQoJd2lkdGg6IDEwMCU7DQoJdGV4dC1hbGlnbjogY2VudGVyOw0K fQ0KI2JvYXJkLWFyZWEgew0KCWxlZnQ6IDM1cHg7DQoJdG9wOiA3OHB4Ow0KCXdpZHRoOiAz MjhweDsNCgloZWlnaHQ6IDMyOHB4Ow0KfQ0KLnNxdWFyZSB7DQoJbWFyZ2luLXJpZ2h0OiAx cHg7DQoJbWFyZ2luLWJvdHRvbTogMXB4Ow0KCXdpZHRoOiA0MHB4Ow0KCWhlaWdodDogNDBw eDsNCgliYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0Ow0KfQ0KPC9TVFlMRT4NCjwvSEVB RD4NCjxCT0RZIG9ubG9hZD0iaW5pdCgpIiBvbnVubG9hZD0ib3V0bml0KCkiIG9ua2V5ZG93 bj0iaWYoZXZlbnQua2V5Q29kZT09MjcpZXh0ZXJuYWwud25kLmNsb3NlKCkiIGJnY29sb3I9 d2hpdGUgYmFja2dyb3VuZD0iZ2FtZWJvYXJkLnBuZyIgc2Nyb2xsPW5vPg0KDQo8RElWIGlk PXR4dC1uYW1lMT48L0RJVj4NCjxESVYgaWQ9dHh0LW5hbWUyPjwvRElWPg0KPERJViBpZD10 eHQtc2NvcmUxPjwvRElWPg0KPERJViBpZD10eHQtc2NvcmUyPjwvRElWPg0KPERJViBpZD10 eHQtc3RhdHVzPjwvRElWPg0KDQo8RElWIGlkPWJvYXJkLWFyZWE+DQoNCgk8U1BBTiBjbGFz cz1zcXVhcmUgb25jbGljaz0iZ28oMSwxKSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUg b25jbGljaz0iZ28oMiwxKSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0i Z28oMywxKSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNCwxKSI+ PC9TUEFOPgkJPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDUsMSkiPjwvU1BBTj4J PFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDYsMSkiPjwvU1BBTj4JPFNQQU4gY2xh c3M9c3F1YXJlIG9uY2xpY2s9ImdvKDcsMSkiPjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJl IG9uY2xpY2s9ImdvKDgsMSkiPjwvU1BBTj4NCgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGlj az0iZ28oMSwyKSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oMiwy KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oMywyKSI+PC9TUEFO Pgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNCwyKSI+PC9TUEFOPgkJPFNQQU4g Y2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDUsMikiPjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1 YXJlIG9uY2xpY2s9ImdvKDYsMikiPjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xp Y2s9ImdvKDcsMikiPjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDgs MikiPjwvU1BBTj4NCgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oMSwzKSI+PC9T UEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oMiwzKSI+PC9TUEFOPgk8U1BB TiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oMywzKSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1z cXVhcmUgb25jbGljaz0iZ28oNCwzKSI+PC9TUEFOPgkJPFNQQU4gY2xhc3M9c3F1YXJlIG9u Y2xpY2s9ImdvKDUsMykiPjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9Imdv KDYsMykiPjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDcsMykiPjwv U1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDgsMykiPjwvU1BBTj4NCgk8 U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oMSw0KSI+PC9TUEFOPgk8U1BBTiBjbGFz cz1zcXVhcmUgb25jbGljaz0iZ28oMiw0KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUg b25jbGljaz0iZ28oMyw0KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0i Z28oNCw0KSI+PC9TUEFOPgkJPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDUsNCki PjwvU1BBTj4JPFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDYsNCkiPjwvU1BBTj4J PFNQQU4gY2xhc3M9c3F1YXJlIG9uY2xpY2s9ImdvKDcsNCkiPjwvU1BBTj4JPFNQQU4gY2xh c3M9c3F1YXJlIG9uY2xpY2s9ImdvKDgsNCkiPjwvU1BBTj4NCg0KCTxTUEFOIGNsYXNzPXNx dWFyZSBvbmNsaWNrPSJnbygxLDUpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNs aWNrPSJnbygyLDUpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbygz LDUpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbyg0LDUpIj48L1NQ QU4+CQk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNSw1KSI+PC9TUEFOPgk8U1BB TiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNiw1KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1z cXVhcmUgb25jbGljaz0iZ28oNyw1KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25j bGljaz0iZ28oOCw1KSI+PC9TUEFOPg0KCTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJn bygxLDYpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbygyLDYpIj48 L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbygzLDYpIj48L1NQQU4+CTxT UEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbyg0LDYpIj48L1NQQU4+CQk8U1BBTiBjbGFz cz1zcXVhcmUgb25jbGljaz0iZ28oNSw2KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUg b25jbGljaz0iZ28oNiw2KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0i Z28oNyw2KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oOCw2KSI+ PC9TUEFOPg0KCTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbygxLDcpIj48L1NQQU4+ CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbygyLDcpIj48L1NQQU4+CTxTUEFOIGNs YXNzPXNxdWFyZSBvbmNsaWNrPSJnbygzLDcpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFy ZSBvbmNsaWNrPSJnbyg0LDcpIj48L1NQQU4+CQk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGlj az0iZ28oNSw3KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNiw3 KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNyw3KSI+PC9TUEFO Pgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oOCw3KSI+PC9TUEFOPg0KCTxTUEFO IGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbygxLDgpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNx dWFyZSBvbmNsaWNrPSJnbygyLDgpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNs aWNrPSJnbygzLDgpIj48L1NQQU4+CTxTUEFOIGNsYXNzPXNxdWFyZSBvbmNsaWNrPSJnbyg0 LDgpIj48L1NQQU4+CQk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNSw4KSI+PC9T UEFOPgk8U1BBTiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNiw4KSI+PC9TUEFOPgk8U1BB TiBjbGFzcz1zcXVhcmUgb25jbGljaz0iZ28oNyw4KSI+PC9TUEFOPgk8U1BBTiBjbGFzcz1z cXVhcmUgb25jbGljaz0iZ28oOCw4KSI+PC9TUEFOPg0KDQo8L0RJVj4NCg0KPC9CT0RZPg0K PC9IVE1MPg0K