ÎÌÌÌ̈ˆˆ¬ªªª¬ˆˆˆ¬ÌÌ̬ÌÀ̬ÌÀ̬ÌÀÌÌÌìÌÀÀî̬ÀÌÀ¬ÀÀÀ¬ÀÀÀ¬ÀÀÎÌÌÌ̈ˆˆ¬ªªª¬ˆˆˆ¬ÌÌ̬ÌÌ̬ÌÀ̬ÌÀÌÌÌìÌÀÀî̬ÀÌ̬ÀÀÀ¬ÀÀÀ¬ÀÀ¬ÌÌ̬ªªª¬ª¬ª¬ªÊ̬ªªªŒˆˆˆÌÀÌÎÌÌÎ̬̪ªÀ쬪ÀÀÀÌîÀìîÌÌîî¬ÌÌ̬ªªª¬ª¬ª¬ªÊ̬ªªªŒˆˆˆÌÀÌÎÌÌÎ̬̪ªÀ쬪ÀÀÀÌîÀìîÌÌîî >À?îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»îî›™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîÌÌÌÌîîîÌÌÌîîîîÌÌîîîÌÌÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîÌÌÌÌîîîÌÌÌîîîîÌÌîîîÌÌÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîÌÌîÌÌîÌÌîîÌÌÌîîÌÌîîÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîÌÌîÌÌîÌÌîîÌÌÌîîÌÌîîÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîÌÌÌîîÌÌÌîÌîÌÌîÌîîîÌÌÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîÌÌÌîîÌÌÌîÌîÌÌîÌîîîÌÌÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî»»¾»ë¾»»¾»»¾»ë¾»ë¾ë¾¾ë¾îîîîîîîîîîîîîîþÿîþÿîÿþÿïîÿïîîîîî¹îî›îîîîÌÌîîîîÌÌîîÌîÌÌÌÌÌîÌÌîîÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¾»î¾ë¾¾ëî¾ëî¾ë¾¾ë¾¾ë¾¾»¾îîîîîîîîîîîîîîÿþïÿþïÿîîÿþïþîîîîî¹îî›îîîîÌÌîîîîÌÌîîÌîÌÌÌÌÌîÌÌîîÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî»ë¾ë¾¾»ë¾»ë¾ë¾¾ë¾¾ë¾¾»»îîîîîîîîîîîîîîÿïïÿïïîîÿïîÿÿîîîîî¹îî›îîîîÌÌÌÌÌîîÌÌÌîîîîîÌîîîÌÌÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¾»¾»ë¾ëî¾ëî¾ë¾¾»ë¾ë¾¾ë»îîîîîîîîîîîîîîÿîïÿîïÿþïîîîþîîîîî¹îî›îîîîÌÌÌÌÌîîÌÌÌîîîîîÌîîîÌÌÌîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¾»ë¾ëî¾»»¾»»¾»ë¾ë¾î»ë¾ë¾îîîîîîîîîîîîîîþÿîþÿîÿþÿÿîÿïîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¾»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»ëîî¹îî›îîîî¾»ëîîîîîîîîîîîî»îîî»ë¾»»¾»ëîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîî»ë뾻î»îî¾ëîîî»îî»îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîî¾»î»ëî»îë»î뻾ëîîî¾»ëî¾ëî»ëîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîî»ë»ëî»îë»îî»ëî»îî¾ë¾¾î»¾ëîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîî뾻î»îî¾»î»îîî»ëî»ë¾»»îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîž™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™îîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªî®ªê®ªªê®êªªªªªªê®ªªªªªªªªªªªªªªªªªî®ªî®ê®îîªîªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîꮪªî®ªªêîêªî®ªî®êªªªªªªªªªªªªªªê®îê®îꮪꮪꮪªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîêî®ê®®êîêîîê®êê®êê®êªªªªªªªªªªªªªªªêîêêîꪪêªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîê®êêîê®îê®êê®êê®êªªªªªªªªªªªªªªªê®êê®êê®îªª®ê®ªªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªî®ªª®ªªê®êªî®ªî®êªªªªªªªªªªªªªªªî®ªî®ê®îî®êªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDîîDDDDDôwwwÇ|wÌ|wwwwODDDDîîDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDDäNDDDDôwwwÌ|Ç|wwwwwODDDDDäNDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDäîDDDDDôwwwÇ|ÇÌ|wwwwODDDDäîDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDîDDDDDDôwwwÇ|Ç|ÇwwwwODDDDîDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDîîNDDDDôwwwÌÌwÌ|wwwwODDDDîîNDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªªîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôwwwwwwwwwwwwODDDDDDDDDDDôÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿïîþïîîÿîþÿÿïîîÿÿÿÿÿÿÿÿÿÿÿÿÿîÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿîïþÿïþÿÿÿïþÿïþîïîþÿîþïîþïîîÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿîþïîþïîþïîïîþÿîþïþïïþîïþïÿîÿÿÿÿÿÿÿïîïîÿÿîþîþÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿïþÿÿÿîïþïÿÿïþÿÿîþïþïïîÿïþÿÿîÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿïîîïîþÿîþÿÿïîîïþîïîþÿîþïþÿÿïîÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffîfffffö™™™ÉÌ™™Ì™™™™ODDDDîîDDDDDôfffffænfffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžoffffæîfffffö™™™Ì™™ÉÌ™™™™ODDDDDäNDDDDôfffffînfffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžoffffîæfffffö™™™ÌÌ™ÌÉ™™™™ODDDDäîDDDDDôffffænnfffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžoffffîînffffö™™™Ì™œÌÌœ™™™ODDDDîDDDDDDôffffæîîfffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžofffffæfffffö™™™ÉÌ™™É™™™™ODDDDîîNDDDDôffffffnfffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿîÿïîÿîîÿÿîÿÿÿîïþÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿïîÿîïþÿïþïîÿÿÿîîþïîþïîþîîþïîÿîîÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿîÿîþþïîÿîïÿîþîîþþïþîþÿïþÿîïþîÿþÿÿÿïîïîÿÿîþîþÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿîÿîÿþîÿÿîîþÿÿþþþþïþÿîþïþÿîþÿîÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿïîþïîÿîîþÿïÿÿÿþÿþïîþîîÿÿîþïîÿîÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžofffffffffffö™™™™™™™™™™™™ODDDDDDDDDDDôffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»ëîîëî¾»»»ûDDDDäîNDDDDD¿»»ëîîëî¾»»»ûfffffænfffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»î»»î»»»ûDDDDDDîDDDDD¿»»»»î»»î»»»ûfffffînfffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»ë¾»î¾»»»ûDDDDDîNDDDDD¿»»»ë¾»î¾»»»ûffffænnfffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»ë»îë¾»»»»ûDDDDäNDDDDDD¿»»ë»îë¾»»»»ûffffæîîfffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»î¾ëîî»»»ûDDDDäîîDDDDD¿»»»î¾ëîî»»»ûffffffnfffffŸîîîîÿÿïîþÿîþÿïþÿîþÿÿïþîÿÿÿÿîÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿîïþîÿîþïþïÿÿïîîïÿîïîîïîþÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿîþïîïïþþÿîþïîïîîïÿîÿîÿïþïÿÿÿÿÿÿÿÿÿïîïîÿÿîþîþÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿïþÿïþïïîîïþïÿÿïïïÿîîÿîÿïþïÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿïîîÿîþÿÿþÿîþÿÿïÿïÿÿîÿïîïþïÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîþÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîž¿»»»»»»»»»»»ûDDDDDDDDDDDD¿»»»»»»»»»»»ûffffffffffffŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿïþÿîþÿîþÿîþÿÿÿîîÿÿÿÿÿîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDîîDDDDDôªªªªªî®ªªªªª¯ªªªªêªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿîþïþîïþïïþÿÿÿïþÿÿîþÿîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDäNDDDDôªªªªê®êªªªªª¯ªªªªîª®ªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿïþþïîïÿîîïîþïîïþîïþïïÿîÿÿÿÿÿÿÿÿÿÿÿÿïîïîÿÿîþîþÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDäîDDDDDôªªªªªî®ªªªªª¯ªªªªêªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿïîîïþïÿÿïïþïÿÿïþïïþïïÿîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDîDDDDDDôªªªªê®êªªªªª¯ªªªªîª®ªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿþÿîþÿîþÿîþÿÿÿîîÿîþÿîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿïþÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDîîNDDDDôªªªªªî®ªªªªª¯ªªªªêªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîî¾ë»»ë»îî¾»ëî»ë¾ë¾î»»¾»»îîîîîîî>ã3îã3îî>3ã>33î33>33>3ãîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîî¾îî»î¾îî¾ë¾¾ë¾¾ë¾¾»î¾ëîîîîîîîî>î3îã>îî>ã>>ãî>3î>ãîî3îîîî¹îî›îîžODDDDDDDDDDDôªªªªªªªªªªªª¯ªªªªªªªªªªªúÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîî¾î¾ëî¾îî¾ë¾¾ë¾¾ë¾î»ë¾»ëîîîîîîî>î>3î>îî>ã>>3ãî3ã>3ãî3îîîî¹îî›îîžÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿŸîîîîîî¾î»îî¾î뾻»¾ë¾î¾»¾ëîîîîîîîî>î3îã>îî>3ã>ãîî>3>ãîî3îîîî¹îî›îîž™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™îîîîîî¾ë»»ë»îî¾ëî¾ë¾î»ë¾»ë¾»»îîîîîîî>ã3îã3îî>ã>>33>3ã>33î3îîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîî¹îî›™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™™¹îî»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»îîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîîÛ%-- title: 2048 Pro Edition -- author: gambarim -- desc: 2048 for speedrunners -- script: lua -- ========================================================= -- ============ CONFIGURATION ZONE ========================= -- ========================================================= local UI = { grid_x = 10, grid_y = 27, bg_main = 14, grid_bg = 15, grid_border = 9, border_out = 11, border_in = 9, text_title = 12, text_score = 11, text_sr_tit = 11, text_sr_tim = 15, line_sr = 11, ach_bg_off = 15, ach_fg_off = 14, ach_bg_on = 10, ach_fg_on = 14, ach_time_on = 14, btn_pause = 11, btn_reset = 3, overlay_bg = 1 } local TILE_COLORS = { [0] = {bg=15, fg=15}, [2] = {bg=4, fg=14}, [4] = {bg=6, fg=14}, [8] = {bg=10, fg=14}, [16] = {bg=7, fg=12}, [32] = {bg=11, fg=14}, [64] = {bg=9, fg=12}, [128] = {bg=8, fg=12}, [256] = {bg=2, fg=12}, [512] = {bg=3, fg=12}, [1024] = {bg=12, fg=15}, [2048] = {bg=13, fg=12}, [4096] = {bg=1, fg=12} } -- ========================================================= -- ============ GAME LOGIC ================================= -- ========================================================= local grid = {} local active_anims = {} local score = 0 local frames = 0 local state = "PLAY" local next_dx, next_dy = nil, nil local has_started = false local achievements = { {n="64-Noob", v=64, pmem_id=0, best=0, u=false}, {n="256-Expert", v=256, pmem_id=1, best=0, u=false}, {n="1024-Master", v=1024, pmem_id=2, best=0, u=false}, {n="2048-Myth", v=2048, pmem_id=3, best=0, u=false}, {n="4096-God", v=4096, pmem_id=4, best=0, u=false} } function fmt_time(f) if f == 0 then return "--:--" end local s = f // 60 local m = s // 60 return string.format("%02d:%02d", m, s % 60) end function init() score = 0 frames = 0 state = "PLAY" active_anims = {} next_dx, next_dy = nil, nil has_started = false for i, a in ipairs(achievements) do a.best = pmem(a.pmem_id) a.u = false end for i=1,4 do grid[i] = {0,0,0,0} end spawn() spawn() end function spawn() local empty = {} for y=1,4 do for x=1,4 do if grid[y][x] == 0 then table.insert(empty, {y=y, x=x}) end end end if #empty > 0 then local pos = empty[math.random(#empty)] grid[pos.y][pos.x] = math.random() < 0.9 and 2 or 4 end end function check_over() for y=1,4 do for x=1,4 do if grid[y][x] == 0 then return false end if x < 4 and grid[y][x] == grid[y][x+1] then return false end if y < 4 and grid[y][x] == grid[y+1][x] then return false end end end return true end function slide(line) local r = {} local anims = {} local nz = {} for i=1,4 do if line[i].val > 0 then table.insert(nz, line[i]) end end local i = 1 local out_idx = 1 while i <= #nz do if i < #nz and nz[i].val == nz[i+1].val then table.insert(anims, {val=nz[i].val, orig=nz[i].orig, dest=out_idx}) table.insert(anims, {val=nz[i+1].val, orig=nz[i+1].orig, dest=out_idx}) r[out_idx] = nz[i].val * 2 score = score + r[out_idx] check_achievements(r[out_idx]) i = i + 2 else table.insert(anims, {val=nz[i].val, orig=nz[i].orig, dest=out_idx}) r[out_idx] = nz[i].val i = i + 1 end out_idx = out_idx + 1 end while #r < 4 do table.insert(r, 0) end return r, anims end function check_achievements(val) for i, a in ipairs(achievements) do if val >= a.v and not a.u then a.u = true if a.best == 0 or frames < a.best then a.best = frames pmem(a.pmem_id, frames) end end end end function move(dx, dy) local moved = false active_anims = {} for iter=1,4 do local line = {} for step=1,4 do local x = dx ~= 0 and (dx==1 and 5-step or step) or iter local y = dy ~= 0 and (dy==1 and 5-step or step) or iter local orig = dx ~= 0 and x or y table.insert(line, {val=grid[y][x], orig=orig}) end local nl, anims = slide(line) for step=1,4 do local x = dx ~= 0 and (dx==1 and 5-step or step) or iter local y = dy ~= 0 and (dy==1 and 5-step or step) or iter if grid[y][x] ~= nl[step] then moved = true end grid[y][x] = nl[step] end for _, a in ipairs(anims) do local sx = dx ~= 0 and a.orig or iter local sy = dy ~= 0 and a.orig or iter local d_x = dx ~= 0 and (dx==1 and 5-a.dest or a.dest) or iter local d_y = dy ~= 0 and (dy==1 and 5-a.dest or a.dest) or iter table.insert(active_anims, { val = a.val, x = UI.grid_x + 1 + (sx-1)*25, y = UI.grid_y + 1 + (sy-1)*25, tx = UI.grid_x + 1 + (d_x-1)*25, ty = UI.grid_y + 1 + (d_y-1)*25 }) end end if moved then state = "ANIM" has_started = true end end function draw_tile(val, px, py) local cols = TILE_COLORS[val] or {bg=1, fg=12} rect(px, py, 24, 24, cols.bg) if val > 0 then local txt = tostring(val) local tw = print(txt, 0, -20) print(txt, px + 12 - tw/2, py + 9, cols.fg) end end init() function TIC() -- Special Inputs if btnp(4) then if state == "PLAY" then state = "PAUSE" elseif state == "PAUSE" then state = "PLAY" elseif state == "OVER" then init() end end if btnp(5) then init() end -- Movement Inputs with Buffer local in_x, in_y = 0, 0 if btnp(0) then in_y = -1 end if btnp(1) then in_y = 1 end if btnp(2) then in_x = -1 end if btnp(3) then in_x = 1 end if in_x ~= 0 or in_y ~= 0 then if state == "PLAY" then move(in_x, in_y) elseif state == "ANIM" then next_dx, next_dy = in_x, in_y end end -- Timer runs ONLY if we started moving if has_started and (state == "PLAY" or state == "ANIM") then frames = frames + 1 end -- Update Animations if state == "ANIM" then local is_animating = false for _, a in ipairs(active_anims) do a.x = a.x + (a.tx - a.x) * 0.5 a.y = a.y + (a.ty - a.y) * 0.5 if math.abs(a.tx - a.x) > 0.5 or math.abs(a.ty - a.y) > 0.5 then is_animating = true end end if not is_animating then state = "PLAY" spawn() if check_over() then state = "OVER" end if state == "PLAY" and next_dx then move(next_dx, next_dy) next_dx, next_dy = nil, nil end end end -- =========================== -- Rendering (Screen Display) -- =========================== cls(UI.bg_main) -- === Global Borders === rectb(2, 2, 236, 132, UI.border_out) rectb(3, 3, 234, 130, UI.border_in) -- === Left Interface === print("2048", 12, UI.grid_y - 22, UI.text_title, false, 2) print("Score: "..score, 12, UI.grid_y - 8, UI.text_score) -- Grid Border & Background (Recalculated for exactly 1px spacing) -- Outer border is 103x103 to surround the 101x101 background rectb(UI.grid_x - 1, UI.grid_y - 1, 103, 103, UI.grid_border) -- Inner background is 101x101 to contain the 4*24 tiles + 5*1px gaps rect(UI.grid_x, UI.grid_y, 101, 101, UI.grid_bg) -- Tiles local tile_draw_func = function(val, x_idx, y_idx) local px = UI.grid_x + 1 + (x_idx-1)*25 local py = UI.grid_y + 1 + (y_idx-1)*25 if val == 0 then rect(px, py, 24, 24, UI.grid_bg) else draw_tile(val, px, py) end end if state == "ANIM" then for y=1,4 do for x=1,4 do tile_draw_func(0, x, y) end end for _, a in ipairs(active_anims) do draw_tile(a.val, a.x, a.y) end else for y=1,4 do for x=1,4 do tile_draw_func(grid[y][x], x, y) end end end -- Overlays (Pause / Game Over) if state == "OVER" then rect(UI.grid_x, UI.grid_y + 40, 101, 20, UI.overlay_bg) print("GAME OVER", UI.grid_x + 24, UI.grid_y + 47, UI.text_title) elseif state == "PAUSE" then rect(UI.grid_x, UI.grid_y + 40, 101, 20, UI.overlay_bg) print("PAUSE", UI.grid_x + 38, UI.grid_y + 47, UI.text_title) end -- === Right Interface (Speedrun & Menu) === print("SPEEDRUN", 125, 10, UI.text_sr_tit) local current_time = has_started and fmt_time(frames) or "00:00" print(current_time, 200, 10, UI.text_sr_tim) line(125, 18, 230, 18, UI.line_sr) for i, a in ipairs(achievements) do local py = 26 + (i-1)*20 local bg = a.u and UI.ach_bg_on or UI.ach_bg_off local fg = a.u and UI.ach_fg_on or UI.ach_fg_off local t_col = a.u and UI.ach_time_on or UI.ach_fg_off rect(120, py, 112, 16, bg) print(a.n, 125, py+5, fg) local time_str = a.best > 0 and fmt_time(a.best) or "--:--" print(time_str, 195, py+5, t_col) end -- Buttons print("[Z] PAUSE", 125, 124, UI.btn_pause) print("[X] RESET", 185, 124, UI.btn_reset) end