ukui-session-manager/0000755000175000017500000000000013636030515013546 5ustar fengfengukui-session-manager/translations/0000755000175000017500000000000013622453036016271 5ustar fengfengukui-session-manager/translations/zh_CN.ts0000644000175000017500000000426013622453036017644 0ustar fengfeng MainWindow Form suspend 锁定 switchuser 切换用户 logout 注销 reboot 重启 shutdown 关机 QApplication UKUI session tools, show the shutdown dialog without any arguments. Logout this computer. 注销此电脑 Shutdown this computer. 关闭此电脑 Switch the user of this computer. 切换电脑的用户 Restart this computer. 重启此电脑 ukui-session-manager/translations/bo.ts0000644000175000017500000000460613607542647017261 0ustar fengfeng PowerWin suspend hibernate switchuser reboot shutdown logout cancel QApplication UKUI session tools, show the shutdown dialog without any arguments. Logout this computer. Shutdown this computer. Switch the user of this computer. Restart this computer. ukui-session-manager/man/0000755000175000017500000000000013607542647014335 5ustar fengfengukui-session-manager/man/ukui-session-tools.10000644000175000017500000000647113607542647020223 0ustar fengfeng.\" Manual page for ukui-session .\" (C) 2000 Miguel de Icaza (miguel@helixcode.com) .\" (C) 2009-2010 Vincent Untz (vuntz@gnome.org) .\" (C) 2016, Tianjin KYLIN Information Technology Co., Ltd. .\" .TH UKUI-SESSION 1 "11 February 2016" "UKUI Desktop Environment" .\" Please adjust this date when revising the manpage. .\" .SH "NAME" ukui-session \- Start the UKUI Desktop Environment. .SH "SYNOPSIS" .B ukui-session [OPTIONS] .SH "DESCRIPTION" The \fBukui-session\fP program starts up the UKUI desktop environment. This command is typically executed by your Login/Display Manager (like GDM, LXDM, XDM, SLiM, or from your X startup scripts like .xinitrc). It will load either your saved session, or it will provide a default session for the user as defined by the system administrator (or the default UKUI installation on your system). .PP The default session is defined in the dconf keys under .BI / org / ukui / desktop / session / .br When saving a session, \fBukui-session\fP saves the currently running applications in the \fB~/.config/ukui-session/saved-session\fP directory of the users /home. .PP \fBukui-session\fP is an X11 session manager. It can manage UKUI applications as well as any other X11 SM compliant ones. .SH "OPTIONS" .SS The following options are supported: .TP \fB\-a, \-\-autostart=DIR\fR Start all applications defined in "\fBDIR\fP", instead of starting the applications defined in .BI / org / ukui / desktop / session / default\-session .br Multiple \fB\-\-autostart\fP options can be passed. .TP \fB\-f, \-\-failsafe\fR Run in fail-safe mode. User-specified applications will not be started. .TP \fB\-\-debug\fR Enable debugging code. .TP \fB\-\-display=DISPLAY\fR X display to use. .TP \fB\-\-version\fR Output version information and exit. .TP \fB\-?, \-h, \-\-help\fR Print standard command line options. .TP \fB\-\-help\-all\fR Print all command line options. .SH "ENVIRONMENT" .SS \fBukui-session\fP sets several environment variables for the use of its child processes: .PP .B "SESSION_MANAGER" .IP This variable is used by session-manager aware clients to contact ukui-session. .PP .B "DISPLAY" .IP This variable is set to the X display being used by \fBukui-session\fP. Note that if the \-\-display option is used this might be different from the setting of the environment variable when ukui-session is invoked. .SH "FILES" .PP .nf .B ~/.config/autostart .B /usr/share/autostart .B /usr/share/ukui/autostart .fi .IP The applications defined in the above directories will be started on login. \fBukui-session-properties(1)\fP can be used to easily configure them. .PP .B ~/.config/ukui-session/saved-session .IP This directory contains the list of applications of the saved session. .SH "BUGS" .SS Should you encounter any bugs, they may be reported at: https://github.com/ukui/ukui-session-manager/issues .SH "AUTHORS" .SS This Manual page was originally written for gnome-session by: .nf Miguel de Icaza (2000) Vincent Untz (2009-2010) .fi .SS It has been updated for the MATE Desktop Environment by: Adam Erdman (2014) .SS It has been updated for the UKUI Desktop Environment by: yilei (2016) .SH "SEE ALSO" .SS Further information may also be available at: http://wiki.ukui.org/ .P .BR ukui-session-properties(1), .BR ukui-session-save(1), .BR ukui-wm(1) ukui-session-manager/man/ukui-session.10000644000175000017500000000647113607542647017065 0ustar fengfeng.\" Manual page for ukui-session .\" (C) 2000 Miguel de Icaza (miguel@helixcode.com) .\" (C) 2009-2010 Vincent Untz (vuntz@gnome.org) .\" (C) 2016, Tianjin KYLIN Information Technology Co., Ltd. .\" .TH UKUI-SESSION 1 "11 February 2016" "UKUI Desktop Environment" .\" Please adjust this date when revising the manpage. .\" .SH "NAME" ukui-session \- Start the UKUI Desktop Environment. .SH "SYNOPSIS" .B ukui-session [OPTIONS] .SH "DESCRIPTION" The \fBukui-session\fP program starts up the UKUI desktop environment. This command is typically executed by your Login/Display Manager (like GDM, LXDM, XDM, SLiM, or from your X startup scripts like .xinitrc). It will load either your saved session, or it will provide a default session for the user as defined by the system administrator (or the default UKUI installation on your system). .PP The default session is defined in the dconf keys under .BI / org / ukui / desktop / session / .br When saving a session, \fBukui-session\fP saves the currently running applications in the \fB~/.config/ukui-session/saved-session\fP directory of the users /home. .PP \fBukui-session\fP is an X11 session manager. It can manage UKUI applications as well as any other X11 SM compliant ones. .SH "OPTIONS" .SS The following options are supported: .TP \fB\-a, \-\-autostart=DIR\fR Start all applications defined in "\fBDIR\fP", instead of starting the applications defined in .BI / org / ukui / desktop / session / default\-session .br Multiple \fB\-\-autostart\fP options can be passed. .TP \fB\-f, \-\-failsafe\fR Run in fail-safe mode. User-specified applications will not be started. .TP \fB\-\-debug\fR Enable debugging code. .TP \fB\-\-display=DISPLAY\fR X display to use. .TP \fB\-\-version\fR Output version information and exit. .TP \fB\-?, \-h, \-\-help\fR Print standard command line options. .TP \fB\-\-help\-all\fR Print all command line options. .SH "ENVIRONMENT" .SS \fBukui-session\fP sets several environment variables for the use of its child processes: .PP .B "SESSION_MANAGER" .IP This variable is used by session-manager aware clients to contact ukui-session. .PP .B "DISPLAY" .IP This variable is set to the X display being used by \fBukui-session\fP. Note that if the \-\-display option is used this might be different from the setting of the environment variable when ukui-session is invoked. .SH "FILES" .PP .nf .B ~/.config/autostart .B /usr/share/autostart .B /usr/share/ukui/autostart .fi .IP The applications defined in the above directories will be started on login. \fBukui-session-properties(1)\fP can be used to easily configure them. .PP .B ~/.config/ukui-session/saved-session .IP This directory contains the list of applications of the saved session. .SH "BUGS" .SS Should you encounter any bugs, they may be reported at: https://github.com/ukui/ukui-session-manager/issues .SH "AUTHORS" .SS This Manual page was originally written for gnome-session by: .nf Miguel de Icaza (2000) Vincent Untz (2009-2010) .fi .SS It has been updated for the MATE Desktop Environment by: Adam Erdman (2014) .SS It has been updated for the UKUI Desktop Environment by: yilei (2016) .SH "SEE ALSO" .SS Further information may also be available at: http://wiki.ukui.org/ .P .BR ukui-session-properties(1), .BR ukui-session-save(1), .BR ukui-wm(1) ukui-session-manager/tools/0000755000175000017500000000000013637016220014704 5ustar fengfengukui-session-manager/tools/mainwindow.h0000644000175000017500000000265113622453036017241 0ustar fengfeng/*Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301, USA. **/ #ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include "powerprovider.h" #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); QRect m_screen; ~MainWindow(); void doevent(QEvent *event, QString test2,int i); QTimer *timer; int defaultnum = 0; private: Ui::MainWindow *ui; UkuiPower *m_power; void ResizeEvent(); protected: void paintEvent(QPaintEvent *e); bool eventFilter(QObject *, QEvent *); void mousePressEvent(QMouseEvent *event); }; #endif // MAINWINDOW_H ukui-session-manager/tools/ukuipower.h0000644000175000017500000000321113622453036017110 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef UKUIPOWER_H #define UKUIPOWER_H #include #include #include #include class PowerProvider; class UkuiPower : public QObject { Q_OBJECT public: enum Action { PowerLogout, PowerSwitchUser, PowerHibernate, PowerReboot, PowerShutdown, PowerSuspend, PowerMonitorOff }; explicit UkuiPower(QObject *parent = nullptr); virtual ~UkuiPower(); bool canAction(Action action) const; QSoundEffect *soundplayer; void playmusic(); public slots: bool doAction(Action action); private: QList mProviders; }; #endif // UKUIPOWER_H ukui-session-manager/tools/mainwindow.ui0000644000175000017500000001636113622453036017432 0ustar fengfeng MainWindow 0 0 928 900 Form 0 300 168 168 55 20 58 58 0 108 168 40 Noto Sans CJK SC 16 color:white suspend Qt::AlignCenter 190 300 168 168 55 20 58 58 0 108 168 40 Noto Sans CJK SC 16 color:white switchuser Qt::AlignCenter 380 300 168 168 55 20 58 58 0 108 168 40 Noto Sans CJK SC 16 color:white logout Qt::AlignCenter 570 300 168 168 55 20 58 58 0 108 167 40 Noto Sans CJK SC 16 color:white reboot Qt::AlignCenter 760 300 168 168 55 20 58 58 0 108 168 40 Noto Sans CJK SC 16 color:white shutdown Qt::AlignCenter 130 20 130 60 0 0 130 40 Noto Sans CJK SC 20 Qt::NoContextMenu color:white 1 Qt::AlignCenter 0 40 130 20 Noto Sans CJK SC 10 color:white Qt::AlignCenter ukui-session-manager/tools/powerprovider.cpp0000644000175000017500000002152513622453036020330 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "powerprovider.h" #include #include #include #include #include #define LIGHTDM_SERVICE "org.freedesktop.DisplayManager" #define LIGTHDM_INTERFACE "org.freedesktop.DisplayManager.Seat" #define SYSTEMD_SERVICE "org.freedesktop.login1" #define SYSTEMD_PATH "/org/freedesktop/login1" #define SYSTEMD_INTERFACE "org.freedesktop.login1.Manager" #define UKUI_SERVICE "org.gnome.SessionManager" #define UKUI_PATH "/org/gnome/SessionManager" #define UKUI_INTERFACE "org.gnome.SessionManager" #define PROPERTIES_INTERFACE "org.freedesktop.DBus.Properties" static bool dbusCall(const QString &service, const QString &path, const QString &interface, const QDBusConnection &connection, const QString &method) { QDBusInterface dbus(service, path, interface, connection); if (!dbus.isValid()) { qWarning() << "dbusCall: QDBusInterface is invalid" << service << path << interface << method; return false; } QDBusMessage msg = dbus.call(method); if (!msg.errorName().isEmpty()) { qWarning() << "Dbus error: " << msg; } return msg.arguments().isEmpty() || msg.arguments().constFirst().isNull() || msg.arguments().constFirst().toBool(); } static bool dbusCallSystemd(const QString &service, const QString &path, const QString &interface, const QDBusConnection &connection, const QString &method, bool needBoolArg) { QDBusInterface dbus(service, path, interface, connection); if (!dbus.isValid()) { qWarning() << "dbusCall: QDBusInterface is invalid" << service << path << interface << method; return false; } QDBusMessage msg = dbus.call(method, needBoolArg ? QVariant(true) : QVariant()); if (!msg.errorName().isEmpty()) { qWarning() << "Debus error: " << msg; } if (msg.arguments().isEmpty() || msg.arguments().constFirst().isNull()) return true; QString response = msg.arguments().constFirst().toString(); qDebug() << "systemd:" << method << "=" << response; return response == QLatin1String("yes") || response == QLatin1String("challenge"); } bool dbusGetProperty(const QString &service, const QString &path, const QString &interface, const QDBusConnection &connection, const QString &property) { QDBusInterface dbus(service, path, interface, connection); if (!dbus.isValid()) { qWarning() << "dbusGetProperty: QDBusinterface is invalid" << service << path << interface << property; return false; } QDBusMessage msg = dbus.call("SwitchToGreeter");//QLatin1String("Get"), dbus.interface(),property if (!msg.errorName().isEmpty()) { qWarning() << "Dbus error: " << msg; } return !msg.arguments().isEmpty() && msg.arguments().constFirst().value().variant().toBool(); } PowerProvider::PowerProvider(QObject *parent) : QObject(parent) { } PowerProvider::~PowerProvider() { } /************************************************ SystemdProvider http://www.freedesktop.org/wiki/Software/systemd/logind ************************************************/ SystemdProvider::SystemdProvider(QObject *parent): PowerProvider(parent) { } SystemdProvider::~SystemdProvider() { } bool SystemdProvider::canSwitchUser() const { /* char *seat_id = nullptr; char *session_id = nullptr; int ret = 0; sd_pid_get_session(getpid(), &session_id); sd_session_get_seat(session_id, &seat_id); ret = sd_seat_can_multi_session(seat_id); return ret>0; */ QString property = "CanSwitch"; QString xdg_seat_path = qgetenv("XDG_SEAT_PATH"); return dbusGetProperty(QLatin1String(LIGHTDM_SERVICE), xdg_seat_path, QLatin1String(LIGTHDM_INTERFACE), QDBusConnection::systemBus(), property); } bool SystemdProvider::canAction(UkuiPower::Action action) const { QString command; switch (action) { case UkuiPower::PowerSwitchUser: return canSwitchUser(); case UkuiPower::PowerReboot: command = QLatin1String("CanReboot"); break; case UkuiPower::PowerShutdown: command = QLatin1String("CanPowerOff"); break; case UkuiPower::PowerSuspend: command = QLatin1String("CanSuspend"); break; case UkuiPower::PowerHibernate: command = QLatin1String("CanHibernate"); break; default: return false; } // canAction should be always silent because it can freeze // g_main_context_iteration Qt event loop in QMessageBox // on panel startup if there is no DBUS running. return dbusCallSystemd(QLatin1String(SYSTEMD_SERVICE), QLatin1String(SYSTEMD_PATH), QLatin1String(SYSTEMD_INTERFACE), QDBusConnection::systemBus(), command, false); } bool SystemdProvider::doSwitchUser() { QString command = "SwitchToGreeter"; QString xdg_seat_path = qgetenv("XDG_SEAT_PATH"); return dbusCall(QLatin1String(LIGHTDM_SERVICE), xdg_seat_path, QLatin1String(LIGTHDM_INTERFACE), QDBusConnection::systemBus(), command); } bool SystemdProvider::doAction(UkuiPower::Action action) { QString command; switch (action) { case UkuiPower::PowerSwitchUser: return doSwitchUser(); case UkuiPower::PowerReboot: command = QLatin1String("Reboot"); break; case UkuiPower::PowerShutdown: command = QLatin1String("PowerOff"); break; case UkuiPower::PowerSuspend: command = QLatin1String("Suspend"); break; case UkuiPower::PowerHibernate: command = QLatin1String("Hibernate"); break; default: return false; } return dbusCallSystemd(QLatin1String(SYSTEMD_SERVICE), QLatin1String(SYSTEMD_PATH), QLatin1String(SYSTEMD_INTERFACE), QDBusConnection::systemBus(), command, true); } UKUIProvider::UKUIProvider(QObject *parent): PowerProvider (parent) { } UKUIProvider::~UKUIProvider() {} bool UKUIProvider::canAction(UkuiPower::Action action) const { QString command; switch (action) { case UkuiPower::PowerLogout: command = QLatin1String("canLogout"); break; case UkuiPower::PowerReboot: command = QLatin1String("canReboot"); break; case UkuiPower::PowerShutdown: command = QLatin1String("canPowerOff"); break; default: return false; } return dbusCall(QLatin1String(UKUI_SERVICE), QLatin1String(UKUI_PATH), QLatin1String(UKUI_INTERFACE), QDBusConnection::sessionBus(), command); } bool UKUIProvider::doAction(UkuiPower::Action action) { QString command; switch (action) { case UkuiPower::PowerLogout: command = QLatin1String("logout"); break; case UkuiPower::PowerReboot: command = QLatin1String("reboot"); break; case UkuiPower::PowerShutdown: command = QLatin1String("powerOff"); break; default: return false; } return dbusCall(QLatin1String(UKUI_SERVICE), QLatin1String(UKUI_PATH), QLatin1String(UKUI_INTERFACE), QDBusConnection::sessionBus(), command); } ukui-session-manager/tools/ukuipower.cpp0000644000175000017500000000351313622453036017450 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "ukuipower.h" #include "powerprovider.h" #include UkuiPower::UkuiPower(QObject *parent) : QObject(parent) { mProviders.append(new SystemdProvider(this)); mProviders.append(new UKUIProvider(this)); } UkuiPower::~UkuiPower() { } bool UkuiPower::canAction(UkuiPower::Action action) const { for (const PowerProvider *provider : qAsConst(mProviders)) { if (provider->canAction(action)) return true; } return false; } bool UkuiPower::doAction(UkuiPower::Action action) { for (PowerProvider *provider : qAsConst(mProviders)) { if (provider->canAction(action) && provider->doAction(action)) return true; } return false; } void UkuiPower::playmusic(){ QSoundEffect *soundplayer = new QSoundEffect(); soundplayer->setSource(QUrl("qrc:/shutdown.wav")); soundplayer->play(); } ukui-session-manager/tools/powerprovider.h0000644000175000017500000000365613622453036020002 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef POWERPROVIDER_H #define POWERPROVIDER_H #include #include "ukuipower.h" class PowerProvider : public QObject { Q_OBJECT public: explicit PowerProvider(QObject *parent = nullptr); virtual ~PowerProvider(); virtual bool canAction(UkuiPower::Action action) const = 0; public slots: virtual bool doAction(UkuiPower::Action action) = 0; }; class SystemdProvider: public PowerProvider { Q_OBJECT public: SystemdProvider(QObject *parent = nullptr); ~SystemdProvider(); bool canAction(UkuiPower::Action action) const; public slots: bool doAction(UkuiPower::Action action); private: bool canSwitchUser() const; bool doSwitchUser(); }; class UKUIProvider: public PowerProvider { Q_OBJECT public: UKUIProvider(QObject *parent = nullptr); ~UKUIProvider(); bool canAction(UkuiPower::Action action) const; public slots: bool doAction(UkuiPower::Action action); }; #endif // POWERPROVIDER_H ukui-session-manager/tools/CMakeLists.txt0000644000175000017500000000104713622453036017452 0ustar fengfengset(tools_SRCS main.cpp ukuipower.cpp powerprovider.cpp mainwindow.h mainwindow.cpp mainwindow.ui ) add_executable(ukui-session-tools ${tools_SRCS} ${PROJECT_SOURCE_DIR}/data/images.qrc ${PROJECT_SOURCE_DIR}/data/qss.qrc ${PROJECT_SOURCE_DIR}/data/music.qrc ) target_link_libraries(ukui-session-tools Qt5::Widgets Qt5::Core Qt5::Gui Qt5::DBus Qt5::Multimedia ) install(TARGETS ukui-session-tools DESTINATION bin) ukui-session-manager/tools/main.cpp0000644000175000017500000001152613637016220016341 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2010-2016 LXQt team * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301, USA. **/ #include #include #include #include #include #include #include #include #include #include #include "ukuipower.h" #include "mainwindow.h" int main(int argc, char* argv[]) { QApplication a(argc, argv); UkuiPower powermanager(&a); QTimer *timer = new QTimer(); bool flag = true; QCommandLineParser parser; parser.setApplicationDescription(QApplication::tr("UKUI session tools, show the shutdown dialog without any arguments.")); const QString VERINFO = QStringLiteral("2.0"); a.setApplicationVersion(VERINFO); parser.addHelpOption(); parser.addVersionOption(); QCommandLineOption logoutOption(QStringLiteral("logout"), QApplication::tr("Logout this computer.")); parser.addOption(logoutOption); QCommandLineOption shutdownOption(QStringLiteral("shutdown"), QApplication::tr("Shutdown this computer.")); parser.addOption(shutdownOption); QCommandLineOption switchuserOption(QStringLiteral("switchuser"), QApplication::tr("Switch the user of this computer.")); parser.addOption(switchuserOption); QCommandLineOption rebootOption(QStringLiteral("reboot"), QApplication::tr("Restart this computer.")); parser.addOption(rebootOption); parser.process(a); if (parser.isSet(logoutOption)) { powermanager.playmusic(); QObject::connect(timer,&QTimer::timeout, [&]() { timer->stop(); delete timer; powermanager.doAction(UkuiPower::Action(0)); a.exit(); }); timer->start(1000); flag = false; } if (parser.isSet(shutdownOption)) { powermanager.playmusic(); QObject::connect(timer,&QTimer::timeout, [&]() { timer->stop(); delete timer; powermanager.doAction(UkuiPower::Action(4)); a.exit(); }); timer->start(1000); flag = false; } if (parser.isSet(switchuserOption)) { powermanager.playmusic(); QObject::connect(timer,&QTimer::timeout, [&]() { timer->stop(); delete timer; powermanager.doAction(UkuiPower::Action(1)); a.exit(); }); timer->start(1000); flag = false; } if (parser.isSet(rebootOption)) { powermanager.playmusic(); QObject::connect(timer,&QTimer::timeout, [&]() { timer->stop(); delete timer; powermanager.doAction(UkuiPower::Action(3)); a.exit(); }); timer->start(1000); flag = false; } if (flag) { //加载翻译文件 const QString locale = QLocale::system().name(); QTranslator translator; qDebug() << "local: " << locale; qDebug() << "path: " << QStringLiteral(UKUI_TRANSLATIONS_DIR) + QStringLiteral("/ukui-session-manager"); if (translator.load(locale, QStringLiteral(UKUI_TRANSLATIONS_DIR) + QStringLiteral("/ukui-session-manager"))) { a.installTranslator(&translator); } else { qDebug() << "Load translations file failed!"; } MainWindow w ; //加载qss文件 QFile qss(":/powerwin.qss"); qss.open(QFile::ReadOnly); a.setStyleSheet(qss.readAll()); qss.close(); w.showFullScreen(); QObject::connect(w.timer,&QTimer::timeout, [&]() { w.timer->stop(); delete w.timer; if(!w.isVisible()){ qDebug()< #include #include #include #include #include #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) , m_power(new UkuiPower(this)) ,timer(new QTimer()) { ui->setupUi(this); ui->suspend->installEventFilter(this); ui->switchuser->installEventFilter(this); ui->logout->installEventFilter(this); ui->reboot->installEventFilter(this); ui->shutdown->installEventFilter(this); QDateTime current_date_time =QDateTime::currentDateTime(); QString current_date =current_date_time.toString("yyyy-MM-dd ddd"); QString current_time =current_date_time.toString("hh:mm"); ui->time_lable->setText(current_time); ui->date_label->setText(current_date); //根据屏幕分辨率与鼠标位置重设界面 m_screen = QApplication::desktop()->screenGeometry(QCursor::pos()); setFixedSize(QApplication::primaryScreen()->virtualSize()); move(0,0);//设置初始位置的值 ResizeEvent(); setWindowFlags(Qt::FramelessWindowHint);//设置窗体无边框,不可拖动拖拽拉伸 setAttribute(Qt::WA_TranslucentBackground, true);//设定该窗口透明显示 setWindowFlag(Qt::WindowStaysOnTopHint);//设置为顶层窗口,无法被切屏 this->show(); } MainWindow::~MainWindow() { delete ui; } void MainWindow::ResizeEvent(){ int xx = m_screen.x(); int yy = m_screen.y();//取得当前鼠标所在屏幕的最左,上坐标 if(m_screen.width()<928){ ui->suspend->move(0,(m_screen.height()-168)/2); ui->switchuser->move(168,(m_screen.height()-168)/2); ui->logout->move(168*2,(m_screen.height()-168)/2); ui->reboot->move(168*3,(m_screen.height()-168)/2); ui->shutdown->move(168*4,(m_screen.height()-168)/2); ui->widget->move((m_screen.width()-130)/2,m_screen.height()/4); } int spaceW = (m_screen.width() - 928) / 2; int spaceH = (m_screen.height() - 168) / 2 -20; ui->suspend->move(xx + spaceW + 0,yy + spaceH); ui->switchuser->move(xx+spaceW + 190,yy+spaceH); ui->logout->move(xx+spaceW + 190*2,yy+spaceH); ui->reboot->move(xx+spaceW + 190*3,yy+spaceH); ui->shutdown->move(xx+spaceW + 190*4,yy+spaceH); ui->widget->move(xx+(m_screen.width()-130)/2,yy+40); } void MainWindow::paintEvent(QPaintEvent *e) { QPainter painter(this); painter.setPen(Qt::transparent); //painter.setBrush(QColor("#0a4989")); QPixmap pix; pix.load(":/images/background-ukui.png"); for(QScreen *screen : QApplication::screens()){ //在每个屏幕上绘制背景 QRect rect = screen->geometry(); painter.drawPixmap(rect,pix); painter.drawRect(rect); } QWidget::paintEvent(e); } bool MainWindow::eventFilter(QObject *obj, QEvent *event) { if (obj->objectName() == "suspend") { doevent(event,"suspend",5); // } else if (obj == m_hibernate) { // doevent(event,"hibernate",2); } else if (obj->objectName() == "reboot") { doevent(event,"reboot",3); } else if(obj->objectName() == "shutdown") { doevent(event,"shutdown",4); } else if (obj->objectName() == "logout") { doevent(event,"logout",0); } else if (obj->objectName() == "switchuser") { doevent(event,"switchuser",1); } return QWidget::eventFilter(obj, event); } void MainWindow::doevent(QEvent *event, QString test2,int i){ if (event->type() == QEvent::MouseButtonRelease){ qDebug() << test2; try{ // close(); // m_power->doAction(UkuiPower::Action(i)); m_power->playmusic(); defaultnum = i; qDebug()<hide(); timer->start(1000); }catch(QException &e) { qWarning() << e.what(); } } } void MainWindow::mousePressEvent(QMouseEvent *event){ if(!ui->suspend->geometry().contains(event->pos()) && !ui->switchuser->geometry().contains(event->pos()) && !ui->logout->geometry().contains(event->pos()) && !ui->reboot->geometry().contains(event->pos()) && !ui->shutdown->geometry().contains(event->pos())) close(); } ukui-session-manager/ukui-session/0000755000175000017500000000000013637401111016177 5ustar fengfengukui-session-manager/ukui-session/idlewatcher.h0000644000175000017500000000267313637016220020656 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef IDLEWATCHER_H #define IDLEWATCHER_H #include //class ScreenSaver; class IdleWatcher : public QObject { Q_OBJECT public: explicit IdleWatcher(int secs, QObject *parent = nullptr); virtual ~IdleWatcher(); void reset(int timeout); private slots: void resumingFromIdle(); void timeoutReached(int identifier); void setup(); Q_SIGNALS: void StatusChanged(uint status); private: int mSecs; }; #endif // IDLEWATCHER_H ukui-session-manager/ukui-session/idlewatcher.cpp0000644000175000017500000000417413637016220021207 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "idlewatcher.h" #include #include IdleWatcher::IdleWatcher(int secs, QObject *parent) : QObject(parent), mSecs(secs) { connect(KIdleTime::instance(), &KIdleTime::resumingFromIdle, this, &IdleWatcher::resumingFromIdle); connect(KIdleTime::instance(), static_cast(&KIdleTime::timeoutReached), this, &IdleWatcher::timeoutReached); setup(); } IdleWatcher::~IdleWatcher() { KIdleTime::instance()->removeAllIdleTimeouts(); } void IdleWatcher::setup() { KIdleTime::instance()->addIdleTimeout(1000 * mSecs); } void IdleWatcher::timeoutReached(int identifier) { KIdleTime::instance()->catchNextResumeEvent(); qDebug() << "Timeout Reached, emit StatusChanged 3 signal!"; emit StatusChanged(3); } void IdleWatcher::resumingFromIdle(){ qDebug() << "Somethings happened, emit StatusChanged 0 signal!"; emit StatusChanged(0); } void IdleWatcher::reset(int timeout) { qDebug() << "Idle timeout reset to " << timeout; KIdleTime::instance()->removeAllIdleTimeouts(); mSecs = timeout; setup(); } ukui-session-manager/ukui-session/ukuimodule.cpp0000644000175000017500000000362513622453036021103 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "ukuimodule.h" #include #include UkuiModule::UkuiModule(const XdgDesktopFile& file, QObject* parent) : QProcess(parent), file(file), fileName(QFileInfo(file.fileName()).fileName()), mIsTerminating(false) { restartNum = 0; QProcess::setProcessChannelMode(QProcess::ForwardedChannels); connect(this, SIGNAL(stateChanged(QProcess::ProcessState)), SLOT(updateState(QProcess::ProcessState))); } void UkuiModule::start() { mIsTerminating = false; QStringList args = file.expandExecString(); QString command = args.takeFirst(); qDebug() << "Start ukui module: " << command << "args: " << args; QProcess::start(command, args); } void UkuiModule::terminate() { mIsTerminating = true; QProcess::terminate(); } bool UkuiModule::isTerminating() { return mIsTerminating; } void UkuiModule::updateState(QProcess::ProcessState newState) { if (newState != QProcess::Starting) emit moduleStateChanged(fileName, (newState == QProcess::Running)); } ukui-session-manager/ukui-session/xdgdirs.cpp0000644000175000017500000002201513622453036020356 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * Copyright: 2010-2011 Razor team * 2019 Tianjin KYLIN Information Technology Co., Ltd. * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "xdgdirs.h" #include #include #include #include static const QString userDirectoryString[8] = { QLatin1String("Desktop"), QLatin1String("Download"), QLatin1String("Templates"), QLatin1String("Publicshare"), QLatin1String("Documents"), QLatin1String("Music"), QLatin1String("Pictures"), QLatin1String("Videos") }; // Helper functions prototypes void fixBashShortcuts(QString &s); void removeEndingSlash(QString &s); QString createDirectory(const QString &dir); void cleanAndAddPostfix(QStringList &dirs, const QString& postfix); QString userDirFallback(XdgDirs::UserDirectory dir); /************************************************ Helper func. ************************************************/ void fixBashShortcuts(QString &s) { if (s.startsWith(QLatin1Char('~'))) s = QFile::decodeName(qgetenv("HOME")) + (s).mid(1); } void removeEndingSlash(QString &s) { // We don't check for empty strings. Caller must check it. // Remove the ending slash, except for root dirs. if (s.length() > 1 && s.endsWith(QLatin1Char('/'))) s.chop(1); } QString createDirectory(const QString &dir) { QDir d(dir); if (!d.exists()) { if (!d.mkpath(QLatin1String("."))) { qWarning() << QString::fromLatin1("Can't create %1 directory.").arg(d.absolutePath()); } } QString r = d.absolutePath(); removeEndingSlash(r); return r; } void cleanAndAddPostfix(QStringList &dirs, const QString& postfix) { const int N = dirs.count(); for(int i = 0; i < N; ++i) { fixBashShortcuts(dirs[i]); removeEndingSlash(dirs[i]); dirs[i].append(postfix); } } QString userDirFallback(XdgDirs::UserDirectory dir) { QString fallback; const QString home = QFile::decodeName(qgetenv("HOME")); if (home.isEmpty()) return QString::fromLatin1("/tmp"); else if (dir == XdgDirs::Desktop) fallback = QString::fromLatin1("%1/%2").arg(home, QLatin1String("Desktop")); else fallback = home; return fallback; } QString XdgDirs::userDirDefault(XdgDirs::UserDirectory dir) { // possible values for UserDirectory Q_ASSERT(!(dir < XdgDirs::Desktop || dir > XdgDirs::Videos)); if (dir < XdgDirs::Desktop || dir > XdgDirs::Videos) return QString(); return userDirFallback(dir); } QString XdgDirs::userDir(XdgDirs::UserDirectory dir) { // possible values for UserDirectory Q_ASSERT(!(dir < XdgDirs::Desktop || dir > XdgDirs::Videos)); if (dir < XdgDirs::Desktop || dir > XdgDirs::Videos) return QString(); QString folderName = userDirectoryString[dir]; const QString fallback = userDirFallback(dir); QString configDir(configHome()); QFile configFile(configDir + QLatin1String("/user-dirs.dirs")); if (!configFile.exists()) return fallback; if (!configFile.open(QIODevice::ReadOnly | QIODevice::Text)) return fallback; QString userDirVar(QLatin1String("XDG_") + folderName.toUpper() + QLatin1String("_DIR")); QTextStream in(&configFile); QString line; while (!in.atEnd()) { line = in.readLine(); if (line.contains(userDirVar)) { configFile.close(); // get path between quotes line = line.section(QLatin1Char('"'), 1, 1); if (line.isEmpty()) return fallback; line.replace(QLatin1String("$HOME"), QLatin1String("~")); fixBashShortcuts(line); return line; } } configFile.close(); return fallback; } bool XdgDirs::setUserDir(XdgDirs::UserDirectory dir, const QString& value, bool createDir) { // possible values for UserDirectory Q_ASSERT(!(dir < XdgDirs::Desktop || dir > XdgDirs::Videos)); if (dir < XdgDirs::Desktop || dir > XdgDirs::Videos) return false; const QString home = QFile::decodeName(qgetenv("HOME")); if (!(value.startsWith(QLatin1String("$HOME")) || value.startsWith(QLatin1String("~/")) || value.startsWith(home) || value.startsWith(QDir(home).canonicalPath()))) return false; QString folderName = userDirectoryString[dir]; QString configDir(configHome()); QFile configFile(configDir + QLatin1String("/user-dirs.dirs")); // create the file if doesn't exist and opens it if (!configFile.open(QIODevice::ReadWrite | QIODevice::Text)) return false; QTextStream stream(&configFile); QVector lines; QString line; bool foundVar = false; while (!stream.atEnd()) { line = stream.readLine(); if (line.indexOf(QLatin1String("XDG_") + folderName.toUpper() + QLatin1String("_DIR")) == 0) { foundVar = true; QString path = line.section(QLatin1Char('"'), 1, 1); line.replace(path, value); lines.append(line); } else if (line.indexOf(QLatin1String("XDG_")) == 0) { lines.append(line); } } stream.reset(); configFile.resize(0); if (!foundVar) stream << QString::fromLatin1("XDG_%1_DIR=\"%2\"\n").arg(folderName.toUpper(),(value)); for (QVector::iterator i = lines.begin(); i != lines.end(); ++i) stream << *i << QLatin1Char('\n'); configFile.close(); if (createDir) { QString path = QString(value).replace(QLatin1String("$HOME"), QLatin1String("~")); fixBashShortcuts(path); QDir().mkpath(path); } return true; } QString XdgDirs::dataHome(bool createDir) { QString s = QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation); fixBashShortcuts(s); if (createDir) return createDirectory(s); removeEndingSlash(s); return s; } QString XdgDirs::configHome(bool createDir) { QString s = QStandardPaths::writableLocation(QStandardPaths::GenericConfigLocation); fixBashShortcuts(s); if (createDir) return createDirectory(s); removeEndingSlash(s); return s; } QStringList XdgDirs::dataDirs(const QString &postfix) { QString d = QFile::decodeName(qgetenv("XDG_DATA_DIRS")); QStringList dirs = d.split(QLatin1Char(':'), QString::SkipEmptyParts); if (dirs.isEmpty()) { dirs.append(QString::fromLatin1("/usr/local/share")); dirs.append(QString::fromLatin1("/usr/share")); } else { QMutableListIterator it(dirs); while (it.hasNext()) { const QString dir = it.next(); if (!dir.startsWith(QLatin1Char('/'))) it.remove(); } } dirs.removeDuplicates(); cleanAndAddPostfix(dirs, postfix); return dirs; } QStringList XdgDirs::configDirs(const QString &postfix) { QStringList dirs; const QString env = QFile::decodeName(qgetenv("XDG_CONFIG_DIRS")); if (env.isEmpty()) dirs.append(QString::fromLatin1("/etc/xdg")); else dirs = env.split(QLatin1Char(':'), QString::SkipEmptyParts); cleanAndAddPostfix(dirs, postfix); return dirs; } QString XdgDirs::cacheHome(bool createDir) { QString s = QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation); fixBashShortcuts(s); if (createDir) return createDirectory(s); removeEndingSlash(s); return s; } QString XdgDirs::runtimeDir() { QString result = QStandardPaths::writableLocation(QStandardPaths::RuntimeLocation); fixBashShortcuts(result); removeEndingSlash(result); return result; } QString XdgDirs::autostartHome(bool createDir) { QString s = QString::fromLatin1("%1/autostart").arg(configHome(createDir)); fixBashShortcuts(s); if (createDir) return createDirectory(s); QDir d(s); QString r = d.absolutePath(); removeEndingSlash(r); return r; } QStringList XdgDirs::autostartDirs(const QString &postfix) { QStringList dirs; const QStringList s = configDirs(); for (const QString &dir : s) dirs << QString::fromLatin1("%1/autostart").arg(dir) + postfix; return dirs; } ukui-session-manager/ukui-session/sessionapplication.h0000644000175000017500000000332013637401111022255 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2014 Hong Jen Yee (PCMan) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #ifndef SESSIONAPPLICATION_H #define SESSIONAPPLICATION_H #include #include #include #include /* qt会将glib里的signals成员识别为宏,所以取消该宏 * 后面如果用到signals时,使用Q_SIGNALS代替即可 **/ #ifdef signals #undef signals #endif class ModuleManager; class IdleWatcher; class SessionApplication : public QApplication { Q_OBJECT public: void test(); SessionApplication(int& argc, char** argv); ~SessionApplication(); private Q_SLOTS: bool startup(); void registerDBus(); void updatevalue(); private: void InitialEnvironment(); bool gsettings_usable; QGSettings * gs; ModuleManager* modman; IdleWatcher* mIdleWatcher; QWidget *widget; void playmusic(); }; #endif // SESSIONAPPLICATION_H ukui-session-manager/ukui-session/sessiondbusadaptor.h0000644000175000017500000000467413637016220022302 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2010-2016 LXQt team * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301, USA. **/ #ifndef SESSIONDBUSADAPTOR_H #define SESSIONDBUSADAPTOR_H #include #include "../tools/ukuipower.h" #include "modulemanager.h" class SessionDBusAdaptor : public QDBusAbstractAdaptor { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.gnome.SessionManager") public: SessionDBusAdaptor(ModuleManager *manager) : QDBusAbstractAdaptor(manager), mManager(manager), mPower(new UkuiPower()) { connect(mManager, &ModuleManager::moduleStateChanged, this , &SessionDBusAdaptor::moduleStateChanged); } Q_SIGNALS: void moduleStateChanged(QString moduleName, bool state); public slots: bool canLogout() { return true; } bool canReboot() { return mPower->canAction(UkuiPower::PowerReboot); } bool canPowerOff() { return mPower->canAction(UkuiPower::PowerShutdown); } Q_NOREPLY void logout() { mManager->logout(true); } Q_NOREPLY void reboot() { mManager->logout(false); mPower->doAction(UkuiPower::PowerReboot); QCoreApplication::exit(0); } Q_NOREPLY void powerOff() { mManager->logout(false); mPower->doAction(UkuiPower::PowerShutdown); QCoreApplication::exit(0); } // QDBusVariant listModules() // { // return QDBusVariant(mManager->listModules()); // } Q_NOREPLY void startModule(const QString& name) { mManager->startProcess(name, true); } Q_NOREPLY void stopModule(const QString& name) { mManager->stopProcess(name); } private: ModuleManager *mManager; UkuiPower *mPower; }; #endif // SESSIONDBUSADAPTOR_H ukui-session-manager/ukui-session/xdgdesktopfile.cpp0000644000175000017500000015104113622453036021730 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * Copyright: 2010-2011 Razor team * 2019 Tianjin KYLIN Information Technology Co., Ltd. * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "xdgdesktopfile.h" #include "xdgdirs.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //add from this function: static inline QByteArray detectDesktopEnvironment() { const QByteArray _desktop = qgetenv("XDG_CURRENT_DESKTOP"); if (!_desktop.isEmpty()) { return _desktop.toUpper(); } return QByteArray("UNKNOWN"); } /** * See: http://standards.freedesktop.org/desktop-entry-spec */ // A list of executables that can't be run with QProcess::startDetached(). They // will be run with QProcess::start() static const QStringList nonDetachExecs = QStringList() << QLatin1String("pkexec"); static const QLatin1String onlyShowInKey("OnlyShowIn"); static const QLatin1String notShowInKey("NotShowIn"); static const QLatin1String categoriesKey("Categories"); static const QLatin1String actionsKey("Actions"); static const QLatin1String extendPrefixKey("X-"); static const QLatin1String mimeTypeKey("MimeType"); static const QLatin1String applicationsStr("applications"); static const QLatin1String nameKey("Name"); static const QLatin1String typeKey("Type"); static const QLatin1String ApplicationStr("Application"); static const QLatin1String LinkStr("Link"); static const QLatin1String DirectoryStr("Directory"); static const QLatin1String execKey("Exec"); static const QLatin1String urlKey("URL"); static const QLatin1String iconKey("Icon"); static const QLatin1String initialPreferenceKey("InitialPreference"); // Helper functions prototypes bool checkTryExec(const QString& progName); QString &doEscape(QString& str, const QHash &repl); QString &doUnEscape(QString& str, const QHash &repl); QString &escape(QString& str); QString &escapeExec(QString& str); QString expandDynamicUrl(QString url); QString expandEnvVariables(const QString str); QStringList expandEnvVariables(const QStringList strs); QString findDesktopFile(const QString& dirName, const QString& desktopName); QString findDesktopFile(const QString& desktopName); static QStringList parseCombinedArgString(const QString &program); bool read(const QString &prefix); void replaceVar(QString &str, const QString &varName, const QString &after); QString &unEscape(QString& str); QString &unEscapeExec(QString& str); void loadMimeCacheDir(const QString& dirName, QHash > & cache); QString &doEscape(QString& str, const QHash &repl) { // First we replace slash. str.replace(QLatin1Char('\\'), QLatin1String("\\\\")); QHashIterator i(repl); while (i.hasNext()) { i.next(); if (i.key() != QLatin1Char('\\')) str.replace(i.key(), QString::fromLatin1("\\\\%1").arg(i.value())); } return str; } /************************************************ The escape sequences \s, \n, \t, \r, and \\ are supported for values of type string and localestring, meaning ASCII space, newline, tab, carriage return, and backslash, respectively. ************************************************/ QString &escape(QString& str) { QHash repl; repl.insert(QLatin1Char('\n'), QLatin1Char('n')); repl.insert(QLatin1Char('\t'), QLatin1Char('t')); repl.insert(QLatin1Char('\r'), QLatin1Char('r')); return doEscape(str, repl); } /************************************************ Quoting must be done by enclosing the argument between double quotes and escaping the double quote character, backtick character ("`"), dollar sign ("$") and backslash character ("\") by preceding it with an additional backslash character. Implementations must undo quoting before expanding field codes and before passing the argument to the executable program. Note that the general escape rule for values of type string states that the backslash character can be escaped as ("\\") as well and that this escape rule is applied before the quoting rule. As such, to unambiguously represent a literal backslash character in a quoted argument in a desktop entry file requires the use of four successive backslash characters ("\\\\"). Likewise, a literal dollar sign in a quoted argument in a desktop entry file is unambiguously represented with ("\\$"). ************************************************/ QString &escapeExec(QString& str) { QHash repl; // The parseCombinedArgString() splits the string by the space symbols, // we temporarily replace them on the special characters. // Replacement will reverse after the splitting. repl.insert(QLatin1Char('"'), QLatin1Char('"')); // double quote, repl.insert(QLatin1Char('\''), QLatin1Char('\'')); // single quote ("'"), repl.insert(QLatin1Char('\\'), QLatin1Char('\\')); // backslash character ("\"), repl.insert(QLatin1Char('$'), QLatin1Char('$')); // dollar sign ("$"), return doEscape(str, repl); } QString &doUnEscape(QString& str, const QHash &repl) { int n = 0; while (1) { n=str.indexOf(QLatin1String("\\"), n); if (n < 0 || n > str.length() - 2) break; if (repl.contains(str.at(n+1))) { str.replace(n, 2, repl.value(str.at(n+1))); } n++; } return str; } /************************************************ The escape sequences \s, \n, \t, \r, and \\ are supported for values of type string and localestring, meaning ASCII space, newline, tab, carriage return, and backslash, respectively. ************************************************/ QString &unEscape(QString& str) { QHash repl; repl.insert(QLatin1Char('\\'), QLatin1Char('\\')); repl.insert(QLatin1Char('s'), QLatin1Char(' ')); repl.insert(QLatin1Char('n'), QLatin1Char('\n')); repl.insert(QLatin1Char('t'), QLatin1Char('\t')); repl.insert(QLatin1Char('r'), QLatin1Char('\r')); return doUnEscape(str, repl); } /************************************************ Quoting must be done by enclosing the argument between double quotes and escaping the double quote character, backtick character ("`"), dollar sign ("$") and backslash character ("\") by preceding it with an additional backslash character. Implementations must undo quoting before expanding field codes and before passing the argument to the executable program. Reserved characters are space (" "), tab, newline, double quote, single quote ("'"), backslash character ("\"), greater-than sign (">"), less-than sign ("<"), tilde ("~"), vertical bar ("|"), ampersand ("&"), semicolon (";"), dollar sign ("$"), asterisk ("*"), question mark ("?"), hash mark ("#"), parenthesis ("(") and (")") backtick character ("`"). Note that the general escape rule for values of type string states that the backslash character can be escaped as ("\\") as well and that this escape rule is applied before the quoting rule. As such, to unambiguously represent a literal backslash character in a quoted argument in a desktop entry file requires the use of four successive backslash characters ("\\\\"). Likewise, a literal dollar sign in a quoted argument in a desktop entry file is unambiguously represented with ("\\$"). ************************************************/ QString &unEscapeExec(QString& str) { unEscape(str); QHash repl; // The parseCombinedArgString() splits the string by the space symbols, // we temporarily replace them on the special characters. // Replacement will reverse after the splitting. repl.insert(QLatin1Char(' '), 01); // space repl.insert(QLatin1Char('\t'), 02); // tab repl.insert(QLatin1Char('\n'), 03); // newline, repl.insert(QLatin1Char('"'), QLatin1Char('"')); // double quote, repl.insert(QLatin1Char('\''), QLatin1Char('\'')); // single quote ("'"), repl.insert(QLatin1Char('\\'), QLatin1Char('\\')); // backslash character ("\"), repl.insert(QLatin1Char('>'), QLatin1Char('>')); // greater-than sign (">"), repl.insert(QLatin1Char('<'), QLatin1Char('<')); // less-than sign ("<"), repl.insert(QLatin1Char('~'), QLatin1Char('~')); // tilde ("~"), repl.insert(QLatin1Char('|'), QLatin1Char('|')); // vertical bar ("|"), repl.insert(QLatin1Char('&'), QLatin1Char('&')); // ampersand ("&"), repl.insert(QLatin1Char(';'), QLatin1Char(';')); // semicolon (";"), repl.insert(QLatin1Char('$'), QLatin1Char('$')); // dollar sign ("$"), repl.insert(QLatin1Char('*'), QLatin1Char('*')); // asterisk ("*"), repl.insert(QLatin1Char('?'), QLatin1Char('?')); // question mark ("?"), repl.insert(QLatin1Char('#'), QLatin1Char('#')); // hash mark ("#"), repl.insert(QLatin1Char('('), QLatin1Char('(')); // parenthesis ("(") repl.insert(QLatin1Char(')'), QLatin1Char(')')); // parenthesis (")") repl.insert(QLatin1Char('`'), QLatin1Char('`')); // backtick character ("`"). return doUnEscape(str, repl); } namespace { /*! * Helper class for getting the keys for "Additional applications actions" * ([Desktop Action %s] sections) */ class XdgDesktopAction : public XdgDesktopFile { public: XdgDesktopAction(const XdgDesktopFile & parent, const QString & action) : XdgDesktopFile(parent) , m_prefix(QString{QLatin1String("Desktop Action %1")}.arg(action)) {} protected: virtual QString prefix() const { return m_prefix; } private: const QString m_prefix; }; } class XdgDesktopFileData: public QSharedData { public: XdgDesktopFileData(); inline void clear() { mFileName.clear(); mIsValid = false; mValidIsChecked = false; mIsShow.clear(); mItems.clear(); mType = XdgDesktopFile::UnknownType; } bool read(const QString &prefix); XdgDesktopFile::Type detectType(XdgDesktopFile *q) const; bool startApplicationDetached(const XdgDesktopFile *q, const QString & action, const QStringList& urls) const; bool startLinkDetached(const XdgDesktopFile *q) const; bool startByDBus(const QString & action, const QStringList& urls) const; QStringList getListValue(const XdgDesktopFile * q, const QString & key, bool tryExtendPrefix) const; QString mFileName; bool mIsValid; mutable bool mValidIsChecked; mutable QHash mIsShow; QMap mItems; XdgDesktopFile::Type mType; }; XdgDesktopFileData::XdgDesktopFileData(): mFileName(), mIsValid(false), mValidIsChecked(false), mIsShow(), mItems(), mType(XdgDesktopFile::UnknownType) { } bool XdgDesktopFileData::read(const QString &prefix) { QFile file(mFileName); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) return false; QString section; QTextStream stream(&file); bool prefixExists = false; while (!stream.atEnd()) { QString line = stream.readLine().trimmed(); // Skip comments ...................... if (line.startsWith(QLatin1Char('#'))) continue; // Section .............................. if (line.startsWith(QLatin1Char('[')) && line.endsWith(QLatin1Char(']'))) { section = line.mid(1, line.length()-2); if (section == prefix) prefixExists = true; continue; } QString key = line.section(QLatin1Char('='), 0, 0).trimmed(); QString value = line.section(QLatin1Char('='), 1).trimmed(); if (key.isEmpty()) continue; mItems[section + QLatin1Char('/') + key] = QVariant(value); } // Not check for empty prefix mIsValid = (prefix.isEmpty()) || prefixExists; return mIsValid; } XdgDesktopFile::Type XdgDesktopFileData::detectType(XdgDesktopFile *q) const { QString typeStr = q->value(typeKey).toString(); if (typeStr == ApplicationStr) return XdgDesktopFile::ApplicationType; if (typeStr == LinkStr) return XdgDesktopFile::LinkType; if (typeStr == DirectoryStr) return XdgDesktopFile::DirectoryType; if (!q->value(execKey).toString().isEmpty()) return XdgDesktopFile::ApplicationType; return XdgDesktopFile::UnknownType; } bool XdgDesktopFileData::startApplicationDetached(const XdgDesktopFile *q, const QString & action, const QStringList& urls) const { //DBusActivatable handling if (q->value(QLatin1String("DBusActivatable"), false).toBool()) { /* WARNING: We fallback to use Exec when the DBusActivatable fails. * * This is a violation of the standard and we know it! * * From the Standard: * DBusActivatable A boolean value specifying if D-Bus activation is * supported for this application. If this key is missing, the default * value is false. If the value is true then implementations should * ignore the Exec key and send a D-Bus message to launch the * application. See D-Bus Activation for more information on how this * works. Applications should still include Exec= lines in their desktop * files for compatibility with implementations that do not understand * the DBusActivatable key. * * So, why are we doing it ? In the benefit of user experience. * We first ignore the Exec line and in use the D-Bus to lauch the * application. But if it fails, we try the Exec method. * * We consider that this violation is more acceptable than an failure * in launching an application. */ if (startByDBus(action, urls)) return true; } QStringList args = action.isEmpty() ? q->expandExecString(urls) : XdgDesktopAction{*q, action}.expandExecString(urls); if (args.isEmpty()) return false; if (q->value(QLatin1String("Terminal")).toBool()) { QString term = QString::fromLocal8Bit(qgetenv("TERM")); if (term.isEmpty()) term = QLatin1String("xterm"); args.prepend(QLatin1String("-e")); args.prepend(term); } bool nonDetach = false; for (const QString &s : nonDetachExecs) { for (const QString &a : const_cast(args)) { if (a.contains(s)) { nonDetach = true; } } } QString cmd = args.takeFirst(); QString workingDir = q->value(QLatin1String("Path")).toString(); if (!workingDir.isEmpty() && !QDir(workingDir).exists()) workingDir = QString(); if (nonDetach) { QScopedPointer p(new QProcess); p->setStandardInputFile(QProcess::nullDevice()); p->setProcessChannelMode(QProcess::ForwardedChannels); if (!workingDir.isEmpty()) p->setWorkingDirectory(workingDir); p->start(cmd, args); bool started = p->waitForStarted(); if (started) { QProcess* proc = p.take(); //release the pointer(will be selfdestroyed upon finish) QObject::connect(proc, static_cast(&QProcess::finished), proc, &QProcess::deleteLater); } return started; } else { return QProcess::startDetached(cmd, args, workingDir); } } bool XdgDesktopFileData::startLinkDetached(const XdgDesktopFile *q) const { QString url = q->url(); if (url.isEmpty()) { qWarning() << "XdgDesktopFileData::startLinkDetached: url is empty."; return false; } QString scheme = QUrl(url).scheme(); if (scheme.isEmpty() || scheme == QLatin1String("file")) { // Local file QFileInfo fi(url); QMimeDatabase db; QMimeType mimeInfo = db.mimeTypeForFile(fi); XdgDesktopFile* desktopFile = XdgDesktopFileCache::getDefaultApp(mimeInfo.name()); if (desktopFile) return desktopFile->startDetached(url); } else { // Internet URL return QDesktopServices::openUrl(QUrl::fromEncoded(url.toLocal8Bit())); } return false; } bool XdgDesktopFileData::startByDBus(const QString & action, const QStringList& urls) const { QFileInfo f(mFileName); QString path(f.completeBaseName()); path = path.replace(QLatin1Char('.'), QLatin1Char('/')).prepend(QLatin1Char('/')); QVariantMap platformData; platformData.insert(QLatin1String("desktop-startup-id"), QString::fromLocal8Bit(qgetenv("DESKTOP_STARTUP_ID"))); QDBusObjectPath d_path(path); if (d_path.path().isEmpty()) { qWarning() << "XdgDesktopFileData::startByDBus: invalid name" << f.fileName() << "of DBusActivatable .desktop file" ", assembled DBus object path" << path << "is invalid!"; return false; } QDBusInterface app(f.completeBaseName(), path, QLatin1String("org.freedesktop.Application")); //Note: after the QDBusInterface construction, it can *invalid* (has reasonable lastError()) // but this can be due to some intermediate DBus call(s) which doesn't need to be fatal and // our next call() can succeed // see discussion https://github.com/lxqt/libqtxdg/pull/75 if (app.lastError().isValid()) { qWarning().noquote() << "XdgDesktopFileData::startByDBus: invalid interface:" << app.lastError().message() << ", but trying to continue..."; } QDBusMessage reply; if (!action.isEmpty()) { QList v_urls; for (const auto & url : urls) v_urls.append(url); reply = app.call(QLatin1String("ActivateAction"), action, v_urls, platformData); } else if (urls.isEmpty()) reply = app.call(QLatin1String("Activate"), platformData); else reply = app.call(QLatin1String("Open"), urls, platformData); return QDBusMessage::ErrorMessage != reply.type(); } QStringList XdgDesktopFileData::getListValue(const XdgDesktopFile * q, const QString & key, bool tryExtendPrefix) const { QString used_key = key; if (!q->contains(used_key) && tryExtendPrefix) { used_key = extendPrefixKey + key; if (!q->contains(used_key)) return QStringList(); } return q->value(used_key).toString().split(QLatin1Char(';'), QString::SkipEmptyParts); } XdgDesktopFile::XdgDesktopFile(): d(new XdgDesktopFileData) { } XdgDesktopFile::XdgDesktopFile(const XdgDesktopFile& other): d(other.d) { } XdgDesktopFile::XdgDesktopFile(Type type, const QString& name, const QString &value): d(new XdgDesktopFileData) { d->mFileName = name + QLatin1String(".desktop"); d->mType = type; setValue(QLatin1String("Version"), QLatin1String("1.0")); setValue(nameKey, name); if (type == XdgDesktopFile::ApplicationType) { setValue(typeKey, ApplicationStr); setValue(execKey, value); } else if (type == XdgDesktopFile::LinkType) { setValue(typeKey, LinkStr); setValue(urlKey, value); } else if (type == XdgDesktopFile::DirectoryType) { setValue(typeKey, DirectoryStr); } d->mIsValid = check(); } XdgDesktopFile::~XdgDesktopFile() { } XdgDesktopFile& XdgDesktopFile::operator=(const XdgDesktopFile& other) { d = other.d; return *this; } bool XdgDesktopFile::operator==(const XdgDesktopFile &other) const { return d->mItems == other.d->mItems; } bool XdgDesktopFile::load(const QString& fileName) { d->clear(); if (fileName.startsWith(QDir::separator())) { // absolute path QFileInfo f(fileName); if (f.exists()) d->mFileName = f.canonicalFilePath(); else return false; } else { // relative path const QString r = findDesktopFile(fileName); if (r.isEmpty()) return false; else d->mFileName = r; } d->read(prefix()); d->mIsValid = d->mIsValid && check(); d->mType = d->detectType(this); return isValid(); } bool XdgDesktopFile::save(QIODevice *device) const { QTextStream stream(device); QMap::const_iterator i = d->mItems.constBegin(); QString section; while (i != d->mItems.constEnd()) { QString path = i.key(); QString sect = path.section(QLatin1Char('/'),0,0); if (sect != section) { section = sect; stream << QLatin1Char('[') << section << QLatin1Char(']') << endl; } QString key = path.section(QLatin1Char('/'), 1); stream << key << QLatin1Char('=') << i.value().toString() << endl; ++i; } return true; } bool XdgDesktopFile::save(const QString &fileName) const { QFile file(fileName); if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) return false; return save(&file); } QVariant XdgDesktopFile::value(const QString& key, const QVariant& defaultValue) const { QString path = (!prefix().isEmpty()) ? prefix() + QLatin1Char('/') + key : key; QVariant res = d->mItems.value(path, defaultValue); if (res.type() == QVariant::String) { QString s = res.toString(); return unEscape(s); } return res; } void XdgDesktopFile::setValue(const QString &key, const QVariant &value) { QString path = (!prefix().isEmpty()) ? prefix() + QLatin1Char('/') + key : key; if (value.type() == QVariant::String) { QString s=value.toString(); if (key.toUpper() == QLatin1String("EXEC")) escapeExec(s); else escape(s); d->mItems[path] = QVariant(s); if (key.toUpper() == QLatin1String("TYPE")) d->mType = d->detectType(this); } else { d->mItems[path] = value; } } void XdgDesktopFile::setLocalizedValue(const QString &key, const QVariant &value) { setValue(localizedKey(key), value); } /************************************************ LC_MESSAGES value Possible keys in order of matching lang_COUNTRY@MODIFIER lang_COUNTRY@MODIFIER, lang_COUNTRY, lang@MODIFIER, lang, default value lang_COUNTRY lang_COUNTRY, lang, default value lang@MODIFIER lang@MODIFIER, lang, default value lang lang, default value ************************************************/ QString XdgDesktopFile::localizedKey(const QString& key) const { QString lang = QString::fromLocal8Bit(qgetenv("LC_MESSAGES")); if (lang.isEmpty()) lang = QString::fromLocal8Bit(qgetenv("LC_ALL")); if (lang.isEmpty()) lang = QString::fromLocal8Bit(qgetenv("LANG")); QString modifier = lang.section(QLatin1Char('@'), 1); if (!modifier.isEmpty()) lang.truncate(lang.length() - modifier.length() - 1); QString encoding = lang.section(QLatin1Char('.'), 1); if (!encoding.isEmpty()) lang.truncate(lang.length() - encoding.length() - 1); QString country = lang.section(QLatin1Char('_'), 1); if (!country.isEmpty()) lang.truncate(lang.length() - country.length() - 1); //qDebug() << "LC_MESSAGES: " << qgetenv("LC_MESSAGES"); //qDebug() << "Lang:" << lang; //qDebug() << "Country:" << country; //qDebug() << "Encoding:" << encoding; //qDebug() << "Modifier:" << modifier; if (!modifier.isEmpty() && !country.isEmpty()) { QString k = QString::fromLatin1("%1[%2_%3@%4]").arg(key, lang, country, modifier); //qDebug() << "\t try " << k << contains(k); if (contains(k)) return k; } if (!country.isEmpty()) { QString k = QString::fromLatin1("%1[%2_%3]").arg(key, lang, country); //qDebug() << "\t try " << k << contains(k); if (contains(k)) return k; } if (!modifier.isEmpty()) { QString k = QString::fromLatin1("%1[%2@%3]").arg(key, lang, modifier); //qDebug() << "\t try " << k << contains(k); if (contains(k)) return k; } QString k = QString::fromLatin1("%1[%2]").arg(key, lang); //qDebug() << "\t try " << k << contains(k); if (contains(k)) return k; //qDebug() << "\t try " << key << contains(key); return key; } QVariant XdgDesktopFile::localizedValue(const QString& key, const QVariant& defaultValue) const { return value(localizedKey(key), defaultValue); } QStringList XdgDesktopFile::categories() const { return d->getListValue(this, categoriesKey, true); } QStringList XdgDesktopFile::actions() const { return d->getListValue(this, actionsKey, false); } void XdgDesktopFile::removeEntry(const QString& key) { QString path = (!prefix().isEmpty()) ? prefix() + QLatin1Char('/') + key : key; d->mItems.remove(path); } bool XdgDesktopFile::contains(const QString& key) const { QString path = (!prefix().isEmpty()) ? prefix() + QLatin1Char('/') + key : key; return d->mItems.contains(path); } bool XdgDesktopFile::isValid() const { return d->mIsValid; } QString XdgDesktopFile::fileName() const { return d->mFileName; } //QIcon const XdgDesktopFile::icon(const QIcon& fallback) const //{ // QIcon result = XdgIcon::fromTheme(value(iconKey).toString(), fallback); // if (result.isNull() && type() == ApplicationType) { // result = XdgIcon::fromTheme(QLatin1String("application-x-executable.png")); // // TODO Maybe defaults for other desktopfile types as well.. // } // return result; //} //QIcon const XdgDesktopFile::actionIcon(const QString & action, const QIcon& fallback) const //{ // return d->mType == ApplicationType // ? XdgDesktopAction{*this, action}.icon(icon(fallback)) // : fallback; //} //QString const XdgDesktopFile::iconName() const //{ // return value(iconKey).toString(); //} //QString const XdgDesktopFile::actionIconName(const QString & action) const //{ // return d->mType == ApplicationType // ? XdgDesktopAction{*this, action}.iconName() // : QString{}; //} QStringList XdgDesktopFile::mimeTypes() const { return value(mimeTypeKey).toString().split(QLatin1Char(';'), QString::SkipEmptyParts); } QString XdgDesktopFile::actionName(const QString & action) const { return d->mType == ApplicationType ? XdgDesktopAction{*this, action}.name() : QString{}; } XdgDesktopFile::Type XdgDesktopFile::type() const { return d->mType; } /************************************************ Starts the program defined in this desktop file in a new process, and detaches from it. Returns true on success; otherwise returns false. If the calling process exits, the detached process will continue to live. Urls - the list of URLs or files to open, can be empty (app launched without argument) If the function is successful then *pid is set to the process identifier of the started process. ************************************************/ bool XdgDesktopFile::startDetached(const QStringList& urls) const { switch(d->mType) { case ApplicationType: return d->startApplicationDetached(this, QString{}, urls); break; case LinkType: return d->startLinkDetached(this); break; default: return false; } } bool XdgDesktopFile::actionActivate(const QString & action, const QStringList& urls) const { return d->mType == ApplicationType ? d->startApplicationDetached(this, action, urls) : false; } /************************************************ This is an overloaded function. ************************************************/ bool XdgDesktopFile::startDetached(const QString& url) const { if (url.isEmpty()) return startDetached(QStringList()); else return startDetached(QStringList(url)); } static QStringList parseCombinedArgString(const QString &program) { QStringList args; QString tmp; int quoteCount = 0; bool inQuote = false; // handle quoting. tokens can be surrounded by double quotes // "hello world". three consecutive double quotes represent // the quote character itself. for (int i = 0; i < program.size(); ++i) { if (program.at(i) == QLatin1Char('"')) { ++quoteCount; if (quoteCount == 3) { // third consecutive quote quoteCount = 0; tmp += program.at(i); } continue; } if (quoteCount) { if (quoteCount == 1) inQuote = !inQuote; quoteCount = 0; } if (!inQuote && program.at(i).isSpace()) { if (!tmp.isEmpty()) { args += tmp; tmp.clear(); } } else { tmp += program.at(i); } } if (!tmp.isEmpty()) args += tmp; return args; } void replaceVar(QString &str, const QString &varName, const QString &after) { str.replace(QRegExp(QString::fromLatin1("\\$%1(?!\\w)").arg(varName)), after); str.replace(QRegExp(QString::fromLatin1("\\$\\{%1\\}").arg(varName)), after); } QString expandEnvVariables(const QString str) { QString scheme = QUrl(str).scheme(); if (scheme == QLatin1String("http") || scheme == QLatin1String("https") || scheme == QLatin1String("shttp") || scheme == QLatin1String("ftp") || scheme == QLatin1String("ftps") || scheme == QLatin1String("pop") || scheme == QLatin1String("pops") || scheme == QLatin1String("imap") || scheme == QLatin1String("imaps") || scheme == QLatin1String("mailto") || scheme == QLatin1String("nntp") || scheme == QLatin1String("irc") || scheme == QLatin1String("telnet") || scheme == QLatin1String("xmpp") || scheme == QLatin1String("nfs") ) return str; const QString homeDir = QFile::decodeName(qgetenv("HOME")); QString res = str; res.replace(QRegExp(QString::fromLatin1("~(?=$|/)")), homeDir); replaceVar(res, QLatin1String("HOME"), homeDir); replaceVar(res, QLatin1String("USER"), QString::fromLocal8Bit(qgetenv("USER"))); replaceVar(res, QLatin1String("XDG_DESKTOP_DIR"), XdgDirs::userDir(XdgDirs::Desktop)); replaceVar(res, QLatin1String("XDG_TEMPLATES_DIR"), XdgDirs::userDir(XdgDirs::Templates)); replaceVar(res, QLatin1String("XDG_DOCUMENTS_DIR"), XdgDirs::userDir(XdgDirs::Documents)); replaceVar(res, QLatin1String("XDG_MUSIC_DIR"), XdgDirs::userDir(XdgDirs::Music)); replaceVar(res, QLatin1String("XDG_PICTURES_DIR"), XdgDirs::userDir(XdgDirs::Pictures)); replaceVar(res, QLatin1String("XDG_VIDEOS_DIR"), XdgDirs::userDir(XdgDirs::Videos)); replaceVar(res, QLatin1String("XDG_PHOTOS_DIR"), XdgDirs::userDir(XdgDirs::Pictures)); return res; } QStringList expandEnvVariables(const QStringList strs) { QStringList res; for (const QString &s : strs) res << expandEnvVariables(s); return res; } QStringList XdgDesktopFile::expandExecString(const QStringList& urls) const { if (d->mType != ApplicationType) return QStringList(); QStringList result; QString execStr = value(execKey).toString(); unEscapeExec(execStr); const QStringList tokens = parseCombinedArgString(execStr); for (QString token : tokens) { // The parseCombinedArgString() splits the string by the space symbols, // we temporarily replaced them on the special characters. // Now we reverse it. token.replace(01, QLatin1Char(' ')); token.replace(02, QLatin1Char('\t')); token.replace(03, QLatin1Char('\n')); // ---------------------------------------------------------- // A single file name, even if multiple files are selected. if (token == QLatin1String("%f")) { if (!urls.isEmpty()) result << expandEnvVariables(urls.at(0)); continue; } // ---------------------------------------------------------- // A list of files. Use for apps that can open several local files at once. // Each file is passed as a separate argument to the executable program. if (token == QLatin1String("%F")) { result << expandEnvVariables(urls); continue; } // ---------------------------------------------------------- // A single URL. Local files may either be passed as file: URLs or as file path. if (token == QLatin1String("%u")) { if (!urls.isEmpty()) { QUrl url; url.setUrl(expandEnvVariables(urls.at(0))); result << ((!url.toLocalFile().isEmpty()) ? url.toLocalFile() : QString::fromUtf8(url.toEncoded())); } continue; } // ---------------------------------------------------------- // A list of URLs. Each URL is passed as a separate argument to the executable // program. Local files may either be passed as file: URLs or as file path. if (token == QLatin1String("%U")) { for (const QString &s : urls) { QUrl url(expandEnvVariables(s)); result << ((!url.toLocalFile().isEmpty()) ? url.toLocalFile() : QString::fromUtf8(url.toEncoded())); } continue; } // ---------------------------------------------------------- // The Icon key of the desktop entry expanded as two arguments, first --icon // and then the value of the Icon key. Should not expand to any arguments if // the Icon key is empty or missing. if (token == QLatin1String("%i")) { QString icon = value(iconKey).toString(); if (!icon.isEmpty()) result << QLatin1String("-icon") << icon.replace(QLatin1Char('%'), QLatin1String("%%")); continue; } // ---------------------------------------------------------- // The translated name of the application as listed in the appropriate Name key // in the desktop entry. if (token == QLatin1String("%c")) { result << localizedValue(nameKey).toString().replace(QLatin1Char('%'), QLatin1String("%%")); continue; } // ---------------------------------------------------------- // The location of the desktop file as either a URI (if for example gotten from // the vfolder system) or a local filename or empty if no location is known. if (token == QLatin1String("%k")) { result << fileName().replace(QLatin1Char('%'), QLatin1String("%%")); break; } // ---------------------------------------------------------- // Deprecated. // Deprecated field codes should be removed from the command line and ignored. if (token == QLatin1String("%d") || token == QLatin1String("%D") || token == QLatin1String("%n") || token == QLatin1String("%N") || token == QLatin1String("%v") || token == QLatin1String("%m") ) { continue; } // ---------------------------------------------------------- result << expandEnvVariables(token); } return result; } bool checkTryExec(const QString& progName) { if (progName.startsWith(QDir::separator())) return QFileInfo(progName).isExecutable(); const QStringList dirs = QFile::decodeName(qgetenv("PATH")).split(QLatin1Char(':')); for (const QString &dir : dirs) { if (QFileInfo(QDir(dir), progName).isExecutable()) return true; } return false; } QString XdgDesktopFile::id(const QString &fileName, bool checkFileExists) { const QFileInfo f(fileName); if (checkFileExists) { if (!f.exists()) { return QString(); } } QString id = f.absoluteFilePath(); const QStringList dataDirs = XdgDirs::dataDirs(); for (const QString &d : dataDirs) { if (id.startsWith(d)) { // remove only the first occurence id.replace(id.indexOf(d), d.size(), QString()); } } const QLatin1Char slash('/'); const QString s = slash + applicationsStr + slash; if (!id.startsWith(s)) return QString(); id.replace(id.indexOf(s), s.size(), QString()); id.replace(slash, QLatin1Char('-')); return id; } bool XdgDesktopFile::isShown(const QString &environment) const { const QString env = environment.toUpper(); if (d->mIsShow.contains(env)) return d->mIsShow.value(env); d->mIsShow.insert(env, false); // Means "this application exists, but don't display it in the menus". if (value(QLatin1String("NoDisplay")).toBool()) return false; // The file is not suitable to the current environment if (!isSuitable(true, env)) return false; d->mIsShow.insert(env, true); return true; } bool XdgDesktopFile::isSuitable(bool excludeHidden, const QString &environment) const { // Hidden should have been called Deleted. It means the user deleted // (at his level) something that was present if (excludeHidden && value(QLatin1String("Hidden")).toBool()) return false; // A list of strings identifying the environments that should display/not // display a given desktop entry. // OnlyShowIn ........ QString env; if (environment.isEmpty()) env = QString::fromLocal8Bit(detectDesktopEnvironment()); else { env = environment.toUpper(); } QString key; bool keyFound = false; if (contains(onlyShowInKey)) { key = onlyShowInKey; keyFound = true; } else { key = extendPrefixKey + onlyShowInKey; keyFound = contains(key) ? true : false; } if (keyFound) { QStringList s = value(key).toString().toUpper().split(QLatin1Char(';')); if (!s.contains(env)) return false; } // NotShowIn ......... if (contains(notShowInKey)) { key = notShowInKey; keyFound = true; } else { key = extendPrefixKey + notShowInKey; keyFound = contains(key) ? true : false; } if (keyFound) { QStringList s = value(key).toString().toUpper().split(QLatin1Char(';')); if (s.contains(env)) return false; } // actually installed. If not, entry may not show in menus, etc. QString s = value(QLatin1String("TryExec")).toString(); if (!s.isEmpty() && ! checkTryExec(s)) return false; return true; } QString expandDynamicUrl(QString url) { const QStringList env = QProcess::systemEnvironment(); for (const QString &line : env) { QString name = line.section(QLatin1Char('='), 0, 0); QString val = line.section(QLatin1Char('='), 1); url.replace(QString::fromLatin1("$%1").arg(name), val); url.replace(QString::fromLatin1("${%1}").arg(name), val); } return url; } QString XdgDesktopFile::url() const { if (type() != LinkType) return QString(); QString url; url = value(urlKey).toString(); if (!url.isEmpty()) return url; // WTF? What standard describes it? url = expandDynamicUrl(value(QLatin1String("URL[$e]")).toString()); if (!url.isEmpty()) return url; return QString(); } QString findDesktopFile(const QString& dirName, const QString& desktopName) { QDir dir(dirName); QFileInfo fi(dir, desktopName); if (fi.exists()) return fi.canonicalFilePath(); // Working recursively ............ const QFileInfoList dirs = dir.entryInfoList(QStringList(), QDir::Dirs | QDir::NoDotAndDotDot); for (const QFileInfo &d : dirs) { QString cn = d.canonicalFilePath(); if (dirName != cn) { QString f = findDesktopFile(cn, desktopName); if (!f.isEmpty()) return f; } } return QString(); } QString findDesktopFile(const QString& desktopName) { QStringList dataDirs = XdgDirs::dataDirs(); dataDirs.prepend(XdgDirs::dataHome(false)); for (const QString &dirName : const_cast(dataDirs)) { QString f = findDesktopFile(dirName + QLatin1String("/applications"), desktopName); if (!f.isEmpty()) return f; } return QString(); } XdgDesktopFile* XdgDesktopFileCache::getFile(const QString& fileName) { if (fileName.isEmpty()) return nullptr; if (instance().m_fileCache.contains(fileName)) { return instance().m_fileCache.value(fileName); } QString file; if (!fileName.startsWith(QDir::separator())) { // Relative path // Search desktop file .................. file = findDesktopFile(fileName); if (file.isEmpty()) return nullptr; } else { file = fileName; } XdgDesktopFile* desktopFile; // The file was found if (!instance().m_fileCache.contains(file)) { desktopFile = load(file); if (desktopFile) { instance().m_fileCache.insert(file, desktopFile); return desktopFile; } else { return nullptr; } } else { // already in the cache desktopFile = instance().m_fileCache.value(file); return desktopFile; } } QList XdgDesktopFileCache::getAllFiles() { return instance().m_fileCache.values(); } XdgDesktopFileCache & XdgDesktopFileCache::instance() { static XdgDesktopFileCache cache; if (!cache.m_IsInitialized) { cache.initialize(); cache.m_IsInitialized = true; } return cache; } /*! * Handles files with a syntax similar to desktopfiles as QSettings files. * The differences between ini-files and desktopfiles are: * desktopfiles uses '#' as comment marker, and ';' as list-separator. * Every key/value must be inside a section (i.e. there is no 'General' pseudo-section) */ bool readDesktopFile(QIODevice & device, QSettings::SettingsMap & map) { QString section; QTextStream stream(&device); while (!stream.atEnd()) { QString line = stream.readLine().trimmed(); // Skip comments and empty lines if (line.startsWith(QLatin1Char('#')) || line.isEmpty()) continue; // Section .............................. if (line.startsWith(QLatin1Char('[')) && line.endsWith(QLatin1Char(']'))) { section = line.mid(1, line.length()-2); continue; } QString key = line.section(QLatin1Char('='), 0, 0).trimmed(); QString value = line.section(QLatin1Char('='), 1).trimmed(); if (key.isEmpty()) continue; if (section.isEmpty()) { qWarning() << "key=value outside section"; return false; } key.prepend(QLatin1Char('/')); key.prepend(section); if (value.contains(QLatin1Char(';'))) { map.insert(key, value.split(QLatin1Char(';'), QString::SkipEmptyParts)); } else { map.insert(key, value); } } return true; } /*! See readDesktopFile */ bool writeDesktopFile(QIODevice & device, const QSettings::SettingsMap & map) { QTextStream stream(&device); QString section; for (auto it = map.constBegin(); it != map.constEnd(); ++it) { bool isString = it.value().canConvert(); bool isStringList = (it.value().type() == QVariant::StringList); if ((! isString) && (! isStringList)) { return false; } QString thisSection = it.key().section(QLatin1Char('/'), 0, 0); if (thisSection.isEmpty()) { qWarning() << "No section defined"; return false; } if (thisSection != section) { stream << QLatin1Char('[') << thisSection << QLatin1Char(']') << QLatin1Char('\n'); section = thisSection; } QString remainingKey = it.key().section(QLatin1Char('/'), 1, -1); if (remainingKey.isEmpty()) { qWarning() << "Only one level in key..." ; return false; } stream << remainingKey << QLatin1Char('='); if (isString) { stream << it.value().toString() << QLatin1Char(';'); } else /* if (isStringList) */ { const auto values = it.value().toStringList(); for (const QString &value : values) { stream << value << QLatin1Char(';'); } } stream << QLatin1Char('\n'); } return true; } void XdgDesktopFileCache::initialize(const QString& dirName) { QDir dir(dirName); // Directories have the type "application/x-directory", but in the desktop file // are shown as "inode/directory". To handle these cases, we use this hash. QHash specials; specials.insert(QLatin1String("inode/directory"), QLatin1String("application/x-directory")); // Working recursively ............ const QFileInfoList files = dir.entryInfoList(QStringList(), QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot); for (const QFileInfo &f : files) { if (f.isDir()) { initialize(f.absoluteFilePath()); continue; } XdgDesktopFile* df = load(f.absoluteFilePath()); if (!df) continue; if (! m_fileCache.contains(f.absoluteFilePath())) { m_fileCache.insert(f.absoluteFilePath(), df); } const QStringList mimes = df->value(mimeTypeKey).toString().split(QLatin1Char(';'), QString::SkipEmptyParts); for (const QString &mime : mimes) { int pref = df->value(initialPreferenceKey, 0).toInt(); // We move the desktopFile forward in the list for this mime, so that // no desktopfile in front of it have a lower initialPreference. int position = m_defaultAppsCache[mime].length(); while (position > 0 && m_defaultAppsCache[mime][position - 1]->value(initialPreferenceKey, 0).toInt() < pref) { position--; } m_defaultAppsCache[mime].insert(position, df); } } } XdgDesktopFile* XdgDesktopFileCache::load(const QString& fileName) { XdgDesktopFile* desktopFile = new XdgDesktopFile(); Q_CHECK_PTR(desktopFile); if (desktopFile && desktopFile->load(fileName)) return desktopFile; delete desktopFile; return nullptr; } void loadMimeCacheDir(const QString& dirName, QHash > & cache) { QDir dir(dirName); // Directories have the type "application/x-directory", but in the desktop file // are shown as "inode/directory". To handle these cases, we use this hash. QHash specials; specials.insert(QLatin1String("inode/directory"), QLatin1String("application/x-directory")); // Working recursively ............ const QFileInfoList files = dir.entryInfoList(QStringList(), QDir::Files | QDir::Dirs | QDir::NoDotAndDotDot); for (const QFileInfo &f : files) { if (f.isDir()) { loadMimeCacheDir(f.absoluteFilePath(), cache); continue; } XdgDesktopFile* df = XdgDesktopFileCache::getFile(f.absoluteFilePath()); if (!df) continue; const QStringList mimes = df->value(mimeTypeKey).toString().split(QLatin1Char(';'), QString::SkipEmptyParts); for (const QString &mime : mimes) { int pref = df->value(initialPreferenceKey, 0).toInt(); // We move the desktopFile forward in the list for this mime, so that // no desktopfile in front of it have a lower initialPreference. int position = cache[mime].length(); while (position > 0 && cache[mime][position - 1]->value(initialPreferenceKey, 0).toInt() < pref) { position--; } cache[mime].insert(position, df); } } } QSettings::Format XdgDesktopFileCache::desktopFileSettingsFormat() { static QSettings::Format format = QSettings::InvalidFormat; if (format == QSettings::InvalidFormat) format = QSettings::registerFormat(QLatin1String("*.list"), readDesktopFile, writeDesktopFile); return format; } XdgDesktopFileCache::XdgDesktopFileCache() : m_IsInitialized(false), m_defaultAppsCache(), m_fileCache() { } XdgDesktopFileCache::~XdgDesktopFileCache() { } void XdgDesktopFileCache::initialize() { QStringList dataDirs = XdgDirs::dataDirs(); dataDirs.prepend(XdgDirs::dataHome(false)); for (const QString &dirname : const_cast(dataDirs)) { initialize(dirname + QLatin1String("/applications")); // loadMimeCacheDir(dirname + "/applications", m_defaultAppsCache); } } QList XdgDesktopFileCache::getAppsOfCategory(const QString& category) { QList list; const QString _category = category.toUpper(); const QHash fileCache = instance().m_fileCache; for (XdgDesktopFile *desktopFile : fileCache) { QStringList categories = desktopFile->value(categoriesKey).toString().toUpper().split(QLatin1Char(';')); if (!categories.isEmpty() && (categories.contains(_category) || categories.contains(QLatin1String("X-") + _category))) list.append(desktopFile); } return list; } QList XdgDesktopFileCache::getApps(const QString& mimetype) { return instance().m_defaultAppsCache.value(mimetype); } XdgDesktopFile* XdgDesktopFileCache::getDefaultApp(const QString& mimetype) { // First, we look in following places for a default in specified order: // ~/.config/mimeapps.list // /etc/xdg/mimeapps.list // ~/.local/share/applications/mimeapps.list // /usr/local/share/applications/mimeapps.list // /usr/share/applications/mimeapps.list QStringList mimeDirsList; mimeDirsList.append(XdgDirs::configHome(false)); mimeDirsList.append(XdgDirs::configDirs()); mimeDirsList.append(XdgDirs::dataHome(false) + QLatin1String("/applications")); mimeDirsList.append(XdgDirs::dataDirs(QLatin1String("/applications"))); for (const QString &mimeDir : const_cast(mimeDirsList)) { QString defaultsListPath = mimeDir + QLatin1String("/mimeapps.list"); if (QFileInfo::exists(defaultsListPath)) { QSettings defaults(defaultsListPath, desktopFileSettingsFormat()); defaults.beginGroup(QLatin1String("Default Applications")); if (defaults.contains(mimetype)) { QVariant value = defaults.value(mimetype); if (value.canConvert()) // A single string can also convert to a stringlist { const QStringList values = value.toStringList(); for (const QString &desktopFileName : values) { XdgDesktopFile* desktopFile = XdgDesktopFileCache::getFile(desktopFileName); if (desktopFile) { return desktopFile; } else { qWarning() << desktopFileName << "not a valid desktopfile"; } } } } defaults.endGroup(); } } // If we havent found anything up to here, we look for a desktopfile that declares // the ability to handle the given mimetype. See getApps. QList apps = getApps(mimetype); XdgDesktopFile* desktopFile = apps.isEmpty() ? 0 : apps[0]; return desktopFile; } ukui-session-manager/ukui-session/idleadbusdaptor.h0000644000175000017500000000302413637016220021520 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2012 Razor team * Authors: * Christian Surlykke * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef IDLEDBUSADAPTOR_H #define IDLEDBUSADAPTOR_H #include #include "idlewatcher.h" class IdleDBusAdaptor : public QDBusAbstractAdaptor { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "org.gnome.SessionManager.Presence") public: IdleDBusAdaptor(IdleWatcher *mIdleWatch) : QDBusAbstractAdaptor(mIdleWatch) { connect(mIdleWatch, &IdleWatcher::StatusChanged, this , &IdleDBusAdaptor::StatusChanged); } Q_SIGNALS: void StatusChanged(uint status); private: IdleWatcher *mIdleWatch; }; #endif // IDLEDBUSADAPTOR_H ukui-session-manager/ukui-session/xdgmacros.h0000644000175000017500000000334613622453036020354 0ustar fengfeng/* * Copyright (C) 2014 Luís Pereira * 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ #ifndef QTXDG_MACROS_H #define QTXDG_MACROS_H #ifdef __cplusplus # include # ifndef QTXDG_DEPRECATED # define QTXDG_DEPRECATED Q_DECL_DEPRECATED # endif #endif #ifdef QTXDG_COMPILATION #define QTXDG_API Q_DECL_EXPORT #else #define QTXDG_API Q_DECL_IMPORT #endif #if defined(QTXDG_COMPILATION) && defined(QTXDG_TESTS) # define QTXDG_AUTOTEST Q_DECL_EXPORT /* Build library,tests enabled */ #elif defined(QTXDG_BUILDING_TESTS) /* Build the tests */ # define QTXDG_AUTOTEST Q_DECL_IMPORT #else # define QTXDG_AUTOTEST /* Building library, tests disabled */ #endif #ifndef QL1S #define QL1S(x) QLatin1String(x) #endif #ifndef QL1C #define QL1C(x) QLatin1Char(x) #endif #ifndef QSL #define QSL(x) QStringLiteral(x) #endif #ifndef QBAL #define QBAL(x) QByteArrayLiteral(x) #endif #endif // QTXDG_MACROS_H ukui-session-manager/ukui-session/xdgautostart.cpp0000644000175000017500000000552613622453036021453 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * Copyright: 2012 Razor team * 2019 Tianjin KYLIN Information Technology Co., Ltd. * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "xdgautostart.h" #include "xdgdirs.h" #include #include #include #include /** * The Autostart Directories are $XDG_CONFIG_DIRS/autostart. If the same filename is * located under multiple Autostart Directories only the file under the most * important directory should be used. * * When multiple .desktop files with the same name exists in multiple directories * then only the Hidden key in the most important .desktop file must be considered: * If it is set to true all .desktop files with the same name in the other * directories MUST be ignored as well. */ XdgDesktopFileList XdgAutoStart::desktopFileList(bool excludeHidden) { QStringList dirs; dirs << XdgDirs::autostartHome(false) << XdgDirs::autostartDirs(); return desktopFileList(dirs, excludeHidden); } XdgDesktopFileList XdgAutoStart::desktopFileList(QStringList dirs, bool excludeHidden) { dirs.removeDuplicates(); QSet processed; XdgDesktopFileList ret; for (const QString &dirName : const_cast(dirs)) { QDir dir(dirName); if (!dir.exists()) continue; const QFileInfoList files = dir.entryInfoList(QStringList(QLatin1String("*.desktop")), QDir::Files | QDir::Readable); for (const QFileInfo &fi : files) { if (processed.contains(fi.fileName())) continue; processed << fi.fileName(); XdgDesktopFile desktop; if (!desktop.load(fi.absoluteFilePath())) continue; if (!desktop.isSuitable(excludeHidden)) continue; ret << desktop; } } return ret; } QString XdgAutoStart::localPath(const XdgDesktopFile& file) { QFileInfo fi(file.fileName()); return QString::fromLatin1("%1/%2").arg(XdgDirs::autostartHome(), fi.fileName()); } ukui-session-manager/ukui-session/ukuimodule.h0000644000175000017500000000275613637016220020550 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef UKUIMODULE_H #define UKUIMODULE_H #include #include "xdgautostart.h" #include "xdgdesktopfile.h" #include "xdgdirs.h" class UkuiModule : public QProcess { Q_OBJECT public: UkuiModule(const XdgDesktopFile& file, QObject *parent = nullptr); void start(); void terminate(); bool isTerminating(); int restartNum; const XdgDesktopFile file; const QString fileName; Q_SIGNALS: void moduleStateChanged(QString name, bool state); private slots: void updateState(QProcess::ProcessState newState); private: bool mIsTerminating; }; #endif // UKUIMODULE_H ukui-session-manager/ukui-session/CMakeLists.txt0000644000175000017500000000162513637016220020746 0ustar fengfeng# Populate a CMake variable with the sources set(ukui-session_SRCS main.cpp sessionapplication.cpp modulemanager.cpp ukuimodule.cpp idlewatcher.cpp sessiondbusadaptor.h idlewatcher.cpp idlewatcher.h idleadbusdaptor.h xdgautostart.cpp xdgautostart.h xdgdesktopfile.cpp xdgdesktopfile.h xdgdirs.cpp xdgdirs.h xdgmacros.h ../tools/ukuipower.cpp ../tools/powerprovider.cpp ) #find_package(QT5XDG ) find_package(PkgConfig) pkg_search_module(GSETTINGS_QT REQUIRED gsettings-qt) include_directories(${GSETTINGS_QT_INCLUDES}) find_package(PkgConfig) add_executable(ukui-session ${ukui-session_SRCS} ${PROJECT_SOURCE_DIR}/data/music.qrc) target_link_libraries(ukui-session Qt5::Widgets Qt5::Core Qt5::DBus Qt5::Multimedia KF5::IdleTime ${GSETTINGS_QT_LIBRARIES}) #${GSETTINGS_QT_LIBRARIES} install(TARGETS ukui-session DESTINATION bin) ukui-session-manager/ukui-session/modulemanager.h0000644000175000017500000000462313637016220021200 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2010-2016 LXQt team * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301, USA. **/ #ifndef MODULEMANAGER_H #define MODULEMANAGER_H #include "ukuimodule.h" #include #include #include #include #include #include #include #include class XdgDesktopFile; class IdleWatcher; typedef QMap ModulesMap; typedef QMapIterator ModulesMapIterator; class ModuleManager : public QObject, public QAbstractNativeEventFilter { Q_OBJECT public: ModuleManager(QObject* parent = nullptr); ~ModuleManager() override; void startProcess(const QString& name, bool detach); void stopProcess(const QString& name); void startup(); // Qt5 users native event filter bool nativeEventFilter(const QByteArray &eventType, void* message, long* result) override; public slots: void logout(bool doExit); void timerUpdate(); Q_SIGNALS: void moduleStateChanged(QString moduleName, bool state); private: QTimer *timer; void startProcess(const XdgDesktopFile &file, bool required); void constructStartupList(); bool autoRestart(const XdgDesktopFile &file); ModulesMap mNameMap; QList mAllAppList; bool mWmStarted; bool mTrayStarted; QEventLoop* mWaitLoop; XdgDesktopFileList mInitialization; XdgDesktopFile mWindowManager; XdgDesktopFile mPanel; XdgDesktopFile mFileManager; XdgDesktopFileList mDesktop; XdgDesktopFileList mApplication; XdgDesktopFileList mForceApplication; private slots: void restartModules(int exitCode, QProcess::ExitStatus exitStatus); }; #endif // MODULEMANAGER_H ukui-session-manager/ukui-session/modulemanager.cpp0000644000175000017500000002547513637401111021540 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2010-2016 LXQt team * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301, USA. **/ #include "modulemanager.h" #include "ukuimodule.h" #include "idlewatcher.h" #include #include "xdgautostart.h" #include "xdgdesktopfile.h" #include "xdgdirs.h" #include #include #include #include #include #include #include /* qt会将glib里的signals成员识别为宏,所以取消该宏 * 后面如果用到signals时,使用Q_SIGNALS代替即可 **/ #ifdef signals #undef signals #endif #define SESSION_REQUIRED_COMPONENTS "org.ukui.session.required-components" #define SESSION_REQUIRED_COMPONENTS_PATH "/org/ukui/desktop/session/required-components/" ModuleManager::ModuleManager( QObject* parent) : QObject(parent) { constructStartupList(); } ModuleManager::~ModuleManager() { ModulesMapIterator i(mNameMap); while (i.hasNext()) { i.next(); auto p = i.value(); disconnect(p, SIGNAL(finished(int, QProcess::ExitStatus)), nullptr, nullptr); delete p; mNameMap[i.key()] = nullptr; } } void ModuleManager::constructStartupList() { const QByteArray id(SESSION_REQUIRED_COMPONENTS); QString window_manager; QString panel; QString file_manager; QString wm_notfound; if(QGSettings::isSchemaInstalled(id)) { const QGSettings* gs = new QGSettings(SESSION_REQUIRED_COMPONENTS,SESSION_REQUIRED_COMPONENTS_PATH,this); window_manager = gs->get("windowmanager").toString() + ".desktop"; panel = gs->get("panel").toString() + ".desktop"; file_manager = gs->get("filemanager").toString() + ".desktop"; wm_notfound = gs->get("windowmanager").toString(); }else{ //gsetting安装失败,或无法获取,设置默认值 qDebug() << "从gsettings 中或取值失败,设置默认值"; window_manager = "ukwm.desktop"; panel = "ukui-panel.desktop"; file_manager = "peony-qt-desktop.desktop"; } QStringList desktop_paths; desktop_paths << "/usr/share/applications"; desktop_paths << "/etc/xdg/autostart"; bool panel_found = false; bool fm_found = false; bool wm_found = false; const auto files = XdgAutoStart::desktopFileList(desktop_paths, false); for (const XdgDesktopFile& file : files) { if (QFileInfo(file.fileName()).fileName() == panel) { mPanel = file; panel_found = true; qDebug() << "panel has been found"; } if (QFileInfo(file.fileName()).fileName() == file_manager) { mFileManager = file; fm_found = true; qDebug() << "filemanager has been found"; } if (QFileInfo(file.fileName()).fileName() == window_manager) { mWindowManager = file; wm_found = true; qDebug() << "windowmanager has been found"; } if(fm_found && panel_found && wm_found) break; } //配置文件所给的窗口管理器找不到.desktop文件时,将所给QString设为可执行命令,创建一个desktop文件赋给mWindowManager if(wm_found == false){ mWindowManager = XdgDesktopFile(XdgDesktopFile::ApplicationType,"window-manager", wm_notfound); qDebug() << "windowmanager has been created"; } QString desktop_phase = "X-UKUI-Autostart-Phase"; QString desktop_type = "Type"; //设置excludeHidden为true,判断所有desktop文件的Hidden值,若为true,则将其从自启列表中去掉 const XdgDesktopFileList all_file_list = XdgAutoStart::desktopFileList(true); for (XdgDesktopFileList::const_iterator i = all_file_list.constBegin(); i != all_file_list.constEnd(); ++i) { const XdgDesktopFile file = *i; if (i->contains(desktop_phase)) { QStringList s1 =file.value(desktop_phase).toString().split(QLatin1Char(';')); if (s1.contains("Initialization")) { mInitialization << file; } else if (s1.contains("Desktop")) { mDesktop << file; } else if (s1.contains("Application")) { mApplication << file; } } else if (i->contains(desktop_type)) { QStringList s2 = file.value(desktop_type).toString().split(QLatin1Char(';')); if (s2.contains("Application")) { mApplication << file; } } } QStringList force_app_paths; force_app_paths << "/usr/share/ukui/applications"; const XdgDesktopFileList force_file_list = XdgAutoStart::desktopFileList(force_app_paths, true); for (XdgDesktopFileList::const_iterator i = force_file_list.constBegin(); i != force_file_list.constEnd(); ++i) { qDebug() << (*i).fileName(); mForceApplication << *i; } } /* Startup Phare: * Initialization * WindowManager * Panel * FileManager * Desktop * Application * */ void ModuleManager::startup() { qDebug() << "Start Initialization app: "; for (XdgDesktopFileList::const_iterator i = mInitialization.constBegin(); i != mInitialization.constEnd(); ++i){ startProcess(*i, true); } qDebug() << "Start window manager: " << mWindowManager.name(); startProcess(mWindowManager, true); qDebug() << "Start panel: " << mPanel.name(); startProcess(mPanel, true); qDebug() << "wait for ukui-settings-daemon start-up"; timer = new QTimer(); connect(timer,SIGNAL(timeout()),this,SLOT(timerUpdate())); timer->start(1000); } void ModuleManager::timerUpdate(){ timer->stop(); delete timer; qDebug() << "Start file manager: " << mFileManager.name(); startProcess(mFileManager, true); qDebug() << "Start desktop: "; for (XdgDesktopFileList::const_iterator i = mDesktop.constBegin(); i != mDesktop.constEnd(); ++i){ startProcess(*i, true); } qDebug() << "Start application: "; QFile file("/etc/xdg/autostart/kylin-nm.desktop"); for (XdgDesktopFileList::const_iterator i = mApplication.constBegin(); i != mApplication.constEnd(); ++i){ qDebug() << i->fileName(); if(i->fileName()=="/etc/xdg/autostart/nm-applet.desktop" && file.exists()){ qDebug() << "the kylin-nm exist so the nm-applet will not start"; continue; } startProcess(*i, false); } qDebug() << "Start force application: "; const QString ws = "ukui-window-switch"; XdgDesktopFile ukui_ws= XdgDesktopFile(XdgDesktopFile::ApplicationType,"ukui-window-switch", ws); startProcess(ukui_ws,true); for (XdgDesktopFileList::const_iterator i = mForceApplication.constBegin(); i != mForceApplication.constEnd(); ++i){ startProcess(*i, true); } } void ModuleManager::startProcess(const XdgDesktopFile& file, bool required) { QStringList args = file.expandExecString(); if (args.isEmpty()) { qWarning() << "Wrong desktop file: " << file.fileName(); return; } QString name = QFileInfo(file.fileName()).fileName(); if (!mNameMap.contains(name)) { UkuiModule* proc = new UkuiModule(file, this); connect(proc, &UkuiModule::moduleStateChanged, this, &ModuleManager::moduleStateChanged); proc->start(); mNameMap[name] = proc; if (required || autoRestart(file)) { connect(proc, SIGNAL(finished(int, QProcess::ExitStatus)), this, SLOT(restartModules(int, QProcess::ExitStatus))); } } } void ModuleManager::startProcess(const QString& name, bool required) { QString desktop_name = name + ".desktop"; QStringList desktop_paths; desktop_paths << "/usr/share/applications"; const auto files = XdgAutoStart::desktopFileList(desktop_paths, false); for (const XdgDesktopFile& file : files) { if (QFileInfo(file.fileName()).fileName() == desktop_name) { startProcess(file, required); return; } } } void ModuleManager::stopProcess(const QString& name) { if (mNameMap.contains(name)) mNameMap[name]->terminate(); } bool ModuleManager::nativeEventFilter(const QByteArray &eventType, void *message, long *result) { if (eventType != "xcb_generic_event_t") // We only want to handle XCB events return false; return false; } bool ModuleManager::autoRestart(const XdgDesktopFile &file) { QString auto_restart = "X-UKUI-AutoRestart"; return file.value(auto_restart).toBool(); } void ModuleManager::restartModules(int /*exitCode*/, QProcess::ExitStatus exitStatus) { UkuiModule* proc = qobject_cast(sender()); if(proc->restartNum > 10){ mNameMap.remove(proc->fileName); disconnect(proc, SIGNAL(finished(int, QProcess::ExitStatus)), nullptr, nullptr); proc->deleteLater(); return; } if (nullptr == proc) { qWarning() << "Got an invalid (null) module to restart, Ignoring it"; return; } if (!proc->isTerminating()) { QString procName = proc->file.name(); switch (exitStatus) { case QProcess::NormalExit: qDebug() << "Process" << procName << "(" << proc << ") exited correctly."; break; case QProcess::CrashExit: { qDebug() << "Process" << procName << "(" << proc << ") has to be restarted"; proc->start(); proc->restartNum++; return; // time_t now = time(NULL); } } } mNameMap.remove(proc->fileName); proc->deleteLater(); } void ModuleManager::logout(bool doExit) { ModulesMapIterator i(mNameMap); while (i.hasNext()) { i.next(); qDebug() << "Module logout" << i.key(); UkuiModule *p = i.value(); p->terminate(); } i.toFront(); while (i.hasNext()) { i.next(); UkuiModule *p = i.value(); if (p->state() != QProcess::NotRunning && !p->waitForFinished(2000)) { qWarning() << "Module " << qPrintable(i.key()) << " won't termiante .. killing."; p->kill(); } } if (doExit) QCoreApplication::exit(0); } ukui-session-manager/ukui-session/main.cpp0000644000175000017500000000575113630710752017646 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * Copyright: 2019 Tianjin KYLIN Information Technology Co., Ltd. * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #include "sessionapplication.h" #include #include #include #include #include #include #include #include void myMessageOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg) { QString logPath = QStandardPaths::writableLocation(QStandardPaths::ConfigLocation) + "/ukui-session/ukui-session.log"; if (!QFile::exists(logPath)) { return; } QByteArray localMsg = msg.toLocal8Bit(); QDateTime dateTime = QDateTime::currentDateTime(); QByteArray time = QString("[%1] ").arg(dateTime.toString("MM-dd hh:mm:ss.zzz")).toLocal8Bit(); QString logMsg; switch (type) { case QtDebugMsg: logMsg = QString("%1 Debug: %2 (%3:%4, %5)\n").arg(time.constData()).arg(localMsg.constData()).arg(context.file).arg(context.line).arg(context.function); break; case QtInfoMsg: logMsg = QString("%1 Info: %2 (%3:%4, %5)\n").arg(time.constData()).arg(localMsg.constData()).arg(context.file).arg(context.line).arg(context.function); break; case QtWarningMsg: logMsg = QString("%1 Warning: %2 (%3:%4, %5)\n").arg(time.constData()).arg(localMsg.constData()).arg(context.file).arg(context.line).arg(context.function); break; case QtCriticalMsg: logMsg = QString("%1 Critical: %2 (%3:%4, %5)\n").arg(time.constData()).arg(localMsg.constData()).arg(context.file).arg(context.line).arg(context.function); break; case QtFatalMsg: logMsg = QString("%1 Fatal: %2 (%3:%4, %5)\n").arg(time.constData()).arg(localMsg.constData()).arg(context.file).arg(context.line).arg(context.function); break; } QFile logFile(logPath); logFile.open(QIODevice::WriteOnly | QIODevice::Append); QTextStream ts(&logFile); ts << logMsg << endl; logFile.flush(); logFile.close(); } int main(int argc, char **argv) { qInstallMessageHandler(myMessageOutput); qDebug() << "UKUI session manager start."; SessionApplication app(argc, argv); app.setQuitOnLastWindowClosed(false); return app.exec(); } ukui-session-manager/ukui-session/xdgdirs.h0000644000175000017500000001441713622453036020032 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * Copyright: 2010-2011 Razor team * 2019 Tianjin KYLIN Information Technology Co., Ltd. * Authors: * Alexander Sokoloff cn> * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef QTXDG_XDGDIRS_H #define QTXDG_XDGDIRS_H #include "xdgmacros.h" #include #include /*! @brief The XdgMenu class implements the "XDG Base Directory Specification" from freedesktop.org. * This specification defines where these files should be looked for by defining one or more base * directories relative to which files should be located. * * All postfix parameters should start with an '/' slash. * * @sa http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html */ class QTXDG_API XdgDirs { public: enum UserDirectory { Desktop, Download, Templates, PublicShare, Documents, Music, Pictures, Videos }; /*! @brief Returns the path to the user folder passed as parameter dir defined in * $XDG_CONFIG_HOME/user-dirs.dirs. Returns /tmp if no $HOME defined, $HOME/Desktop if * dir equals XdgDirs::Desktop or $HOME othewise. */ static QString userDir(UserDirectory dir); /*! @brief Returns the default path to the user specified directory. * Returns /tmp if no $HOME defined, $HOME/Desktop if dir equals * XdgDirs::Desktop or $HOME othewise. If dir value is invalid, an empty * QString is returned. */ static QString userDirDefault(UserDirectory dir); /*! @brief Returns true if writting into configuration file $XDG_CONFIG_HOME/user-dirs.dirs * the path in value for the directory in dir is succesfull. Returns false otherwise. If * createDir is true, dir will be created if it doesn't exist. */ static bool setUserDir(UserDirectory dir, const QString &value, bool createDir); /*! @brief Returns the path to the directory that corresponds to the $XDG_DATA_HOME. * If @i createDir is true, the function will create the directory. * * $XDG_DATA_HOME defines the base directory relative to which user specific data files * should be stored. If $XDG_DATA_HOME is either not set or empty, a default equal to * $HOME/.local/share should be used. */ static QString dataHome(bool createDir=true); /*! @brief Returns the path to the directory that corresponds to the $XDG_CONFIG_HOME. * If @i createDir is true, the function will create the directory. * * $XDG_CONFIG_HOME defines the base directory relative to which user specific configuration * files should be stored. If $XDG_CONFIG_HOME is either not set or empty, a default equal * to $HOME/.config should be used. */ static QString configHome(bool createDir=true); /*! @brief Returns a list of all directories that corresponds to the $XDG_DATA_DIRS. * $XDG_DATA_DIRS defines the preference-ordered set of base directories to search for data * files in addition to the $XDG_DATA_HOME base directory. If $XDG_DATA_DIRS is either not set * or empty, a value equal to /usr/local/share:/usr/share is used. * * If the postfix is not empty it will append to end of each returned directory. */ static QStringList dataDirs(const QString &postfix = QString()); /*! @brief Returns a list of all directories that corresponds to the $XDG_CONFIG_DIRS. * $XDG_CONFIG_DIRS defines the preference-ordered set of base directories to search for * configuration files in addition to the $XDG_CONFIG_HOME base directory. If $XDG_CONFIG_DIRS * is either not set or empty, a value equal to /etc/xdg should be used. * * If the postfix is not empty it will append to end of each returned directory. */ static QStringList configDirs(const QString &postfix = QString()); /*! @brief Returns the path to the directory that corresponds to the $XDG_CACHE_HOME. * If @i createDir is true, the function will create the directory. * * $XDG_CACHE_HOME defines the base directory relative to which user specific non-essential * data files should be stored. If $XDG_CACHE_HOME is either not set or empty, * a default equal to $HOME/.cache should be used. */ static QString cacheHome(bool createDir=true); /*! @brief Returns the path to the directory that corresponds to the $XDG_RUNTIME_DIR. * $XDG_RUNTIME_DIR defines the base directory relative to which user-specific non-essential * runtime files and other file objects (such as sockets, named pipes, ...) should be stored. * The directory MUST be owned by the user, and he MUST be the only one having read and write * access to it. Its Unix access mode MUST be 0700. */ static QString runtimeDir(); /*! @brief Returns the path to the directory that corresponds to the $XDG_CONFIG_HOME/autostart * * If $XDG_CONFIG_HOME is not set, the Autostart Directory in the user's home directory is * ~/.config/autostart/ */ static QString autostartHome(bool createDir=true); /*! @brief Returns a list of all directories that correspond to $XDG_CONFIG_DIRS/autostart * If $XDG_CONFIG_DIRS is not set, the system wide Autostart Directory is /etc/xdg/autostart * * If the postfix is not empty it will append to end of each returned directory. * * Note: this does not include the user's autostart directory * @sa autostartHome() */ static QStringList autostartDirs(const QString &postfix = QString()); }; #endif // QTXDG_XDGDIRS_H ukui-session-manager/ukui-session/xdgautostart.h0000644000175000017500000000470513622453036021116 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * Copyright: 2012 Razor team * 2019 Tianjin KYLIN Information Technology Co., Ltd. * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef QTXDG_XDGAUTOSTART_H #define QTXDG_XDGAUTOSTART_H #include "xdgmacros.h" #include "xdgdesktopfile.h" #include /*! @brief The XdgAutoStart class implements the "Desktop Application Autostart Specification" * from freedesktop.org. * This specification defines a method for automatically starting applications during the startup * of a desktop environment and after mounting a removable medium. * Now we impliment only startup. * * @sa http://standards.freedesktop.org/autostart-spec/autostart-spec-latest.html */ class QTXDG_API XdgAutoStart { public: /*! Returns a list of XdgDesktopFile objects for all the .desktop files in the Autostart directories When the .desktop file has the Hidden key set to true, the .desktop file must be ignored. But you can change this behavior by setting excludeHidden to false. */ static XdgDesktopFileList desktopFileList(bool excludeHidden=true); /*! Returns a list of XdgDesktopFile objects for .desktop files in the specified Autostart directories When the .desktop file has the Hidden key set to true, the .desktop file must be ignored. But you can change this behavior by setting excludeHidden to false. */ static XdgDesktopFileList desktopFileList(QStringList dirs, bool excludeHidden=true); /// For XdgDesktopFile returns the file path of the same name in users personal autostart directory. static QString localPath(const XdgDesktopFile& file); }; #endif // XDGAUTOSTART_H ukui-session-manager/ukui-session/sessionapplication.cpp0000644000175000017500000001256313637401111022621 0ustar fengfeng/* * Copyright (C) 2019 Tianjin KYLIN Information Technology Co., Ltd. * 2014 Hong Jen Yee (PCMan) * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA * */ #include "sessionapplication.h" #include "modulemanager.h" #include "sessiondbusadaptor.h" #include "idleadbusdaptor.h" #include "idlewatcher.h" #include #include #include #define SESSION_DEFAULT_SETTINGS "org.ukui.session" #define QT5_UKUI_STYLE "org.ukui.style" void SessionApplication::InitialEnvironment() { QByteArray gdk_scale_QB; QByteArray qt_scale_factor_QB; if(gsettings_usable){ int gdk_scale; int qt_scale_factor; QDesktopWidget *desktop = QApplication::desktop(); qDebug()<< "Screen-height is"<height()<<",Screnn-width is"<width(); bool Hidpi = gs->get("hidpi").toBool(); qDebug()<< "Hidpi is "<get("gdk-scale").toInt(); qt_scale_factor = gs->get("qt-scale-factor").toInt(); }else{ int i = 1; if(desktop->height() >= 2000) i = 2; gdk_scale = i; qt_scale_factor = i; } //转换类型 QString qt_scale_factor_QS = QString::number(qt_scale_factor); qt_scale_factor_QB.append(qt_scale_factor_QS); QString gdk_scale_QS = QString::number(gdk_scale); gdk_scale_QB.append(gdk_scale_QS); }else{ //设为默认值 gdk_scale_QB = "1"; qt_scale_factor_QB = "1"; } //检查qt主题是否安装 const QByteArray qt_style(QT5_UKUI_STYLE); QByteArray QT_QPA_PLATFORMTHEME; if(QGSettings::isSchemaInstalled(qt_style)) { QT_QPA_PLATFORMTHEME = "ukui"; }else{ QT_QPA_PLATFORMTHEME = "gtk2"; } qDebug()<< "gdk_scale"<get("idle-delay").toInt() * 60; mIdleWatcher->reset(time); }else return; } void SessionApplication::registerDBus() { new SessionDBusAdaptor(modman); QDBusConnection dbus = QDBusConnection::sessionBus(); if (!dbus.registerService(QStringLiteral("org.gnome.SessionManager"))) { qCritical() << "Can't register org.gnome.SessionManager, there is already a session manager!"; } if (!dbus.registerObject(("/org/gnome/SessionManager"), modman)) { qCritical() << "Can't register object, there is already an object registered at " << "/org/gnome/SessionManager"; } int timeout; if(gsettings_usable){ timeout = gs->get("idle-delay").toInt() * 60; connect(gs,&QGSettings::changed,this,&SessionApplication::updatevalue); }else{ timeout = 5 * 60; } mIdleWatcher = new IdleWatcher(timeout); new IdleDBusAdaptor(mIdleWatcher); if (!dbus.registerObject("/org/gnome/SessionManager/Presence", mIdleWatcher)) { qCritical() << "Cant' register object, there is already an object registered at " << "org/gnome/SessionManager/Presence"; } } SessionApplication::SessionApplication(int& argc, char** argv) : QApplication(argc, argv) { const QByteArray id(SESSION_DEFAULT_SETTINGS); if(QGSettings::isSchemaInstalled(id)) { gsettings_usable = true; gs = new QGSettings("org.ukui.session","/org/ukui/desktop/session/",this); }else{ //gsetting安装失败,或无法获取,设置默认值 qDebug() << "从gsettings 中或取值失败,设置默认值"; gsettings_usable = false; } InitialEnvironment(); modman = new ModuleManager(); // Wait until the event loop starts QTimer::singleShot(0, this, SLOT(startup())); playmusic(); } SessionApplication::~SessionApplication() { delete modman; delete mIdleWatcher; //delete mSettings; delete gs; } bool SessionApplication::startup() { QTimer::singleShot(0, this, SLOT(registerDBus())); modman->startup(); return true; } void SessionApplication::playmusic(){ QMediaPlayer *player = new QMediaPlayer; player->setMedia(QUrl("qrc:/startup.wav")); player->play(); QObject::connect(player,&QMediaPlayer::stateChanged,[=](QMediaPlayer::State state){ player->stop(); player->deleteLater(); //delete player; qDebug() << "play state is " << state; }); } ukui-session-manager/ukui-session/xdgdesktopfile.h0000644000175000017500000003155513622453036021404 0ustar fengfeng/* BEGIN_COMMON_COPYRIGHT_HEADER * (c)LGPL2+ * * Copyright: 2010-2011 Razor team * 2019 Tianjin KYLIN Information Technology Co., Ltd. * Authors: * Alexander Sokoloff * * This program or library is free software; you can redistribute it * and/or modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * You should have received a copy of the GNU Lesser General * Public License along with this library; if not, write to the * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA * * END_COMMON_COPYRIGHT_HEADER */ #ifndef QTXDG_XDGDESKTOPFILE_H #define QTXDG_XDGDESKTOPFILE_H #include "xdgmacros.h" #include #include #include #include #include #include class XdgDesktopFileData; /** \brief Desktop files handling. XdgDesktopFile class gives the interface for reading the values from the XDG .desktop file. The interface of this class is similar on QSettings. XdgDesktopFile objects can be passed around by value since the XdgDesktopFile class uses implicit data sharing. The Desktop Entry Specification defines 3 types of desktop entries: Application, Link and Directory. The format of .desktop file is described on http://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html Note that not all methods in this class make sense for all types of desktop files. \author Alexander Sokoloff */ class QTXDG_API XdgDesktopFile { public: /*! The Desktop Entry Specification defines 3 types of desktop entries: Application, Link and Directory. File type is determined by the "Type" tag. */ enum Type { UnknownType, //! Unknown desktop file type. Maybe is invalid. ApplicationType, //! The file describes application. LinkType, //! The file describes URL. DirectoryType //! The file describes directory settings. }; //! Constructs an empty XdgDesktopFile XdgDesktopFile(); /*! Constructs a copy of other. This operation takes constant time, because XdgDesktopFile is implicitly shared. This makes returning a XdgDesktopFile from a function very fast. If a shared instance is modified, it will be copied (copy-on-write), and that takes linear time. */ XdgDesktopFile(const XdgDesktopFile& other); /*! Constructs a new basic DesktopFile. If type is: - ApplicationType, "value" should be the Exec value; - LinkType, "value" should be the URL; - DirectoryType, "value" should be omitted */ XdgDesktopFile(XdgDesktopFile::Type type, const QString& name, const QString& value = QString()); //! Destroys the object. virtual ~XdgDesktopFile(); //! Assigns other to this DesktopFile and returns a reference to this DesktopFile. XdgDesktopFile& operator=(const XdgDesktopFile& other); //! Returns true if both files contain the identical key-value pairs bool operator==(const XdgDesktopFile &other) const; //! Returns false if both files contain the identical key-value pairs inline bool operator!=(const XdgDesktopFile &other) const { return !operator==(other); } //! Loads an DesktopFile from the file with the given fileName. virtual bool load(const QString& fileName); //! Saves the DesktopFile to the file with the given fileName. Returns true if successful; otherwise returns false. virtual bool save(const QString &fileName) const; /*! This is an overloaded function. This function writes a DesktopFile to the given device. */ virtual bool save(QIODevice *device) const; /*! Returns the value for key. If the key doesn't exist, returns defaultValue. If no default value is specified, a default QVariant is returned. */ QVariant value(const QString& key, const QVariant& defaultValue = QVariant()) const; /*! Returns the localized value for key. In the desktop file keys may be postfixed by [LOCALE]. If the localized value doesn't exist, returns non lokalized value. If non localized value doesn't exist, returns defaultValue. LOCALE must be of the form lang_COUNTRY.ENCODING@MODIFIER, where _COUNTRY, .ENCODING, and @MODIFIER may be omitted. If no default value is specified, a default QVariant is returned. */ QVariant localizedValue(const QString& key, const QVariant& defaultValue = QVariant()) const; //! Sets the value of setting key to value. If the key already exists, the previous value is overwritten. void setValue(const QString &key, const QVariant &value); /*! Sets the value of setting key to value. If a localized version of the key already exists, the previous value is overwritten. Otherwise, it overwrites the the un-localized version. */ void setLocalizedValue(const QString &key, const QVariant &value); //! Removes the entry with the specified key, if it exists. void removeEntry(const QString& key); //! Returns the entry Categories. It supports X-Categories extensions. QStringList categories() const; //! Returns list of values in entry Actions. QStringList actions() const; //! Returns true if there exists a setting called key; returns false otherwise. bool contains(const QString& key) const; //! Returns true if the XdgDesktopFile is valid; otherwise returns false. bool isValid() const; /*! Returns the file name of the desktop file. * Returns QString() if the file wasn't found when load was called. */ QString fileName() const; // //! Returns an icon specified in this file. // QIcon const icon(const QIcon& fallback = QIcon()) const; // //! Returns an icon for application action \param action. // QIcon const actionIcon(const QString & action, const QIcon& fallback = QIcon()) const; // //! Returns an icon name specified in this file. // QString const iconName() const; // //! Returns an icon name for application action \param action. // QString const actionIconName(const QString & action) const; //! Returns an list of mimetypes specified in this file. /*! @return Returns a list of the "MimeType=" entries. * If the file doens't contain the MimeType entry, an empty QStringList is * returned. Empty values are removed from the returned list. */ QStringList mimeTypes() const; //! This function is provided for convenience. It's equivalent to calling localizedValue("Name").toString(). QString name() const { return localizedValue(QLatin1String("Name")).toString(); } //! Returns an (localized) name for application action \param action. QString actionName(const QString & action) const; //! This function is provided for convenience. It's equivalent to calling localizedValue("Comment").toString(). QString comment() const { return localizedValue(QLatin1String("Comment")).toString(); } /*! Returns the desktop file type. @see XdgDesktopFile::Type */ Type type() const; /*! For file with Application type. Starts the program with the optional urls in a new process, and detaches from it. Returns true on success; otherwise returns false. @par urls - A list of files or URLS. Each file is passed as a separate argument to the executable program. For file with Link type. Opens URL in the associated application. Parametr urls is not used. For file with Directory type, do nothing. */ bool startDetached(const QStringList& urls) const; //! This function is provided for convenience. It's equivalent to calling startDetached(QStringList(url)). bool startDetached(const QString& url = QString()) const; /*! For file with Application type. Activates action defined by the \param action. Action is activated * either with the [Desktop Action %s]/Exec or by the D-Bus if the [Desktop Entry]/DBusActivatable is set. * \note Starting is done the same way as \sa startDetached() * * \return true on success; otherwise returns false. * \param urls - A list of files or URLS. Each file is passed as a separate argument to the executable program. * * For file with Link type, do nothing. * * For file with Directory type, do nothing. */ bool actionActivate(const QString & action, const QStringList & urls) const; /*! A Exec value consists of an executable program optionally followed by one or more arguments. This function expands this arguments and returns command line string parts. Note this method make sense only for Application type. @par urls - A list of files or URLS. Each file is passed as a separate argument to the result string program.*/ QStringList expandExecString(const QStringList& urls = QStringList()) const; /*! Returns the URL for the Link desktop file; otherwise an empty string is returned. */ QString url() const; /*! Computes the desktop file ID. It is the identifier of an installed * desktop entry file. * @par fileName - The desktop file complete name. * @par checkFileExists If true and the file doesn't exist the computed ID * will be an empty QString(). Defaults to true. * @return The computed ID. Returns an empty QString() if it's impossible to * compute the ID. Reference: * https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#desktop-file-id */ static QString id(const QString &fileName, bool checkFileExists = true); /*! The desktop entry specification defines a number of fields to control the visibility of the application menu. Thisfunction checks whether to display a this application or not. @par environment - User supplied desktop environment name. If not supplied the desktop will be detected reading the XDG_CURRENT_DESKTOP environment variable. If not set, "UNKNOWN" will be used as the desktop name. All operations envolving the desktop environment name are case insensitive. */ bool isShown(const QString &environment = QString()) const; /*! This fuction returns true if the desktop file is applicable to the current environment. @par excludeHidden - if set to true (default), files with "Hidden=true" will be considered "not applicable". Setting this to false is be useful when the user wants to enable/disable items and wants to see those that are Hidden @par environment - User supplied desktop environment name. If not supplied the desktop will be detected reading the XDG_CURRENT_DESKTOP environment variable. If not set, "UNKNOWN" will be used as the desktop name. All operations envolving the desktop environment name are case insensitive. */ bool isSuitable(bool excludeHidden = true, const QString &environment = QString()) const; protected: virtual QString prefix() const { return QLatin1String("Desktop Entry"); } virtual bool check() const { return true; } private: /*! Returns the localized version of the key if the Desktop File already contains a localized version of it. If not, returns the same key back */ QString localizedKey(const QString& key) const; QSharedDataPointer d; }; /// Synonym for QList typedef QList XdgDesktopFileList; class QTXDG_API XdgDesktopFileCache { public: static XdgDesktopFile* getFile(const QString& fileName); static QList getAllFiles(); static QList getApps(const QString & mimeType); static XdgDesktopFile* getDefaultApp(const QString& mimeType); static QSettings::Format desktopFileSettingsFormat(); /*! Return all desktop apps that have category for their Categories key * Note that, according to xdg's spec, for non-standard categories "X-" * is added to the beginning of the category's name. This method takes care * of both cases. * See http://standards.freedesktop.org/menu-spec/menu-spec-latest.html#desktop-entry-extensions */ static QList getAppsOfCategory(const QString &category); private: static XdgDesktopFileCache & instance(); static XdgDesktopFile* load(const QString & fileName); XdgDesktopFileCache(); ~XdgDesktopFileCache(); void initialize(); void initialize(const QString & dirName); bool m_IsInitialized; QHash > m_defaultAppsCache; QHash m_fileCache; }; #endif // QTXDG_XDGDESKTOPFILE_H ukui-session-manager/LICENSE0000644000175000017500000005763613625071224014574 0ustar fengfeng GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS ukui-session-manager/CMakeLists.txt0000644000175000017500000000312613630163002016300 0ustar fengfengcmake_minimum_required(VERSION 3.1.0) project(ukui-session-manager) # Find includes in corresponding build directories set(CMAKE_INCLUDE_CURRENT_DIR ON) # Instruct CMake to run moc automatically when needed set(CMAKE_AUTOMOC ON) # Handle the Qt rcc code generator automatically. set(CMAKE_AUTORCC ON) # Create code from a list of Qt designer ui files set(CMAKE_AUTOUIC ON) include(GNUInstallDirs) # Enable funcion names and line numbers even for release builds add_definitions("-DQT_MESSAGELOGCONTEXT") # Find the QtWidgets library find_package(Qt5 COMPONENTS Widgets Core Multimedia REQUIRED) find_package(Qt5LinguistTools) find_package(KF5IdleTime) find_package(Qt5DBus) # For debug: cmake -DCMAKE_BUILD_TYPE=debug set(CMAKE_CXX_FLAGS_DEBUG "-g -O0") set(CMAKE_C_FLAGS_DEBUG "-g -O0") # i18n set(UKUI_TRANSLATIONS_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_DATAROOTDIR}/ukui/translations) add_definitions( -DUKUI_TRANSLATIONS_DIR="${UKUI_TRANSLATIONS_DIR}" ) if (NOT DEFINED UPDATE_TRANSLATIONS) set(UPDATE_TRANSLATIONS "No") endif() # To create a new ts file: lupdate -recursive . -target-language en_US -ts translations/en_US.ts file(GLOB TS_FILES "${CMAKE_CURRENT_SOURCE_DIR}/translations/*.ts") # cmake -DUPDATE_TRANSLATIONS=yes if (UPDATE_TRANSLATIONS) qt5_create_translation(QM_FILES ${CMAKE_SOURCE_DIR} ${TS_FILES}) else() qt5_add_translation(QM_FILES ${TS_FILES}) endif() add_custom_target(translations ALL DEPENDS ${QM_FILES}) install(FILES ${QM_FILES} DESTINATION ${UKUI_TRANSLATIONS_DIR}/${PROJECT_NAME}) add_subdirectory(ukui-session) add_subdirectory(tools) add_subdirectory(data) ukui-session-manager/README.md0000644000175000017500000000040713625100137015022 0ustar fengfeng# ukui-session-manager * ukui-session: Launched at the beginning of UKUI sessions and responsible for launching and monitoring all other components constituing the sessions. * ukui-session-tool: Deals with 'logout', 'shutdown', 'reboot', 'hibernate' and so on. ukui-session-manager/NEWS0000644000175000017500000000016613624705115014252 0ustar fengfeng### ukui-session-manager 2.0.0 Migrate from gtk to Qt. ### ukui-session-manager 1.0.0 Fork from mate-session-manager ukui-session-manager/data/0000755000175000017500000000000013637016220014455 5ustar fengfengukui-session-manager/data/images.qrc0000644000175000017500000000051413622453036016435 0ustar fengfeng images/icon-suspend.png images/icon-switchuser.png images/icon-logout.png images/icon-reboot.png images/icon-shutdown.png images/background-ukui.png ukui-session-manager/data/org.ukui.session.gschema.xml0000644000175000017500000000417513637016220022041 0ustar fengfeng 1 GDK_SCALE gdk 1 QT_SCALE_FACTOR qt false HIDPI button 60 Logout timeout If logout prompt is enabled, this set the timeout in seconds before logout automatically. If 0, automatic logout is disabled. 5 Time before session is considered idle The number of minutes of inactivity before the session is considered idle. 'ukwm' Window Manager The window manager is the program that draws the title bar and borders around windows, and allows you to move and resize windows. 'ukui-panel' Panel The panel provides the bar at the top or bottom of the screen containing menus, the window list, status icons, the clock, etc. 'peony-desktop' File Manager The file manager provides the desktop icons and allows you to interact with your saved files. ukui-session-manager/data/powerwin.qss0000644000175000017500000000261013622453036017062 0ustar fengfeng/* 挂起按钮 */ QWidget::hover#suspend{ border-radius: 6px; background-color: rgb(255,255,255,50); } QLabel#suspend_icon{ background:url(:/images/icon-suspend.png); background-repeat:no-repeat; } /*切换账户按钮*/ QWidget::hover#switchuser{ border-radius: 6px; background-color: rgba(255,255,255,50); } QLabel#switchuser_icon{ background:url(:/images/icon-switchuser.png); background-repeat:no-repeat; } /*注销按钮*/ QWidget::hover#logout{ border-radius: 6px; background-color: rgb(255,255,255,50); } QLabel#logout_icon{ background:url(:/images/icon-logout.png); background-repeat:no-repeat; } /*重启按钮*/ QWidget::hover#reboot{ border-radius: 6px; background-color: rgb(255,255,255,50); } QLabel#reboot_icon{ background:url(:/images/icon-reboot.png); background-repeat:no-repeat; } /*注销按钮*/ QWidget::hover#shutdown{ border-radius: 6px; background-color: rgb(255,255,255,50); } QLabel#shutdown_icon{ background:url(:/images/icon-shutdown.png); background-repeat:no-repeat; } /*取消按钮*/ QLabel#cancel{ border-radius: 3px; background-color: rgb(255,255,255,50) } QLabel::hover#cancel{ border-radius: 3px; background: rgb(255,255,255,100) } /* 电源对话框中间区域 */ /*QWidget#PoerWinCenterWidget{ background: rgb(0, 0, 0, 0) } QWidget#PowerWin{ background: rgb(0, 0, 0, 150); }*/ ukui-session-manager/data/CMakeLists.txt0000644000175000017500000000035513607542647017236 0ustar fengfengfile(GLOB SESSION_FILES_IN ukui.desktop) install(FILES ${SESSION_FILES_IN} DESTINATION "${CMAKE_INSTALL_PREFIX}/share/xsessions") install(FILES org.ukui.session.gschema.xml DESTINATION "${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas") ukui-session-manager/data/qss.qrc0000644000175000017500000000013313607542647016005 0ustar fengfeng powerwin.qss ukui-session-manager/data/shutdown.wav0000644000175000017500000065765613622453036017104 0ustar fengfengRIFF_WAVEJUNK_T]Ufmt DdataT]!?5dY3 oJ&K_`<$ p q T  v<4_?W #a% U'"(#*$*~%*%a*7%f)W$'#&f!#m@!aX(!Z K >ibI/gy׳Xӆuդ̦ҦƲͦĩˬiz%?PIń'ęaK55&#"DÊwİũ _c Ģ'Ɗ|ȑʧ;ӗ0h۝ܱߖ.uDK\+ A4Soh/koZ0 6 W E$Kycn+!{#%!I(#*%,'V/)1+4-6/82.;4Y=5I?7A9Ba:Cp;D^G~>G>H>yHC?H?sI@Iu@iJ@J'AK[AIK~AWK|ANKtAK:AJ@1J_@uI?H>gG=F6=4;n34:42817/l6.)5-3,,2+]0)].'2,%)#c'!$j"Wo0 n U<1=]TYw`C`ߣܻ>*zՖP?Ghƭ'p¡G`ʼŞĚÓ$êW¤״-uUײFe/e2if)N|Ip&Ƹ¦Át|Bn% ǁǟ]3Ă͘~ȣЁdҩ;"*jڿGsޱF+s;K%[M*qg Z  \ QL "%'!E*)$,w&/(m2 + 5@-7j/9c1,<=32>4@6A7EC09DR:E.;F;1GsL4M<2:Y18/7Z.E5,3d+1).0z(p.&,%*$)g"'' %#L TCG X0V * .nKw-  -[sut}uZOD*D[ݫԂ۩R1ֻͺU̠ˑɖȝіDZЄkYG%YɗLgXȬsbmǢ'|ɼvAd^~̩XæJƱȸч:̩լCױؼҧjAI" V L jNVAMa4n |S Q) T"$w&/ (!*t#w,%q.&h0@(z2)4+6N-8.:0<(2_>3@5AT6Cv7;Dg82E09E9FH:G:zG:GK;5H;H;H;I"<4ID3<1:'08b.6,4*`2):0K'.y%+#f)!&\$!I-Snmw|! v | 8vV>!bDM!YQ(iשzbNsѮل/ظͫTbjǡƐĔϿéήc!9LP]tȒlй)PƥE ~p 8ŏaƈTúuw:彀ؾC̿žÍ(łkƖҀIˑB-UؗѴӐCւާz%z{pqq]D\I)Q[GsY(?s4~ S 4\  i"$v' )"H,#.%0y'2!)4*6l,8.:/< 1>2u@4Be5C6PE7F97H,:I1;J_M/>zM6>dM$>HM>M=L=Lz=~LN=UL&='L'{*!Z-#0%2'5)T7+9C-x;._=D0$?1@2BA4(D5E6eG7HA9Jt:.L;M<(O=P>Q?R@SwAT#BeUBU$C|VpCVCVCVCVvC2VCUBTBT[AS@R?P>O=BN0<<.9i,6F*3(1%-f#* '$0!qA4 i + ;~*ut6$8?dT+tՀ>?i ڷ֛7H…ΧCͧ˷B׸ xLƢurVYvw{⩅ASf/ç󻞧?3{ټ6`?( j$G_;´O;uܳſ3Dzm1zSŷlȶ٫ܑOޑ֥e4Z[,Z94}L O   w .>"%A )C,,"r/$2&5W)8+;-> 0fA72 D;4F86@T_@VAWB@YDZE[E\F]G^,H_HN`LI`IxaJalJ'bJEbJAbJblJa'J.aI`0I_zH^G]Fe\E[DYCWB,VA6T?R=OB!(p %9!` =3k ,EԬBʶȉ`ņŽRѻ\̹Ϸa0}nIn' 1ج@wשcͧPA˼oSVi¼0cQ0 w)EK%€ү:!ŹQKw浽ȗILۼιlϩОaҶƉ 6Lظͼ+Й҅bՇ؅ڢݲkX?_xay TLLOp  s  Q@f3"X%g(ap+ U.":1$3&6(X9*;,q>.@k05C!2kE3G]5I6K[8M9wO;7QfU?)W@`XAiYOB[ZC[C[C.\DD\D\D\D\D\uDh\LD\C[C[5C`ZBYBXfAW@V?BU>S=KR"+(~=%! o 2 ` !;}HB2I(ngܐa_IEJ{nˍه#kԝz7ZR4Unf˞EűZ۬u%s3j֨\ϨNӨew7[dY53Dreżc`NJtɝ=-ͬ{yS.<,3};dɏؓ1OШ{rf#`l݇Fy ,5=|d~C 5 4 e  *vK"{%) ,,? */h"2$4&7(C:`*<5,;?-A/C:1F2*HL4*J54L,7N8O9Q ;GS4W5?X@Y@ZsA[A \hB\B\B]C]B\B\B_\lB[B\[AZ!AZ@0Y?HXS?JW>V=T$ ~ S~ _ 9m  G"$c'>),yp. 0!3/#?5$p7-&9';)=l*?+kA,C.D0//F,0G1H1I2Kh3K4L4M57N5N5YO@6O61P6}P6P7P&7P)7P7xP6P6O@6N5?ND5PM4XL3+K'3I?2HY1GI0E;/C .B,(@+,>$*<(92'7%95$2R"70 -*"( K%e""x!tvYK    sG1|j]^i8NyvZEk ѫOO܁ʣv(bٗUT׮fVz˽&Ӻoϻ<\;гfω ΦYD #Ϳ͸µDrݶe/Ϲ}lH\xҗuھP&6Պ)(׋72Q}ڱɰۍ܇Iޑϳ߰ӟ-'g{_g /f3 p]Ns=Y2C .    `+!h#3&)+m".0 2'"5#G7%\9z&b;'O=)*?N*@{+B,DD-E.?G/H}0IX1K2 L2M^3M3N]4O4O5O?5)A e;dH$w) X   n 2-O"!.$&i)+.0j02>!4" 7$?9l%.;&='>)_@*A*1C+zD,Eg-F$.G.Hq/I0J0oK1/L1L1MY2M2gN2N3N3N3N2+N2M_2M1ULw1zK0~J<0hI/=H.F-E -FD!,B++FA%*?)='<&:n%8$5"3.!%1.+C:)re&# }^E   |\S?GDYqGvcN/ߩ IڇգA ΨZ̘ʒSɬۻۗAڄěلؓ^ذGc]ʾ1վUF԰ԌԀԋԷ@!՗brHvי^71؀¢&ÏٰڞŧڌT۞۽ȿɂHaޭK1>Ox\:ӆըI܈s8@~;#6NYC!6H {[  @,  ,@y{;!Nk#%'),,.{0 23%!5L"b7U#8W$n:B%; &=&J>'g?\(b@(SA)B*B*C*2DR+D+JE,EC,F,jF,F,F,F,F,MF,EK,sE+D+D+?C*QB)PAL)4@(?'='~<(&;E%9B$7E#>6)"w4!20.g,}*A(G%#L!*p3 Y  V1 m)|\kj.W ox}]Dܢb%Pӽѳз' ~@&>!'?'(@'@%( A\(SA(A(A(A(A(A(A(A(A(vA(%AN(@(!@'j?5'>&=%&<%;$z:$.9F#7j"N6!4 3g1f/U-!+)'l%l#9!_Kd x K D e^aom/IqLs;,VץBՐ}>ЁΎ5ͨn#-s&ğ Lçڕ4sK٧h&ῪԿԿ濬 Dؐbhڙj]*fƛ3HZݐʉ.b<(+<6Etܙd#fOa OEp;F0#U   s  =Q&2x "K$&(*Q,r.y0%23=5| 6f!86"s9 #:#<$>=N%X>%z?&v@?'zA'ZB_(:C(CU)D)7E*EQ*Et*F*F*Ez*EM*bE*D)@DW)vC(B[(A'@*'?&u>%3=%;1$[:C#8T"7E!O54 l3 |1i/I-M+(C&#5!b*pn   F L}0xWj}PT?WQYޑ.A$=ֳvԛҕ#ѡϱ4aʥo slwݟXrgøPd%|+½گ{ںeڱ"gےðܶgZ;ƥݘ.yȬgGu߈ːI KЬ ҏ{?qw~rڒ;ܧHv)DVt$z/w6*t6D F z; ( a ?~ L!"~$&()/+H-j/wQ134o6 8!9g":=#B<$|=$>`%?%g@o&A&A/' B|'B'B'B'B'B'B'GB'A<'nA&@&B@D&?%>X%=$<1$;#:"M9 "73!i6J 4V3G-13I/<-++)L&$+"9Z\dg Ve  7Y  Cx*G v $/dzmYfkr[ڟi>+Ռ 6њpcFvr ˨T Tɝ qWߧ7߄/vk$s2ߙ=߽Wq%ɒ^߾5t'p̚5 Δ#'iWԚ'_/U۹Uݢލ}|xaE*2./Mr]5| : k\\  ( ;< Hq [ ` qm8wlj_!C#%&(=*+G-.s/E81`2w3Cu4k5iK6$7k 7 8K!O9!9"l:L":"8;";";#;#;#;"b;";":Z"):"9!8\!H8 q7t 65_43!g2}/1/{.#,Hr+])b(hN&Tu$F"  ~YU8  3 _  DMG[[1N }nWQ[Tf^sޓYݵESؚCԧҍ њj41σ.4ͮa| C_ ̴˖fIP'Dur˭ICg͝oe`P2l35ԚN@yעo[1YoC';Z+;[+sf_3l4+ / ;N  T ^6lG!#%`'')*|,./0aB2#345K708 19%!':!:+";"h<"=U#o=#=#>##>##>#>#=#=#K=q#<*#x<";"h;P":!$:!m9(!8 72 65 4^q320 /'-:+7)5'(0&6$$" p.Xk   p / ~ c UG|z=N6Aht9s42 k՞y?/z-Λ|˄Zɻ%g#E߿ǜߑǎ߆߀ǃߎNjߩǗǵ<ߌWAɇ*eT%̢ά?ё)Ht ;סz,O48^R| $|U!^&A\n-|Z   se T @@ /O q} ["$%p')*Z+5Q-./c023D4 5^56b7n8O 19 9!n:g!:!F;!;";";"; "I;!:!d:T!9! 9 :8! [7g6c5|L4'341~0D/-(X,O*e)sb'p%d#L!#g., U < :  $z!tz#v0vDh)4r+aUQVU?r߄6޷-Jv#= ׭E2jճLOӇ)'ѐ*N TϝqVH,/ 1;kUρаd&@aѱ=K[ӗWb!4֭-ضI܌4@zߺ&zMm-^9f2 m( _H2> Ugy  ] %  R  m =`9Y"\ G"z#P%o&'(G$*B+Y,.W-J.H(//:0^1 2c2!33A3w@4}44444l4(43TB3 21S(1X0hf/h.NT--,*V)T(& v%8#ZT"q ,RwsaR -   h P `5 2n4vd`@\co:(N,b߬]:Gܨـ*vRֈ%ջgxҁK*ѶOѓ!zeZVWbr9э|ѳ"GӔ.Ԋk[IؾMl ݬaFH[(2F|#{q`1[WRY?SaZiweHqx~  c 3  m , ~ v:bPv3 !#$&'U(8*r+,,-.W/b0O 11 2I223*3=3C3*3322J2a15110_/#/V.%o-,o+^*&)8'&5%#)B"V v(={   - _    {dC.$ '9G\|f#4,rB6 /ݎo[Y[ڽg?{ذ>ֿZTԘ'F>Ҋ^@1C5^Ҝc*|t,7ֲ{$bث[3Uf[pݘ4gU {nd?(A\D F   <   N ~ l1T2G"!k"f#)$ &:'H(J)C2*+K+,5p-*..bf//0{ 1E1q111r1N110j0G//.m.*--iB,r+*)('Qa&%#/e"g oB J }      rV/9-!EK]m~vySwZQ0f]' pD:@pb ^إV-֭`.ԝil6 }AӧҔ҉҆҆ҏҙ$ӯI0A}Գo<~֓HyرP#&ڦ! ܸA.XߊA3Jx%uU ~nAc&  g y pa U 3 K$  nhi1 &!"$bE% z&'W()*h+8,,i-U.+.}d///09~0e001$1+1 100b0T 0./5/.b. i-,B++T"*$)B(&%NZ$"! #KcOx  <| qp h T H ,1FZsy\RC=CDHcUuQ0Gu }N7ݹl? e  7 vD j  1k :  6 kcSr sW!"V"#&4$$%M)&&O'R'@(((CG)wu))))u)O)|)X(2( *('`'g&(u&%p%P$?$#?"!\! O ng !V `  * $\  > A  )5 Cm(Q0<_qpl8)nXH<U! If߇ޡC6yv/}ڡZ,d'ع؟ؐ||vvkpiynw؏آbO{ڍ -JܗmhZP9a89GWkTQ]xH}_bpS9&>Yk~Sy<x  j x[R * P  6 s E>p(%: pE!3""##$%K&&T'0( (S9))*"t*W*+!+>+7+0++**g*\*-)P)(w\(1'D'&9%%%dI$Y#_R";!( s7]|  4   . e  ic5RcJ<-&Q*'/MKfQOD+T5%RDg}?d=\49FR2rD8*5 j&_ jXyɶ׹չZ̋}6}9FҊ%iG]}nH I4ɚ ,mňJƲHu=+UރrszVjjJ.F q Fx&+/3 T7X#<&*DY+K/Q3kV6Y8[9Zg9/X7Vu6&U5T5S5R4R4O2J/C +<5&4!T-&pb- ' %C B#<485݈4ҺPϦʺK׺Ա]%H8Ћ*J_Z]ϲΝVό&,zפnRUIcz(kc=fmm 2%_+1M9"B'Jo-Q1+WP5[T8`:b<&e/>g?%lBpvE2tGv}IyJJzKyIKwIBt H"rFpEmDlkBiAgg@c>`^:W6qQ2sJP.C);H%-6!10+#$} n7QJ092<%p?`6@ʆhǜYGF9Xۿ.R-źmڊ߶ƶ(đT=H…Ę 7ɸy̠DZ!zwުϵIGh-tJ $J+0c 5#~:&(?)B+_Eu-]G.H/I/G.E-Cf,A+ ?U);K'8`% 6#Z2#!g-'>!~dy> h :~.߶T٘$#w*wɳذ4֯ڰzΚyǷЕҠlԿY. ܡX-a m fG !)0n7!=%D)HJ-P1Ub5[69a=g@kCoFGsHBvtJJxKyLE{M|N~Om~OP~O}O|NyAMKvJrHn@FejCep@`O=[B:%V6qO2G-@(8#/5&vLK< ,~Fd]dBBMݣµؙ3Otą#Ə8=~=:0Ҳw7>RCղOpF3LK(\#r2+ɾ݊Дz"%Y~z  ^ <&-B3"i8&9=9)kA,D.G/I51L2?NL4O95}P5P 6P5N4K2CHO0D.@U+ٵ,&0ޞF:?-ȹgIjĠ}VxөJ܇(iP " ). N3# 7+&:(>`+B-F$0H1JJ3K3wK3J2oH1F0 E/GCS.A(-?+=,*\9'4_$. :)$#*  '^ l#ܡ%8!LCƝ1ӺzP̎ٮYlch: X<UχEiƒՠ ͉uׁn2I?,zA*/ "t5%P+2B $9$@[)IG7.\N3TX7ZI;_>adAHhDkFn I'rHKQu|M$x`O~zQ}|bR}JS}bS|RE{QgyP=w*OtMqKnIk.Gf D`\@Z2,A.oD0F2HH23H3Hv3G2dF1D0CB/r?-n<*9(5%I0"+c%5< G 2OvAߤrO/N޾ȓUr1ѿ(˖{t4Ǣ35m+ͤ4d(Q{y =+ǭg1VV-+2֐{Cٯb5V7VOu = A$+!3!:>&@*F3/[M3S7Y<8_@dCzi)Gm4JuqLtN6wPyrRv{S|T}U~ VS~U/}9Ua{TxZRuGPrMmJhGcD^s@Xa#S:yLe5:EO0=+96%.k ,'' .@_O  aLtlFV=<iVDHGʧQ{c}Ț\xɶ'햽ǵv/ ҝԺӡ%3`ʗ(lѰs՜ȸZ޶)vj ;  ,,$(3,."0$3&6(M8^*q:+<->.?/@[0@D0|?/=.;N,=8>*U5(( 2%`.#d** <&!!  {uCvEz޽ MύڍֹS^e,@͞OͰH+&/ěöÌ'+ܱ`u;Sͳв҇G(TCԩަFBm} / I!;)0_!7o&>&+9D/)J3O8nU,I`HEZAT8Gd3@).8(0"(` 0BH &[y5R lAK҇Z{dRֺJv5)I#-_ޕ гTK/?Hy/&ÅG(pB[:Wqej Z %x_Xop$f) .#r25'^6'*9,]<.<>/? 1@1yAj2A2A2,A(2?F1$>/z;-C8+4(U0%+"&p!2mi rkE@&9+7pߙvؔeѕ /綰бԯ*/Ӭ]m46}TlXY<Лǂ]ثң J$GB2d y b _'N/F!6&=+dD 1J5'Q:V>Z\BOaFfSJjMnP[rSuVTx'XkzY{Z|[7}\}[b|[{Z-y5YvuWsBUpRkdOgKaG[CU??OH:|HJ5kA0 :*2$*ll#=- +VQؾcӜέn8ɭYxomdۜȵҙE7(fjV|}ҹ `ijĴ~wwsѶ* ۑE6e|{@Ju w1_ 3&0+"/F&4)7Y,;.=1j@2RBb4C{5D 6Df6D6yCH5A4?_2=R09-6+2'-$`)@!% ^7%BP !*>9 7)Ϊڶf֑d德p83<Ŀ׫s9_*OCnʻڻ~kεƦҤ"%ٖ߮E6>C $L,37%9*@/G4FN:T>cZvC_GdrK:iN%mQpTt_W"wYy[{~]h}^N~|_~_}:_p|4^Yz\wZGtX9pUkQfM`IIfZgDS*?1L9D3<-4',[!$XtQ v+y%* ٗJBٵ1հOžʤaflZ.3uܟ%&ϝrbzQ ]]!%e\ Pǫ˸iĎc1տۈU4&NnmqJ} .D  &*a#A/&E3)6,9@/f<*1>26?a3?3?3>2=1:0a8.75+1(-%?)!"$w^Y& v qxs^kNte۲#Su~ʺ֪Ƥþο̹% Ɲĕ*氻׿s~0ܿ( Se@ 72ԖPA"";B"Kr L ] ye'D.h"5';,B2MH6eN;FTW@YD^HcL!hP lF̯jǫ@T^7wA;8@= V}T=M֬־ܴM6ҽ̻‚ǦQ ҕY> %z,`R :S" 'E! +$.b'1)m4,6 .8/:1;1a<2m<2;2:18/t6-3+0 )C-R&)K#% -!p u (-0x@ӣ ǣҜ]^~޷ńsƱsdnvR˿*?·ĺBToqsNsiT[,=o}e 1<"*1%8+@17G7N =qTABOZG_dKqdHOhRWlUxoSX rZftb\)v]ww^,x_ex_w_v^ uB]rc[o(Yl~VhuS~dP_fLZiHUDOt?I:^Cn5<,0 6*H/N%("rV\ ;?nN 27f1ܰWM LjOL Y/õM̴~*4 b9(GP/¾˄lӟ,Ҝ܉4L$SF(r_ (*S"&!*$-5'/_)1G+3,x54.6+/k7/70=7/@6.4-2+0)9-^')$u&!"'-w P \ 69|]l܊}ٿG#,Wо®86ȽƁď o߲K[`qSi7EzNj#j:ͲȻЅ͠ԮGk0,.eACO^ vH( : &7-#3)4:J.;@F3 F68Kxi#&#8*%-F(/|*1`,3-5/6/o6<0=60k5_/4=.Q2,0*r-(c*%'"#q# ?(/8m  1 3Sg e~Wߵب{Ґl;°׿}ɨɻ$a, Z©츨-佥dB ˸͏ΫԢӤ݋ W 1; Z&+a#I1(6,;1@f5E9|J=N:ARD;VGmYqJr\L_UOakQcESeTf-VgW[hpW:hrWgVfVdTbS`*Q]NZ4L#W#I,SEN#BJ'>E9?=5:0K4+t.&(!"  KzvsF`H̻̔Wdreز˽ z1JM|^{ӮͺذHž 56êJ43ĕ@'і)%kR $&gC \mJ3"S |%"'$)&+@(Z-).*W/Y+/+t/v+.*l-)+#()Y&&'($W$!F!WsyR t  Mo 6L$*;hߔ1UԧШ CtŠÊ˕ɣƄxͺÔӺ€bÖ0_ѿȍʈU9ΞG_wwi7 K !H([ e /eT$K*#0 (5,#;1j@l6E:JS?\OCSGXHK[NN_Q0bETdnVfK#>ɶq͇|n֘&HiCAIR q 4yk"!%# (&)'U+(k,)O-*-%+-?+o-*,**((&g&$# " jA]<2 #@0.M9`g:1qhϰ̢3/϶HUʬɳ#- ǨZȲ.Oʶư˭aN~͉TӃ;f۵߸r)oJ   a % +$0I)4-91>5{B9F=JANERaHUVKXN-[;P]R^eS_zT`?UaUEaU aU@`+U^S\LRZPWMzTJPGMDHd@D< @8h;I4o6/I16++m&t&! ]y O .UhA]8VVIm0շJJՏɷ|ƝR{Hջ-鸠mxZEÑMm>qͺʛ\u٬o@M)9)Y9o?$7 x ^j'k E"!#"$#%$%&=%r&%i&|%&"%$%O$##"j!uh%DI 3 "i}o*1?: -όkȨk?¡"rżOrůH$*i ͦ}Ӑԥiڞ&bf|F|H  Wq!&"G,&a1+\6G0;4?8D<"H@L^DOGSJVMXRP5[R!]_T^U_V\`sW`W`W_AW^EVk]T\[SXPU.NR9K*OG=KFDF`@BM<>08934/0T+G+&Z&b"T!#n 1yeVDgqڲpصdy}Нŝ²Č|ĹV;wj XPP]| UʲK}Є+ֿڜYޓ  9C=GAJELNHQK_TXNVPXRZ8T[U\XV3]Vf]W]VA\VZT Y$SVQ-TN7QKMHMJ6ElFAOB=>99b54 120,Z+'j&P#!a  o !+Iz (z ޚ߲۰iBB{SÉA LX ,?HxO>>uɛɿ̖̲?7ֿّ[V@4MVhfgxlf|]l y _gU !""$#%$%$&%;&$%#$P%"!$N!"D CEsc6 i % dFmr(AZ%^M&]Dހ۾VրxіG]\hϰ˨7&ǩ ǵUp0NLJƫ`nȟȀ=>̃bLݟe9cK-!%V#6#  *1HF!D&c#+(/,40>84G<8@ѡэϤϒ˓́ʍ˅ȉʙqʗȧe/Vβ̥p΁eОӱ1Ն0 %Z(bHn t  !;?=T1s<6m_sQACY8  6 O : (U()Ov Mߝ޺ ~ږR;Viһ!C϶͑X̘8ST̬F#EF̷ɒqʩ΀ёοӓҏ{YXlށۯ.}MUC_~6 rEQv %`%7))"--01458]9C;?$A CCEMFHHJJ8ML,ONPJO*R PR]P^S)P&S|ORXNEQLOJMH6KEvHBZE?AM8o:4L602,-S(9)$$J tAeU EcH-?[qQ:_m,Ӛ<Ͷ<̍ ˚!̅ɔ1{ɤet#Ҡ-vؙKl +f/ ( 7S, P  n;;3E/j0f{X(kOE  9Svj*7%y}UK9܋.BHv*OuЅ;JF>uɨ͝ɻ͖ɦ`ʆ8˳c%ӪոԗڨV݋T܋T/7 Lh|h* _.2 5!U$%a(*Y,h.?0236{7q::=="A,@C{BtFoDHFeJmGKvHMGIMIrNININDIMSHL GKqEICG|AE?B<6@9%=693z6>02,-/?)I+%b'!U#7bb[ _kM8dF.Rgߞ ڌpf%oZ\GӶaC{i̔:͸ң`Ѫ&e1_bgܿ٨?pV 'd0_\7U  Rm2*Du1=}  %= owJ{b@0~[$Mx">xCnqۜ؏qc2օuGE@ќRЇ˯ϩ/ ϾϨY[ʯ3G&ӾpϢmѽح:=܂}TWcJV*:m wnKeSC !#$7''*|*-(-0/v3(2'6486b; 9=;@<BE>C_?D7@E@F?AGwAOGvA\G5A G@rF?qE}>D=jB-;o@492>6;4!9,2m6/3,07*-R'Y*D$&+!#HX 9U s OaKH> Q8޶+ܹH@؜׻d. Rgӗӓ,ڑ)Dډ<܁uކW!g-6/yV]pU l   IJ\R$e//.S+ / )^ h Jf /W\yA|: V2wwlݑ ۽}`ќeП$#:͠Ңg/Ǹy̆fΐ<ַЋzh|sPD&d4vB3@Zfe r 2 C`x{ ##q'1'0+X*.]-92/0528c5};7!>9@;B_=D>CF?G@HAwIAIBJAIfARI@dHz?&G>Ee5K!!%%)d(-+1.5T1\83b;S6<>8@:PCG?6I@JAKB?LaBL>BpLAK*A1K7@J>H^=F;Do9B7\?4[<19.5+2(t.~%*B"&""W/CQ@_ v `&d7tN)% ?~{Yrk,ܥ,SحzbtHԬbٝټPI!\ݽDZؙNUݡ6v0gy=Kx^E5!j A f \ \ M   u c - + 3 . A 4 R y  ~  11!;| <O$ Ve=ntO`=JiۛԖڑْL<*@ѳcڅHۀUܫԍޠׂrKVݚ"{kst~,9 N}" &#k)_&,)/+2-5'08+2:3=~5>6@7A8C9D@:D:OE:vE:!2zGsQ,Z*Gk!A1vڀ;IDߔzޫԄݘRw^ݏԔކդkt߃|؜eX7_2^ w-h:52' d  { W ,  `  *&o&t>   o U   =^Y_D`;L$(H7tv!5ݕ4=طޜ֟,էۥۑjگϩنυMϨNٔg 'O޳sQ]^ݞ* +bL:cL<HhDQ V i.gB_Y8E3#7'"*R%.';1-*04^,7h.9A0;1>h3@4A5B6 DE7D7E7E7E7UE6D6qC4 B3`@2j>P0=!g"L%M)?",$/&2(n5*8,a:.|0?1FAd2dB 3?Cw3C3D3DM3C2B1A0p@/>G.<,:*f8 )5'3$E0"I-] -*'#/ 7Roj  | )=\' K )Y>VABh^7QOs?EL'y"v B#%{8bݬrbd(_j 0h>zD  \r  j #  , <   h  T *  f W ] /?  'HguL][j\%Ph ޺܁7ZNZyOղ%p:݀Ѹ ьݾРݹ9[Ҍz;ԙaUP}=1MJ~Ta+7 ) t!oZ!%Kj( +".%1&m4(7*W9 ,t;e-L=.>/<@I0XA04BT1B1C1C;1B0A/@.?->,/<*:T)7'J5%2#/o!,>)&#^M _ n -S  h>+O bhr!ߏ:[K2oٶ$7׮֨F9؂Ycu;޸q&tcs#_ Y\Efjn X    a [+ 8  M   Bl    e  p7  i'\&KB;!(TF_AS~ݖۄ~ؔ8TW( ߪcU!߄~һӦԭ"Gۖ5ކ h=e5KAo $  OZ ?$'&*E!-X#0<%v3 '5(T8$*c:o+D<,=z--?D.G@."AL/Ax/ B/B2/A.A-? ->,+=*a;T)Z9'7&4+$29"D/9 d,m)\&:# Jf[ 7  TmF!~n;|w&)ޝvܗ۾ ؍X-)|tٴچ};݉޶nOy1JX2@*FQV', `  ` d    rN  &t (N  VS | j w . Fw1P(;hM; YFݯJܛڪ2=j՗fӞ^W2>_Ҽ6)Ծ67< ڹ&d42A{E"X@x< z  |!  ?n#&),!/#v2H%4&L7I(W9)4;*<+>G,3?,@L-@-A-AD-@,@",?O+=B*K<):'80&[6$3"f1 .+(%"{M}2W <  g?( w+TaH'7PS'zA@aش[5)/ۨo܆ݓhߤ""\Shh*8C0F~, 7| ;- s   {     h  .& G O`-  .p""OKXs{je?*j)/3Y޸ܰ=n*+>b+?+?+?o+?*>`* >)<(b;n'9%&7$5 #B3z!0!.`+(%"hg I @ !  qm]hh*cU @&&ۄڬySpLّSۯݒuށߗpi:ab0[cA\'B[ \ 5  % U& N  W 0{ j| rR 2 t  !  ~k0'!kcbg$(?߲kݾj@טx-ӣWӗDXxF#2֯ M zI:0 7$MHxfMuhO 8  &5n!$'*-n e0"2#&5$/7 &9 ':';(=1)=)>)>)>)>>)=(=';&:%8$6K#4!29 '0-*(5%!>":C;EOGTG` Ef ?i : t0 t/*0=Mx4vK2R=dCoܡ&ZڠڊڳTjܱ~lo04'Ng3K}D;f~+~jp5  m h$  A  b     [ l ] [  _jH4UNWS|y&U'9 4jߪ޸z Sدmn֘/XԿԷS{ վ֝ؕt8"^ o@7S54k(@Ql $ ZN #')C,[/| 1!4:#6e$7^%r98&:&;t'<'a=(=%(='='<'#*6!4 1/j,`*'1$Y!~% 5 <2 B KK fSbu-_)wfQCw5m* bjL8ݫQ0$ۧڞڴ_F7ݜWaI7Li_K.;C[m~ a?F(BW M78P T E+ h  zD     5  W ]h, ;  MsdKS0Pc q+Aި_[6ٯ&"מ=Cps4֢;qney۷ߝA_LR} r?dWZ < _a 4 #m&:(+H. 0y 2!4"6#Q8$9K%:%;>&@"ziL&1$ $ c  ;o ] . 1 9T y_ 5 S w #$-c n' io H~a(_?4d=G"b@aWn9߃ݶOG٦ל:2Qձ4;[w4U&SݤC] WVn3 9pY|Z  / ~."H% '*EC-/1M 3b!5X"77#8#9R$:$(;$;%;$h;$:$:q#9"7!I6 42405.W+G)6&#6!+]o ;  ,Q p A gi qu}5L#~$ݵ܎dvZܐ%ݥC:e'>4 dWX ,   C G    2 <  C ? T \^ BpTKJw0I}tfpI~( _6NKގ(uڃjfY֥ՙբ"֛@//YR$3qah%U\Gi  2   4E}N!A1$ ') @,.02 4 #6!n7k"8"g9Q#:#v:#:#f:7#9")9)"'8q!6 t53l1,/-o9+(l6&#7 R?  ; 'R  ',4metcslB5vYbuRݏhX!NX8ݗCj&*frP@=9HcYE47D dS2]Z  i i  k @    y b m J LW L%i66Dv@II\JݘFX T<ףx^fqs֓L؏]Paoޖu\vOS PbKzI z b W &,Norq EM#&z(>+W-/135 \6"!~7!Y8 "9M"p9`"9G"m9"8!@8!<7P 6w43j+1E#/,*0I(%2-# lT6   TX  cN.p0gXD_- KSkNXߙI%COޣ ߨHDM~v"z\Ajt  ~( 5 jX7 s e   H -eM < QK M>ug'-[!lOL@Xcf`TcrzyMܡڄت#c/5!D8׋Gv9B;,{jZ=I]iN59{  M | I er"*%'B*P,.0~24^Z5 l6 W7 7*!o89!80!v8 7 U7a6Q:53A2y0h.-d,$*'U%", k& rO  -`  t@^U[?wjc{$A@S޿ީt޼?ߤP=Pr_)A-X& /8Rn4YuE U A \IW K s m| zh Z- SQ}i9 > PF bL8 kg04{V+ K*y]ߘiCRܹ;(RڼqN .׽׽!wٖ[1[4 LiX|P%8%yO$ H.Uvm> & =W H A)V pz#&Ey(*,.02u^3!{4X56@x6^6R6A65?43Z20%/I-?+)\&{$ "4F\ S - [ U _ dvlfAOBy@sBQcL%ߵ 6k!^vl;$N2 "=ZqwIr% <   @& B Z ?  I68 M u1 {d=~Rp%V[Xq3#wS K`ݸ\2fۺYHحرGnN`ݷjm3HgW=a r"  ~ +yGO ";/%'),'-#/"1x2\3p4B$5555hm5432C1y/0}.,W*/(d&$>!5k"   y2 T I 0b_JvsEQ*1>bIIa5qS*gL:&P9 lF42J&cz d/zr :^   p! |= V ?  qO c . oJ sJ; Q3Viy2Oަ܏۴]d)a0Dٓ ڍ4K<'OC\M  q  ?OC!m$&H )w%+ -.bJ012>3F444444:3~;20/- ),7*#(%A#^!/tW n } e R 4 A\@&Vt'KnB 'fMhXgz:DqW[d JoPiI!:EFv][lG.TYz ?7 }  A$ ME ` G & Jg 8 ~ * .3{:Y#'zh^@Vl_dh]DsWeSbhڬ?eJ7Mvp*"۲V2 FD_"?9_exU}gI>) g 3 D >5 K v H c UV     & '*6Tuu~lfh8^bu\*!XuDK,߱((;ݫe@ۦzemGs`ڜ?W$`_.@9Qn$ d} 5   P 9_/Z"$+&U(m*cq,A-;/W0'>11x222{22*@1W0./.-]X,Y*U(.&$"ve (iU  @ zI  wQD:bV)i#xow 1d/uz4vy[(=x*VRD \. 9~ x 8 & _ $ el  $ < 5 - mC   &% HSQACg) a< jr@|nS-ݶ@ yۣzdkڎg,ܫA}%5T*x4r; }$9~n  N  { J ;     a Qs  x U% q xEqO5Z; 3lY&DFur2Z߳0ݢ%:jۑ\dJToF۲ \܇5>tߡwGHqe1JYd V{M>_   }"  UW hBF#!d#%'(m)&+,-n./d01n1v1C100>/!.5,Ue+_)X(1%&$ "+Pq  JL G & a<LRk(xHZ'v+i:dh[;w^x|/VbY H '0{8+..e P  q    ~i       ."   Nk   V{V/zN9Fv F+@)uZEDDWތܷ0r T W 3 l  X l e    rx';.DMnwL56J A Gyq3_߽80޺pQ]ܱۥ(R$X[s; }} F@gzJ]  Js  =6p!#$%F'S<)6*+-Q..K/Q/d/O/ 6/.'-,+5*('7%N#XI!< V d  M _ } <Z!z |9|wh"dxyqC^{L8 8q~\$_ xvmm}vj$^1 C\]^qb#^7@ ` xt  J  1 m _  g N%  @? x y ]  7;"1$A^Yl~W-7y%!!IVE&@[}z%ݹ܁_\7\>njܪYr&߯5yez;2`bmjw/7y<e  j  B'E!,#E,%l&|(i*>b+{,e-).\./0//\.$.~V-^,$4+>)S_(9&"$ #!T# OL  w n , 2ZO2<m0V}Rdf"&7O}9BVlGONMX0oz8W3 H_Wpx| nzW* = H 4 #  td  9 ` e +_  '{ h i %W K kj*_A@cw}+T40u jMmRF߲1|n*IݠYޣJX[HYRuKs9>nWB!  o^  /M\X &"l$_& (~)v*8+,R-"....:.W-,8+*) (l&t$C" Bmj > !  ?v A ^ vYC*;2V^E?DFsx>a3HhJyq^uB   ]  @ S   8 ?  1  O  ^ WJ  ,j=,UG5Ul%S!&j)Yd*elNܬܢܷS>ݭBxA%A!'|1VbZ'6 V X  9`*| R"$%t'(2*O+:,--J-h$.U .'-.-L~,+v* #)'&h$"S 0|WH) `  x~ X $ -TdYICWbL89#40QG z{D$#%CPXuE3UG/hqq1U{P ^$Qg<W;d .   o    #   m 9 M N =  3a:#sU 2fMBhys{R7XAKߊ%޴xPEDMC݆ H߈VDZO07.|-!i`1E  [ 5 ;qQt~!o# :%.&)P()*w+d,e-e---@-:,,%+U*~(['n%C$X"q _|t[ @  *  7j B EYuJ{HF$ 4Kl',VUEfO-'iz 3!5ec\(Ep0Bmy Q  % \ `) L S <  o  # w : ,  =GD[ 2cA)}BoZ7QLd\ k_3߸u[ lqm_n'hM!}u%cxS$%|: 3S  P0*@ "M$jC&x'Y(%*+V+h, ,<-+-,B,-+*)i('~%#q"!: KYI;f#j  l  l~ [ n=$wV .xa>oM-a o}5i47Fl\Ej%/C g ! t Q $  ,L ~  n 1 C S  "   -!0^\m,`y9fgP+%e1 Lg-nZRްt}ݱ-qU./Yq6l#h?b@P9/ O [( ME=oYe FD"$%'a(z~))o*4+*+}=,,s,u?,++B*F>)k (j&V/%!#! *"=8 3  2  ,y X(L0(&7e2Tv3 \h%/v^`m9=r>yH>)qVoqXP%yl^ @lwV {d = h ; m 7 y N z  g`   $  F [G02ir%qU~y&H|cG$OkwU7?rE[~*ߖHT3@ޚߚrFm dP+ \M #!J6 y j R . i2f !w#%&'()*6++ + ++>+*)('R&$=#O!  {  e zQg\ETJHU[pp0c=iTg3Gta ImdbmCAE*Z~xkM*\4{l^ 9 O ,    J W  H M : / m K p ~n%Nk0=skn+y9X+$_(l+6=޻ާu޳-Xߦ.!3D?\< ~A|w n  S . \~+$4E9 !"7_$N%J'3( )i)*? *t <+x F+M + **D)%C(O)'K%3k$"-!^o}oX D  +  }n{m/vv30L?TveK'DV[[P^9c;W#?5u\2oah; h  |   x ~   R / * s  ol/n@ W{ aZ v?^oxstt7 +3sZPߔ'bMS߆HDV V)Ic]f+_ .5Zk|Zvhhrgq [ P , }&_Bhh 0"p#%i&es'o(,)9 ) E* * * d*e *h)N('&[%#dn" NGeP|~2   h  F& 4M@4'e4i Q],)2n/9ex8>;cA]fD$Pjd'bYH b w % : . 7  s u V N  NG sM h7UKl/4]hN:>Mmy2 }D h^q't"u},f{A_02==kkU`H2MD/QQ=X S 6 E ,  [W^n!#j$%&d' z( ) )!)3!)!) X)E ((#' &$v#!sb /7JXfZ t 3   wP/(-hF9LB&_@o5KQ1W|7!Nb ^_fXW5/l x 9 P E G  { /  v 4  # g S o [ 3}` nS(]HTt_7r :1_ILJߦߤ*'fJ`QX[}zQ;F&! x%.m;Cc G < 5,  8m]TG'  I"#$%&J ' Q(6!(l!)!+)[!(!( ( e'G&kw%mI$Q"!mK~`$68 Q ll ~  ; wOFCt`AS m!rud1-.N<9w: rFuUJ|8QZ > F  W E 5 7 = A ; 6 # # < 2  gh ha36=N;;Do5t)o`Y%nc txrdTW\d?Q.W7H\d+t~jC ;Q.3 2 j 7 # Wy)G` !#"4.$7%(& &!'}!(!K(!g(!=(g!' b'Z &%$#j"r zM2lAw .F G p  o 9  ${SyfyHip6q-tt'I$+!Wn'w#MFA_ Yb$= | MFy^ ! L n `  c F P N  C 9   Pv+fhBR4u(|I0B$wI?i))9+9 V{2s33{!M" & \  9^Q J/"[\#Gs$ U% &E!&!5'!'"'!'!&'2!& %4%.$#!v j h NrS % W K |  h$4H?6f}/at!t q"e-l;HJG3yL<tC| W 1 q  n I f V # i E m  55XoF u*Cf8Oy04wwWIPiA(&}cuA?7'a m_7+mJW  !Ni~w9f7i2 hf!{"j#7 }$ K%t!%!d&&"&A"&'"&!_&w!% @%* z$D#Sr"08!tMWT*#cV  :  n  ?=dq:61MZIOv91wHq*kHJi["_e;,TBm /sJ1l Z | Q F m m   T I j a ^ Q 0  W ! o `;SsO& vX{ d@VoUdl"dh WK @rx{(.ZJg1mZig@ y 7}p8@F{ !"W #!j$! % "%R"%m"%U"%"%!%!~$[ #"!o >Nl:r2S U  ^  m+Xi&{]Dv3iP- =/*FZ9Y2~n~j+K~D[9%`,Yhsa : V q  { V l  d 3 f [ . ^  pf?@Mw]H -.PV[JnWe=YIJQf~|GP3>fi >B|PB[1t^-cB?.3NCwKf#a  '7G9u00kkBn !h "!#!,$#"$r"$"%}"%<"$!O$A!# ""!w'ZWgE1~ck&   G G #iq, X 2'Os%8(T1l@9pg X4V_}s}2yn SO1tS'35 O H p * # u S o d 5 x  [ & " ;?QHj f[$mUSQo4e A/1;fO$[ hG@1C7]h2Knt'`U=gY;)-&.DZ?R~Hl ]|!Ne-@  !q !%!"!;#1"#"$"1$"$U"#!y#b!" 4"\!b L]] \w$=,\   6  ;1U34l9ka>rH"""#"@#":#n"#""!" d! j2#m5`p-. V L  { l9)\`;e?g,hqGb'g7Q@qe&$pFaXxos}~PA|:w#P7w^{ ]6  Z %  C d  V  3 c  n  $ )}\5$(/2U[SPP*S9 %LJw 4m1~= {!nb\xk f)2iO730;J]y?_j z lh|BL# /_B1c  ! !d!/"!",""R""M"r"""!!;!  HA[p7c>\   n ;AS!z$#]o &-^Dg"33@=|xfBz<{tu C/_.iC!WQ|uzPn   U E +  r 8 V K * 5 ` $  o .be1 .*3^=>eaX- [8}!|(Ix$ gXv2K-.VX A@-@xVv fzD- !*4.3@ 5 K  C 8fp CC>cRjHD  !!m '" {"6!"^!"\!n"0!" !`  3!.dS{yZxm H d  U f?!+T$@ Y C \  ( R k  + d0yQq&9@@+Jp<c`C cF )(*3MM/l {?0NH62y{'H3ZdXMV3V p{  p F\?qd'W:fGY % !m "b"9 "h "h _"= "!t  %5]*cc:w h{C%  o 0 5 8 :M@Qo.)Fw/UX5Cika`|jP6m!w_jj5P.+-G6l'rya:  %  " ~  -  -  D &   /)MdUFzBY Oe] \"s,{Q@4F_3|EP; UT8p0U;e=5h()1 "8m"mr"iJ"O!w!  T#-|j!$!~ _E,h V  9~VG* 2t1`zheDH$U3jMXl |8 +>wTXN;wK}2 Q\[I 2 z \ j ' f   ~ C 4  U  ! 8<-Iq#WhU3gBH7%'l(UBMa\v)5x Hx"P W*gV6x ro{Du6 $>uWQz*  Q wFT`e!X^k5| +!p!"8>"lJ"p!"U! W! t}S+ Dm;# _ | D1 ew^Ti~F:{fm9$v; ggyl yD?w@u $2J;17 a  wS   < R O / !   n x*X}Jfv]*N \tm|9 ?S3)qh6=);+v`O+j,@ou=\(N6z;*:[^ dk  \ Np 0 x#DwYrx<@  vo!!> "d"w!U!+! / %n ,u) },U . & w]$0o53wt$_HJZ f}2r?1 3=W dM$vH/Ex = g"+u%A B@  .1 w    {  A|  /  -ef}.!a`O<}36/1>Pu3+h\:`Man]em,OGR  F& )  <  d~b3&Xf;E~+= m'!!2!g!r!Yi!! ` J4Zc_]E `x Q 6 1  `~Qq*22l=\ f# JFNmD2At!9yvg1NxSKD4-$2g |B e + q  &h m    [ O b  F|8v\* ;,_# H;_%Jy  d5'.rXAK=V37 , K  pC+ {TnJJ u 9!9|!`!xr!\%!) # [p#iuC| Z xn Y0 ? w8tr7\fvW;@.$f&83+U-R4j;qx[z^ymhbq) e".YuaK=0%`T(n  ,  L  ; Z Q ?M  W ? X5}|,f-a^z4"6*DlrS06be.IM k o C ' b   m )  g6  s*q:<{jojgqp)x{O4B%{,[*%t0;Ndh]^2,*9^?9s{_NxSM^`m:j^ FK '.   ?-L*6Yt  / n v p : p65$BHCD1`\  Q Y J < >+gH )Y]A!CVB{ /y jnZaM*;=FE\n:HZOnp/ 1 N  H yD Z k E  t  v 9G5(O5N1h`ZSosD [E4z3l6%OA D6B ?*{*eA6q('i-*l6%c"  ?  tM -oW-r~(! ;e t k }1 FC*2jt?wG] C J&  M  G>a:K+O" , [9)Pz0UgICM]$J M yJ%GQPxa/c_}L;VZ+p7DWr  ](   5 U7 oE k' [ %  {a t&^x::nI'wD@dbuMi v:}ZgGDz0?*x6F`!)KG|vQW)e?& i   ]s   s JW^6IW gFLJ|  `pHI}%js8 +  3 A  IzPmWZH;v43:[BWijI@Ngt9\(a ^}77F}%JEgZ3~bxq6@ $ pp    " '  o  ?J }AFx:E~ 9nB&gk<2bLES@UfE7Ea Vu`S `3O4pqF bP m U<   qL t~C5MF]d}3l&XU\V1,TnX}  v x n 7 r fIg[XUNiEIC3W[|O7~: d=z-T-HI(6k+$IzZ9z~ZTxQe  9I x      N ] * l|+qt<X+9L8]sM 9moP&),G]67POO ZHDfGKX 8\j1_Qd\J   ! Y `   =M|yy(d)Pf,r 56a$#?~%[  }  $ 1 1 0Q>6jB@GOX_s KV; ["9T I-5Ko<_'W_ +K]AszNr-Z3RFC  ( 7t n     h1 )  iU_]jH&fFbwV ~97 ghc^PbkwQ+ag:]??b.$} \dMD`ZgfZe)Zt8(? ~ P   E# 3C&]|\LY<>)va?{IJl 2  ` $  N r$9@;Yi9-Wf/;/\%?z +6b=jXZ- i,7.PXGnovArjY >& u  L 1 O c g Ug 3  8>w:UxB9i'-"Ur<L*f1eD5LcE4:TK`;&sZXxW6@x} : ; V u @  W ~!_l1m,7m})SK"ZwO#npeH<  q 2 G Dg w   L}&@VW~e"2br`4bxmP(e njvp od1T%24`#U9NZLdgf4bPeCyh>y  & b } / ,t !I  y y.cSrPWE[8b|&Fc,S uFi+&}2D=TS WJO+MUz+;hd-   >  m  ^ 7o`^d+NH3`abz$SCn @   # / g R w R.=sZSX'K8MHe3.\(aG kX6o$(0m?PZX^]Z%LBK" aW>R [  8 b b \   [ NU {xCwV)2k`@lD5ucQh813?hp Wj \w6^3iKrM,Wz@ GsqK  P1kG1j{W> T f< sw tx n |\ ? ;v,w:3tD9n]g9~J RNR~ O 3 e h  T  ; jO: 2\8|6P& c"?7f vE\6_(r6P|cc52| a?)7.N4=G TXX[VM#@)=Fv2!/ 2 t  5 K 0   tH + hHmmGZ<={87lp:8wv)y}hj'z:FPM$#'W%kkux/eH 4,L),8KA[jsA 4  z    s  8hGij=?k}6l UL    ?6 s F   <FiH*]V[\B@.'1dQX6?P5 #QesY]XUCqGIO5[Ub[IC-/-Vy q C w  "    S' S;eaCzn>N'T[-ou?%m$bV8~r1^J {jhv$h\a>cB}#XPA;=65?FUsh=x<    *t O + K  MxoFN}@n>v;Y33~&?34'0  * s _  $ ~ ](   J@R_q4&nren2n0DM0zMaCF f]PYRF^RoSA4~7SpP % S j    ^{ = A,\ZzGt Oc-Et@c{ Zc?+W0ARP)%qJ]<)Bk 5 ~D-T\-~l9OHo9"98>EEOXb;bd U+ Q 4I'  5  q $ % "aYlpRwI@2<J $ u  n 5d  ] ! a  <$`b\T%14eTasLWY3B/Kn/Z*z,I)"oe2_]S^TsN6*ct9G$ y 2 S f i g Fc %w2!RTwK~]wB ie)OLx ogXX5Vc}#EzL9X]HCNll%{:c9Hr;?gJkA+/\!*%,F*&6  X V o < e  L  aJ8L~!!u:f~#'eQ L   j{ ?  ^ >  / v 4Gf#TkKD L}Z P.uUtTWmV ^S Ws$PDxOjkg[]B9 Ad#3~ S  > K X N 6P g*OQnP+jS!<,Y!,Kkq2 pE/!QVN%&pk/C!.3Os(G7mVP9)A VN v  |j@ Y   "= 9 /m  ^y}N ~wTs[ :x T Yg L 5.   $ ch   Tn 1'wh3QjIE1!c56!W6X~/s%38*8Al^cuuud\F. tj.V h4 n + : I :{ 0* L~/DYo[<~`:X XzS1Z Z;6AyQOo Fs|2r7Lt`F&yvCQN WR * Z (a =c -? ' +46gdt_0eAFTzcaV^V^Ae2= ^iqDogj}#soa+2v+s={X0%F{X|dD %  y m:/ z  B  f  |O  $:wJUY u  R n0    i G?   C l : CD{K<OxqR.:[2 *@[.4ZHv5"|!eH$%pv-O5 X1 4 *R =C 2, (:.qa  sJzT 7dx?h[fSCgYMM)b%4{K@A}21=wP$-Uu$UD@>   l;" Xe z  y( O  n D 7PXhfca/F!{  hA  r - G{ L M^ 1 " u  $y Q * 55~N*6Q${ECLti&J=tqZ?+`[6#$$,mH/(%e{TW~  88 =, @ - L$ado(M}+4h;%R J_ )s:4`FOeaJ{,IHE+Bu=6oaW:" n  C2} 8  $v  z  RB  V *:5 * x  m Q  [  @   _  ] s;  'x*~T21O$7yJyaV--!$,RM| QT fw=C++4pP7#+W Zjc \- : P C@pt[[+1|?bK$SxL,9_<(z mH,H]V%L ,}Y(Ae2vU7ANF  W , 0h`   P  Q C  qk  A p 5  X\  # kA  O  3  R} d A b%  p |a74&O()EmTOQYa8D'18'V-[~DHZ!sK]*627zN8(1H^]|pL5K Y VL']isN>G.R|b Hj6"-#$e#2C?U.x-Mq:.3Vd"dHDON2B*GqhLVuy`?&  s w <8  J I X i6 J '=   Q   " A>  w J w  $2 X ?  (  sG` A ' b n#~ydE.0O(&?Nw "W([;s'nk'4[ rpYI{Ss@=:?MB(;x'9mL.gu4w(@_fj\=JY)PVZ> p|(i{WJ>LEUxQkSs>;WX 6z[a-)YBz >uT.H\\~ ~L<p]dGa'j_4 X , B ~2   '  - | ! I ' |     ' E .  /  I: ^ p" l dUR: +  _ mjV4>8,T69/N`} VV,WV?""7S@W(hvQO?%=BQB8t'& z76Kd6QrujX4$K? IjqZ'~6{sNstdJEX_K32KXoUNf9-{:.scsFaP%]pAI/86 qKS   2rh!  z   g"   JG  ! c   e 1  jO  M :  J , <3 @ <0R   e |0|te0OMGWP[+m;Oj@V7!2#Ml?RPl-Fh608FQMGg7yD0IA{l|oi(;@]L~m8Hd-nU,RM_/2yH6lZc " CG QuW#/Qb6 Z   ]! 7 Qz G : "  Y B _   )-   \   ]I  W  >   d   u +~.}p>d^c\g3 'p$Q'~}NC0 "'YFtcJokKI|<=@LPSLW<  c U$+[dyaT/s FPXi/tAU]FUk@%B8w(I@.\k_(HC_6 jOwRo+  T  ]  w    _  X  d    3 u M  [ _ j  S   x  ,  2CwD{o}Z- `SJZtHw'V=D V=f# D&`iC9N=INPLL@*N}_o6lAs}oIq+'*==)aft8 5nSpL>QMzk!r0lll@?iY 8DBMl99Y9|zlA-"   ? Uq  |  | K/   2c   Ju3}0d'7  9 } r % ]  j  4   =  INQb2T  I2h@rw-^O/3AX|38/W!8IHV V;J1;gpVF&WeoZ.K:;~N= q y 'w#56PdqJ 3L9Ta@RV gRTOCWN}]vG.!iRsD% FpKY4:    \ 9 E| ># ! ;  I v M ,J%MB! / \ .  # ' V |  S   S  c \\m: H}U96ed!2!'QsP"bRF1&g+-?JQWt.SA(Qx;Y 9JRAyc}W8ygR)$3+ -)(BI=g{f9E $2K :BrN)( >WG%y[d=ZyQp%SpaFh* 8 x  U    &  E A + k  EHfkc;E s  S A  "< H h wl   q  yrg{CIq 4?qUW/MB~r@a&#q9/DCUZkVpH &,(vo.6!l/sn0uh0/7>>=FE1V`{8h!7In8HxQd"!/ug+2s:DdRUT_{@b}PA6\-#H $ K j Y "  w[ H   e  a; <PM([6 2L  T 7 r6  E   3 =B _s-xiNOqj7]]3QE8fJ&G-a`32Pa:e|\6B, ^;f&FDJ,Q (*MPC6mYu`=7?o@:lH$~Dfe x Z f*vk^w>t6IKsms'ts]:Do2*@ Q  W/ * 3 , X   Z  ~ PWFz7q n T t  1R k  h   X, FfEz%|`7gwBI.6CvCTCT?BTq "/5Qg1qomSvgKg>I_McF5 ;XGK ;}\c?F4h75|a :d5;S:`9x~TX>C@BVKnx+kG|QB,#m !hG| | Y ' f  N .  ^>l!!i3P   ^  u 0 ] 0  % n 3Mas;%%vNz&/Og-g"@  F%^ >JR6k)g0 `Q  @ l  e  L  z U 6,I|!dGCsA(skDc23G8{N) 9=H16{Brg F/4Qoht5tG_=+}e4Umzve>$a8rq89i*v3BV"})d(z5;9#TS`x,M:6Gm2wK>I.q<-\x7^f O  n a  G Z 2I)IE_G\1OjF e p S $ j  }   C g O :j1z"YJQI y9Q=hOqXo9 ;m?z4]{`w} T.8Ulp~"z/c -<u :Zv~~kFeod|=6l5uLDt$wZ"u't2!|kyvDVKCX ltH*K+ &2Wp3Uiz` A  ~ a 6 n   ZA  l09}UdpR4^S, v  i & 2 j 2  zM `$[J!racj"gZ,JaC]!}O9.1Lo;J8~u2 f32Valt r[a( T~<_xnL7}r  OC4l;v /jL"Mwzf6kt?t=b3g@/ Q CQN]V~Tq<2' &37Ve!2BEkLQC 39 #  e J < x -a#FZZjlxNZ1A=^ Q  /z G * m @ ) ](v HX1/e%r>/2lcVZj2l,ssmC%>C'y*tA l+4NWhpv|uq`F+ X9ucv~pRT^of;J1s;R|M;&wx X}:Y"on$+_~8gKMPy47w9?BW`M9=4GKeu~g_;)  l U .  |:  -H#UpwdC4fp  q A U .  x M ;=~ ;k{G1x7QE[z"e z nw0; K` 9oOFzR q17UOl[tZrG_-t}(>J_`vjgRz)J!A}S0O3qB3` R!d)B(zH8 tqjm+ry$4?%i`)}/2? nXMIHtOtZhgj}mnsqoeXF- o 7 A p .  u#UIpr~onhK? un  F ^  A a FY20|jV=~Mm[$+S {B]-nM;(PV;> tfuj{10PAbGk>j$W'Iz7\6u9<#rT|y7[1tEE|]E/4{,+@Z zBtN-"~/W+ 3X!]K 9)p w'z`ZpMfSVRW[PeUqV{ZZWLAz+aT-  o 4 V   s] J]r\? _s 8  /  e ]   i R Y2@]t@X0jA6|AA]z-S =,4? c/^hO'(/K<d:n+j Rnuf6RuxkOX!p]&PT`#p?f5rA< "G104zp{B]!\iwto\UPW@JAQ8O?U=YCXBZ=J6F', x _ 7  i $  ! a `3zY]~Wd44l?  W  E  m  o % l  l ggL O3EoC$cO:0+/?Z}0lF ktz;nITR& z+*F-Z!c aJMl6q(Rc{rnDt0}u&k]-yVl'jFDAEZ"Nt { F?U?*VaYXYP}h{Ik?S-P)=%D$5';),'(&O t  ;  Y / s M`!A Q D)7d r  |  c f .  | 4gB VEH=-S4ffFZDqmr(Y-(J8 WL.."JZa\^D${c HnJ\ukhAHy]r*] `&[)5qgUx4NqcT1Ok!KRScU?N[fQ&9OI pX;y)YO31 X+R  b  3 ; O ( , /[+83tJ Ym   %  b x  G | ^n|^/T@>dD9  a[H0j;iJ0%,:`?jlR/ lH2&)!CTXiS;:WTCc:wWgcn`X7"|7V)J ch:>:|Jh s^Ir/A)+=7nbs.c%%\l {N }<gK-b J/d1 ~a, J f 7  = , h c      \ E { 5  | B X 1   v d,t[c\CR iXI%87uNv)DzTc9F1C(;(7Q%LI(Pn -!8v!(oQQu93 +c = e /  A 8 / C  9R !infIl-z0 fHA@|XNZ 1K_KlAP)w"I)8CY@q3#lj<lb3.,J [a s-oCiSyTg^mc:}R=_}lvCf2f/v4Yy3ue=H=lhZ]5 [ QtbL[0$P d  ^ o y * W m C f   l K  O r  A + a   l M f]VVlJ9w')~; w8]cYtT l)kB4"$8X|4{3"otHp2'/T7"BCG8[%Nb^7fx  yX#TKn+x)[u=a+$j#',[B=j;b[FSc[J]qN }/^&=b25 b%hv6h[@e/&,_o$    . H W & < e  7 M S ; !S $ L A  | m  8 ')M*f&t)M/Sxw.)=IkZ[[vO T/:dG=8\6";;91J.UrH4Sbm ncS,@}*kt43q[tS!UaFvw#bcfp+m%aQ9~CsAd}D4vQJ1kk4] k%rY`R:%5 Aq. 0Z  $  9 G  ' . $  { | & * [ ~ ! e  IQ  a" zp:|_x4U(+FoSGr.g; 4jDK SmOS@e:"=84*/| AV@t#:AB:':a | S{t9 :~+}@Y#.CuiHL!NLe3L>u8s-r`EM6$[Wr@1Ky & F Z  ~ S   D _ } p H M w 6 " G a 5   g+-@USit|4`-7X -y1)kf1 _- .WIqe2{`fIpA$?|8&z& al11d(cn(;n=mn8B90SHvhM,6p1Dr8xZ?7  )JuD5B6ZeQ hE@/fQ/7 :rGNmC q  R   X u   c % < > ;  O  ^ q    h   E jT{1HOml4s8Om =M I+{Du,~U15qyV}I%Bv8g!P\!~DqQz\Zb*|ah4(O0J=Tcs(?rwYTpm YOsCyv|?m @^;Is'&SS6x^{>%$pCvKs\  T  Ih  A / a L k k h B  s 2 =  jj  p [ [ #3Nmx 80uX@ |;cz#XjZr~ 4XqTw@d3Q.Q5\>o\r D6{LKd+Q%Cs0\~1NykSq:d}iH;Plq\e8,WE XbJD{f u38w2S rW633Fm3\$+qU6FO^"m =pPs. QuS2Fn&D| '  $ ; ~ T  & B X , a + V , K  & a  R ?  iN  @ Q]J0}qCCuFu6qx6*Z+|1mdsasa{r$^$_f)_o7Z(Fl-N tCUW(Q oSwrnD0BVbL[6"F]cp0Il~Ea,$`4dL caN>r8a@hIujR1r(Kwth.@p=j!0S\#l|7}h@  5d  W  ] a        r {' 9 x  n "  k NvM!%\o1Hj#NFSH~RU={H|x0:t yB]%Hi)?i8=~:1 H:b^o|w|ojyHP0$6E_J]<Jht%=Lr[hXFYan@c7M7;tx5k29f!o9)>c8] a*68<M0e { * - z ~  -# U\ w     en D6   O c %x   $rrS[3Ce!@e#QQq6i s=t8V9k3 CA J]!=i3pa&/Z.u *'@FNdVqZwNqK_(>q&2SCZA,eo2'bd5C/C f1*r]4H,'WVaQRew#D88O BG+  uyC_{ 7 d   %` F l v   | c H %U   \ T   u+ :q6_BNBJ9Q7 ?v/V{i/avX`?=+!$$#)<;S;L~:iu,H z.n[UHB=):,9,E?P[j;z(X!;6ep%BV m A2u>8e.j("aP=={9VQJ:D=X9B&Q$p49_mC<_f#E5!,Ca F+OuCpg6a vV?>,K Ih>i mSxl y  3H `  ! R q   k S !  n LY   : [W\4XQQLhFB1CXHXFuHP'FntcZUGRESDZ[kl~ D 5f2H4v m;\g4)o.-OwU ]A-=z<XVKCZ&[uZ_K}G0Pae!"xAq!W#o]YN^`2qYm\5}Qg^<>p;ui(K=?%I/E   #a Q u  : B L 1  ~ ` :w -  v g -.W891::R ;x=#AUK `I Za2dvnkej[eaupx^Cr<S:{p;Ya.bv#zE eJ|t~X<"3{<UZVMk7q t6ih\sSTuOL Q. 0WI4}wX(bm&f4>c$ZR/bQb jE w  * r 9 W j s v m _ G + L   rH Azx=$)_-2C6b=#FKS kO3ql@u6{vx~v|0l$S}L^Ivr":U\)Zpl4^7tpwpG4&6{>^hf^xI+-8 S z;!tBEy(zQ1( \9-+2Z} zxu 3Tw=KR98NA/}f&+:`Q(^CASrL{@@ l   A b u z m W 3   f C: h$@Z_"oR F,CB`TVET-z6._Cg+u$qM#=XVTSxOGaG{slWG+I^s8vkZ\yR+SZ[lQOn<Hqu6VA.")1Od#ZdaODa?,wg&(.S;rC-AL*`qL" Nc w   8 C O @ +   w N[ ( dU-IS ^pE 8-D8`&RaZX/ N#=q'>r4($uT($?UV NP~A!E^<~ekLM&%V^{E{kof=jqv#j&5oR$l ]h'Z?<.48G]u6)wlbHqG/w[t!M|. g $|f*$0] 82 _|         } c| ;: Dy?~6DS~m< }0'Fz4h,Qn eX0a3%L$HlH( Z/$FXL QO};"Cf/w_ppLV &#Z[#z U s.M{90x9V7c4 CyRaWDA?CWb$]+5nrDwL5uXlz;s_` pJuo J\$ NO n        u NZ 0 !h9^t#>=tW4qs+"As0f4LtuY&-oI 3^'EqP5!\6'BXT!RG~1z"Kc!WpmAU 8}"h`+ ^ 9Y G-LNv Ut?aqr?Z)QFGLY mGsC5n L<:uVfu:X OSf,Ybn?f~8>' f` |       cs P2 d `.M{u ./tP*om)Dl0o6I|(T6/ T3  %AjMiSA$U7!EaL%VJ& t&PhEne<c=x%uh4k"Aj&3OHgL/sxH!8p_bHR)I#NI)a?h_ X-q =:8mN ^h,JI:u[8YI9?um:[= zf      }s dO C %Gf&3cl5$iE1dl&Fn*o}BG3}Q=* aD( .SuIfbE#U7!KaI(Y?% g,UpA`{Z<qGu%f?|(')R-r7'K_c\H|;MYsacOHJ.5iCPc'@>ZVS+1"qA5[ rC i    p wV i- A%z.b,%]m5i91bg+Di,t {JD 6|KW* uS8(" .=aC)dmEXD(E[J+\8 _4]v9SuvZ/wZ&zfI#707W=zH/Z`q3\ k~TJ"w8l]{IhCWAWA]RpZ*"V;+)<{l5@W,zl9HPpO *vk( l:Yu$ C ^ i ` V }4 l K'bel1Du5np71^j)Gl%w}R? H|CX(#dH610=Lj:1duS Q<$JaG+g7Z?^,Pe~~xsO.a:t #l\&F:FcNz_;tbDb|rH#VjOC8p4u8pCRmFKD%t#8nb+:Gx !wb6&KPLih/qHN:ay& < G E 2  rX- QkV<7|;fw.4Ym-Gi*w{_:KlIk)tSK=AH\w 5:^~ P IJ"EcA3h8{ !TEk#E`n|yycP#kMt%sj&+N@OhYj8f2aW"5pE>q/xZD6()%9>buT8R{0 ^+=ca y0>r kF+{K9KLI1u(&=wl  ' &  }c=x3~F? ,C^y)?Zo3Fk,~s`A[ r={2}gVLQTm 2BS YOI%?cG8l,|&IRp?PkmxkbE!~Vt$ qw36\N ]m&l~A`&BsTQn5U Il L6%"3Ih*g&_i7H+7SWo(7b^8#hE#Q5/1 c KOq  nL\$8U SQ@Q}0Gs*(uk>fn6Bwd\~_b|(JP}^FL%?dC<r,s4DU}2L]jhkRE`r8#v?<hYkr/y=;eaN&k]2p(}jZ3; & 4 RCxv gR:;.::Wc)U\&O@wO:}E%[-uj}_C0 z_m\H~G K~4Ot//ux:n"a; Utull|t! RKwfAF%Fd>?{"q :;au*=XZ eZP9qrGsQAl^r~. F'IbtO;,]Fo}FT. %Us!z?<^pQqEZ$z5_ F{ao3F\s,ei@%{PH?Ts8/rx?&+_6].xquzy,[Eo g>}M*@`<C!f=8qe7HRZPJ ,iR tWLwk'/H=a_IW?O`_1j@;%fJu)&nP9^:~NAp {7Nix)@FWSTJ: Y@n)TpL^"V=Ou25j^LJY|74{7.:_+ n7vsjku{,n=l$l?uT-=a9Oa"E*{d,<(L*H+M#7.g`*{_ Gl*6(HHqX-;lxY<z,oJY6  2I-a;SU9O8fK0kk,C^r:+=Z;R:Pu8]{o\+i@;SD$;` s!FV \;@z:1F\+Bycj_ps D m;a2o9vR(@f9{Va*R Y%6993E>:-6( dp5vp%Ns490FPzRG.%ks1'Dd0qQ6% +FcGsI@cA9:OIec8K su@ZUc Xa8agugY;Lo'`/&yN]y2C]ZCC{:>VS/Z!~ne[bbsH2a5w6v\%=l4~WX)eT(8&@2H2D7A#1^|Cv~+T~B!9>@eX"Vl->];}gL# gV=;:E_z&d\ &otLBGLewR/=bp~?\ t]D0^?;#I)Q#J6!g[+ sv!2j^S@9|daKExDM^Y(j2vn[[X`k|.S+_=7 s`'?q1 {aO4lFx5AL'S#Q*L> * QPv3N|F,:M>sS6pd#QR]m9F t\zYyXdz.Lx!z]V rJ6QcjI(/Ohe:oakSb#{6jc$7&3)7+!tt;@_ B[j"EG1tp!gNM>Q rS$+yH#|bbP[Wkv:h'^N9pb,Fn+(zdH ?n8o+9QV_^VN1F^k<RK7:X@|MQ_"oEq-\-c.|ofzcvovI6m,Hj_S$O[^t>!;dO7YbS8eX@r5t/GAG.$U"QBSHu.=S% qw+aU UBb zT6+W<{`_MXUfu 'Lu'XQ4sh2@l.3pb?Gt.^6DYagi aV@"t@a$f IOELgewmo^K-j5n*[ LNN!JGr66DrWVpL7nxCu?s[JB?EUhI~J [&y0kanbFl$~ \&2#apX F`V,wOTeWQ9nJd5` jq!$sFoeh;_ acMs&Y\0ZxB_&]JW Pcp4Hp"Y/j7.uo5Nt 6or1lX>r(@^dztriT3a#p5XRNSFDt;HB(Ipnm*hF>`?dJ=,20CUt[~|fMZ*[ gktJz$sbbBjl P \B,UBm[ncp`bXO=4'bK!~F:L\Zs4]J]k(qWAgy3=uhhSWDR9Rrx7Ky<_w'[[%L-oTbz}|\Il>B@]G ['\G/>m :TCKhb \)UoJk2G?+31$I8]UyXTWO joA` [r_^cFa$XHT&m@ P/hD_n(z=s2n0RBzATy+J=_K:XR _v-v"` Oo5K ymcU]ZMLO[P]Zum(PY4Av8Hy>Y{'M^>;ZOqwzj}DZ*.J5dI^(cO:=|!WY7Y42UEw1wG~Z@&jlXTL;B!.s|CV]sIjGFn]zzrhJ+`9 c0a%[Lz1j%O=m!bH7s7v.ES$vccWee|%*HV9Rx 8C~ ?A1&`S@%\=rSbiqjiVuFV".^Os<q2{UdFcAbHy^2_T.`U75'P@wi"uhnf5. vqYVFB20fc98RJE@|zAA\\vux~p}kjGW14l2> _16\V 8r-ZH =~>}BXi6{nbe`sy+*\[!:Xz :B|F9zw1aCy 8 b*m;LTWYLHq(\0RXw4#q4~]/zMs?#K3fV WW~[h0B-  ''FJdq>h!e(A kxKT47"~wXK*tL)|8yL:X1m>{RxQxL_?Q&) rY-%k_9K`s4z1ZSHD J\%rS" qjkfy|E+d^(>_x :C|D3zj/`7c 8am 99D>;-r\1 ~@Z {+%t;!e6P*Bj{:F~<(e*`-OATw+%.tY3 n2Xw))~=b>XALPTo(i$UY&oD^= qsano 'En G{_ ]Vb#Z8X/ sjGClx(2,s%^%_$G_hrc]>)lAn2hk)jHcaAR^!MUg1l= uP5xyyE \0g 7Ao} =Ez|C#{V'cGf5Ym    rV5[$[o!(z=(kL[KPj\ Fq*~Da.oDfC(Hl6jY,vVr|+M+_,vhT4/Sl b$~GQ%Yt:R`c`O>cFn*HmKAnMCR l!Y`!s? wCiC3~;Mu6nBGs} 8Fv;~J~'[ ,]v5Sj|mT3sMca!0:/vR\aW 7fj y2k1m3wDo-J, 0Kq8bVMX5x:O-d.lVO})5^@m]C$E1gBuUXRJz,rT=i(e$e!z5CiB"GIk/U"b.}JK%TI*%%2Ia=q LGx :Es8>x!ZEe 1Ngx|lS-c<Va.E-sZfn -bOjF?[r*D|TS<7!  7#QIy_])nPN xMH"_!~fMFl"nLj[15jr/7IAPO_AS?S ;+ [(s9 ]ZAni4${JIt/`r,W(V*j[@:+**+;C^qCt&TJ @F|n;}6j[1Un1DgowjL.{P*[R8F/}]d6nk+w"i+KPI'apCN*G04-9$DBYVr ]S[jr _Dd pVC4R vX>=L :dn &1>+3$/ SvE_tC@Xp&pQAy2['x7_7a3 i[FF8C=PVnQu 3ZM?Bs;x8W!O!@[-yA^mxqeI(aE[G;H0}e&(oK vG|3QR~TR#'tM;x'ed!b!h8xCk&DgqX8q!h<t&jJ:#;k<07_L=k +$sCM#P\#=Gf&mL3|:Y,}> kBdCg_VPTQdf'T:hQ?;t9u&VwH 1G%c=wWiq}w|j_Ck%P/XxC;F7u++u'd#c!@o`Ah-P1 `H8-/0EQv8+csVO w4~=$r eC0+~Uhz)>qt6n:` kqJ6$ Lt9 |6h5h]N1 8^,FsOyA%zricgfr} 2[!FjXBEi3zGmJ|!/R5^Qs_|lttqiyViAZ8!Xm;>J;},7z0q34uEHnd*.u?`5!vVJ@:HJkz<]8w .eutG<+ }#]~:'v{eKOa`Q'S/Sf~qZ?_-|GWq5R$eWT%BX0O}X,N+ |ww|5f/L$uXB@l4u9eBy ?-GK`Wceplnjplk^cSU6C'Sh->H;9G6H :]Y$ |:Q-ThJ2n[PQPfn)EeFShx]<8 w$R},"fpW<-OqJ.Z=q$<P]ce_RD,tQ|a20o*kE [LL EV5T!_:_0">j6U({] B@f4o6R{:t&=A@QV\Re^bVdVVOK?12P]%?J@?R A\GxgE J}N&g3y`J|:s-^)h&a,w4DXpI>"mn,zn:> q.Ir$cWC! >Z:v;e+V} &*:44&d> gm@*a([,Vu?TM[ 2\(cL d @+Cu >_,bF;~d3l.D r7i%'3/N?N@_GYCZ@Q:>,.JwR<KH FWFj8]q]-2`wL&C ~ccvPy[wUfp&\&_&{&Gz~:Nj)l>f  yN/lH]$Wl"JRg9O  NU8e.rQ/oI(0Pw(Gg+jH8zh0gA]4~`0>*K,S2Q/S,D'= |Ml I;MSIe)TKf{>Pp2rN._ 0 ;d(H}7|(U9Tn,>svJAZalSMAd"Qlwf:lH(POa* PZ1R QU7k6}W>wT26T/Mm9cF?wY.a8N-uV % 6@IHI=1 @aD >MN\s1^ ^q/,Lj =GwTr5I JrKg?40j<%_f.4riB.IRZ7l1{ 9 a3tYl|fK+^L&x EkLKHwO&LVX2 s< cB,^ ;'  (8d}#7Ur7h B4z^z)\&I)]K-8= C ;8&wB] 49N^]x BioI7 ^Z1]!x_Y;<+ +&TFfGL1|E5f^3,o\8z!6=oCK!Z;LAmStltwrcQz6jWA% h6U>4Bo? LVV2uGmI7iE 2+Fd)A\v?h B0w\v(V>RJwt50;1. sw@T- >zV\mOo-XE*q-xO)s4}rjOK(8%  %3 DkE#OboFaD@++#(03I+OQru`Bx@ BI}a3&p~F*ceJqi@v'j   '55;FKEDEL5=%9 &{MvRr/*~:xQ1L qYX%,T {WG)VH'" (;V r&3QbFoB,qVk J #?8Yao & }eh=?(CSh(z)e6ChV'Y c?h-Vz?rYWIKIOY&dAwb*h,[KJTS:j@%YZ;ZlS,U{L~ "*"/.*"&f?{c:a&l=jG#L vYM*0]$uhD7c P2+$0E [|)o&SC /* $+;Kd ,DUo A{=2sElA{ 1->O]wl   o^Y56DXs2%9vT_ wAS*x=qWc6&lR>0+(48Vb D7PY6JdY:mo-K6<Nz&j!MePspEsS8|N es*R3{GoaF*- e6~pODr+d!C@ *0%03C Tj$1GZo Jv :/qCf>u&'8CRsexe^W,0G^q40 ?X.jOd8KjqRB4jTLjZD}1i(QC:3 36; MXw(6JZvQz=-n?hy?j1=Ik]oz~e]O'.Iat85M_>r +ctI-d#f]L'1m_WWZju)7aUuqIRtS:pc tBo!u6eZH|$@ZJwknHw'fK2i1wZa<x>^fF*$ mApZG6q(YMA;> :KKgt/4RXz!Uv :,n=cy6h+8C^V|hz{]SO'-C k75W jG}:n}.^8w3{k]BG/zlmrz &7Gl`+t SUuT :mbc4oj(ZT}(q1J2aXwxyX=fX<& W(lEY0m>[aC/! pGr\J6r,iNP @F CM[f$(BGgp(U~ :nEX|6a(-<]OqdrsyaPF$4 Jk|C?_rO#HxAjE%KmS[1<1 } 9EM{s6z(S[T :oZ[2ia CGrY'7VBh`y~_~On!] G2}OvoCF 3 l9s`a70%{D(uZL7},j \QMI MV^r!.?Jep+Z} 5qCUz1_ &-6MNs_o~rpaPD4G oH;k{W,P GwP3 Y(~khBL?!.&AX[x@0T`Q?kZ Q5[Q8ChF}1H.[Jph{{unyLw<]V8* r@}pe7A (e4tU\;5}L(s\I<(t$a^P VQ_dw#.>Mcr,] :!k=Uw1V'8GIh\m{sl\MN-DoME%k)_4[Z\:g>xUX2J2# '14Lhb~L8VeS uF|+;GoT/g> pl]HH17)   "4?9aXf&^ 6,XkS6cF0!Qy#g%BVw5d2<X^&q<t={B{<v/q#f [M:)m=uON;T-nHh50 _>kXF4(t q n ow}#$:FZrB` 7f7SlNp 4/IMZhoz|z^o8Y>+{Q cY=IuQ+H[zS8K{|ZaO=7'+ -.R?iPj(l 0,VsP4_D($E]%1Qvr#Q*?Pai$w1v*|/tphVP4- ^5tsMN9R&hMc-5 j<{pOJ.) rw t}&4FXkF_8c5PqFm 6)JC\ap|~vZl4d?1 {Q dYEM{T/S e.S=b( y[pPU68.'   *@)Z=Jj{=j+1VvyP)`9(sHv N%*I`wAl'@Kef{ssse[M:)rW&sr=Q6R#nEa5;gF!eW?3!z| 6>Z eAg;\:Ks?m !8L?aZpstPr8hG6JiaKXX3^x6X=m=yZRa2O.7' *8O+i4L_{Ct%9PvtM&X<~lJlIJVr0Z,<R`lv { {{pk[P=*qC fw=Q8O lHh05oJ}$h QA/   #+FL!mDzj 2d0Ql>b &6R2_UxilPz/m N<}OscM$%\&\6c0GX=zS%yZLv6c&E? *-'1: G`!s/GWy L} 7Eu H(O4{^=q?{GHpLm,=Rek|vvyi`S=1_;`u5W8{LiNa*? rM}/hMB)#   )?M#eG}m 0a/Ql8a#>Q2gJxey{hM~'w RDzQvfU('g)`9t6ZX@\= uWL.n'aH E:=?JXl+:UjV=Ef IR/zvX?i-wF2ow 8a)}CPik{{|neXBx4L5Zx,Y<wIoHi5:rX~.`T9/,6R(_I}o7Y8Js 1]})? V'jC{Zq|^H&}ZI&} O|oY'-p1b<|C `X4>rKsRG)!p ^VKMRXlv$4Le+W A@^ ID.}oQ=f#gD$of*K/o@[ayypnUOe2D"&Oz)_>!sGoKn47~X7`R:(  &7J&`Qvm 2[/Qn4O)CZ!j8UfyqZE~gI3x Ol\04x6`AKu[<;^1jU:.tceZhf|!'G Z.{gH5Y NA#rrB2hZCmX9)^KzUnv|kauMW<8$|G~"d?(oDoPl0;~b7_$R7+  $4I.]Ous,`7Ks-Nz3Abl4J^p~{hU=lT4uOnc54{Am:Y"}_H3!mD| hM9$|qqt|$9U=noH/QI7#rk;7\L? pB{-2FHj[n{szegUK?+- nBeD+m>tPn4=j~>`)O:& 4D7]Mr{ 0V-Ul)Ir+N]w,@Zev{|khH:sY<{Fqh8:I eFi(X]:) w\|0bH6 2JOhrR(H| T1mg80|\>?o1i4=HOatn~lcW^9@ 2h5mG- j;sQh7CjG].T 3+  1D7\Wpx -\2~Sl#Dp6Ld{$8M^isywypkXH1~ZFp Nth;BOkAl:y^f/?fxH[%G+#3HOZZFqP1`b0(sY;oFe)S5#MDaYsr}o^kD`0H 5|`- pI1 a; tUk8BruJh7I<$ 1 A9Z\pz -\-yXlFb8Qh}2BX^nksli`PC$aJu%Cvl=CZp> }>Sy5H zpZZ5=)&=4b]s&b=jY(]b,(iU.e;oHw:M-eLvYrrw|ia~Kw6^R7!tS&lV.]4 vXo7?"s~T`:M9 $  ,$D?W`p} 0X:|MwCZ?Op~&=HZ^fee`VJ7lLu+<tw@@!W(mD}QzV0X ,mgWO7*' *I6qLq1h 6dT&T_"iP] Dd5k:Oi5vKYdjggVS6y+e V:*hJuV1}Y0t\l8@"x{XbAO 6( /+?BWep*\5vUt8\ x CRu1BOS^X`PS<2oRh1Aww@F !]/kI\%uX-m 7kO_6A%"3 ^,|Gh:p3[\Q\!!VKJ ?e)V?Ml#v5FQSZKN5.|iZ?, a8s\1xR-y[d=Jz{ceAM.9&+/DGRku 4U5|Vv3V r&CZs"==RKVOME5* xQh;; wvCM !j/oGg/yS/qP~nGo7Z8& -L g#A_B~-ScIXPPw > ~9eCq<Pk {"1;AA=6%ytUH)wS- }W<xF-|\k@C%~xjhIL3:( ,6BMUos 5S5|Vw3I s.Aau ,<=JCK==*}Va?8 wyEP"m9oIr:uV+`1~jE4qK>  *AZz9ZR'M%dF\z QC~6o<_5]<Pk{ &.*.lc@5hG"}];mC&^iBF!%m`RW76&.   $)3ywBXmDpIzK|Q-s?&cG1gO=*"3=Vm1Wu,XH(}gFQp CCt+_6\&Ev8Ply qaG5|[8_>a!CakCE"(ubXX?7.. )+BAWXxm/V:qXy&> a3{Cgw,-11)'{\WF0zCS(zGrLT/N3Z1bG,ziSC8--*08CTg/Oq=`A2wi:Mr;CwkQ0\7^~8Oh|tcH8qH1 bAY%>diEH'% zh_UG>4,  4+BDbTvu 4M;yV~8Z0oIb~ &' zgND. y|H\%Jx!J$f: P3hJ!_J'i^LI@DDNZf ,JmGq E=ii6Mj:;ih>&z\$Mf2Ofwy`Ot4^=!e}AO); hhHJ(' ge]Q:<3&  $ 7+LDbUr 2P@oS~0Q.jLb} sgGG+&yHS4T{(O!qHz[- U=cG,tfaW_Wji#G)jS 6Elo1Oe20ck8)dR~4Z5nGfvqe{Kl5G7 jpCO(. inJC-/ soTUIB+1&     / 9,UBeXp/N7q^v0A4eDxjw ljCL#%vKa-`~+M)y['S6 nM/cJ,utrt)=:kb 5Ifu(Ic'2\^#!\Oz! B/^Cwcpw^pRU1@! hdFI(&liJH0, ps\`GG1>&&#  !7>/]DhXr-P=iXz!>)WQp]]mAI-|E["5h{6X #^@\ 5 cEh&L/''Vh{48RJ`^{lv~v{c|anG]<G!2 edNL.( nhVH/2{euOb>Q+G44$+!+)4 :I&W1hJ}Zv /E:f[v))4IW_bx~eGm-R) nQd? {Q\,4 gfHE"ykWW?9$+ $G)[G++tdSK5-ezUh?\/I!F4 6,//4 : BO(_4mMZ}'H;`V|z+-FJ]Wus~r]<m(Q. oNi$=\b/9 }gTM6xbmAU.?.'BW'sBcK2oS!QJ=H`t 06Z\~,<"Z,eByGRUPSCwCy-`)V=*pQe<F( ~v`QM;*hZp?`9UGD 6 <3:: BLR+h6oM_x*C8\[zt)&A;_Ro_z~gT6oO0 wFk,@be:>ogQF%'~kEs7SL 2+  6?Wm'Gf/T*}X(RG{ 5EYl&#RQ{h =Hc*l/|?7C4|8|'h!cJ="xeFd0C)|s`YJ5/"oXvJh3\,QID? ?? F IT\+k:zO`{ ,?=\St| )?6YCrYhwmdA4jR. nPi"EmjDA#tzXT(;pO=s`RA:.,').1AE_f2Gm8f0T&XFx/8So&G<u\{,GUfs&y&~&|&vsa]B: oV<]%F# vt^XH8,!o_}Lp7c/XRI LBLGTX!c.r>{Qb}'@;XUqz(;+W8oL]hzsjOD jQ- nKi'JxkIF1Vi8M/vXD&ymZWGHADGLXbq1Pn+Fo0T.\F~s!;S`s F-jJm ':M]hqts q f`MC*udDw4b;(tt[YH7*$u`Ov>k/_$\OU IU O]]$k4vu%/Cds6g>Ys7=ZZkhlf^XE="xmQ>w&Z < ssXYE;-!~_U{?s4g(`\UZT`Zm,k1FTh ,7;XUfv>J!m8xAT\hpw{~~}wsh_N>)lI1fNl%K }xcL:&&j@q"T8%hX:+~{s{u$BZy *Cg -a9_>r/@Xh9W+Ja~*5OOc]e]XM@1m]A6mW 8nwSQFB( {hUFv9p+g&c___bg$o,v6ITp{'7;UUas6 Je-x3JL_almppmle\RC6 gI-cNn"M{jQF,. iP$g M:y[L.&  ,L] 5Yo 5_?b>p-BSY)Vr9Qjz 1=KSVVUKG4-~w\O6%jT1fqXX=;-! h\I}_m -8AGQQWRVNJD61}_F&fCt-K%x_\1?$\8u^I8 x_J:'  $,HSv*@[r8j)Ij>k!,JVynC_+LTow*/?<C<8/$~rbTC1  aG. y^nSY8=-" ubRI6~6z$s,x p+}&v/7AT]x"58HQ[sn(>Ye )68F?LCIA?6-!x\C%ycFn'S!}`g>I/dF$wYP6*f ]?<$#.9 Mb/y6XfCf/L rBc -EKqf6Y}!4GYgs $4/:,2w oaRD4#{WI!s[qQV7?/" vhXJ?~6.v.&v/)97IRcv75CVXkkz>Jgs(01<6?49.-! m\>!~YJt%P'hmAR< tH5 naN>0y"cS B6,#!#.7DX(h=MdyKi3Tp9m*;@nc|.Nr&4JQgg{u$){)'z!xp g]QD8&pV? ~k^tFU=?$% g`MF<33})4~,<:OTjv58=NXncy4G_o  )+..+-!#}pR<t`@o/V %mrG_#B,wY8u_TC8v+Z W=? , / ) , 16E$M/c=sM^t'Ko1434>?QUmx/2@UNddl0AZh} %!!  dV6tYFv'S, rzOj(I >^F$ qjVM@m6`/O'H"= 99 6A(=-S6UCqKyci /Nw +<`s_@R2O8B/H6A5O:JC_EbYyYtz2Ty1Fb{?b07YJ|i| 9Lu !69CJI RI QCD83&u]G-lcMqFP/C*" roXTIAA7?9GGU_o -47KKhV|kv #9Gbg uaI3lY@w/V0 x_s1eG<yTA oj[yXmM`K[FRFUFOHXMZSe[sf~n;X 3Mg}>c*2SEwav #N_  30?9D<>83.! l\<. yi^KlCU-?('~k`WJI>BG?MMZcr'//JFaKwci~(?Q_rxzlYA-fXBw-\0cFr$]L6)qP8znrqgqjjimipqqo%Ed,AWo?`!$KBhPnz1Tj&)!%  oeF8~ncSFf:V-7!, rj\UMGGDILR]cz~/5F8^SwUnq +4NYjw}zdV?(ziUCz-Y:kMx(hQF,# u\C(y}xw{yv|{z 0Fl!.LWvc"@4aN[w%>Zm   zdW;.ywa\Kv@k5J'@"}mb]QTIQJTW`kv-,@8^FlS`ov (DIbew}xo]N9!thUBw4a:xW7ucRB1!oY;- 8Vt.9U`}!9h:7^C^k<Jlw  paN8& ~kfQNv:f5M%:%{re_WQRJUO`]pv !/';8^BiP\it(9JVgl{}~omVN3#wfUE0[!B Z>{!jZI:+z_I3 %> \y/AUg~ OWhjzw{}zro\Y>8 skQK/^'C!hI+{`\B<)wVH/ /Md(6LXr}&FVagsr{wzsph]QA.zc\B:\!H"pJ7e_IA.#zc N:%:Nl/6OZr!Be -,M;lP^s8A_g}weYF6# vn`VK@k5`*F5"zogbZ]T`Xhex{"=/P:hE|S\ks -1GN\ehuozouhgYN>+~c\E~:d'E% kX4p]T?9$n VC/ $>To17TZu~$Ae$%P=cM\sz(AQds~maT>4qo[XH=o5V$K"/ ' }pjc]\\Zc`ro%8-N5fFwM`ft~8;QTbgmppooeeRQ60vlXK:d(F* zU? sbWD>&$r ^ M5( -AYu.>M`p(Ag '-C5hN[n~ ;J]lxzze]L<-~ti\UCBi,Y-F2$ {uhh\cWc\jkv $!8(M5cEvK^avw  09LNb]mgpjje\WF<&tqXP:f-J*z]D$ugXI?+&}fQA+ 3E^ y.>Q]u~)?g"F?\E`h~3CYaux{mgRL3+ywd`PF;f0^%?8xzhj_`]`chox $!5$J:a=sPXfsy.6FOWbblgjga]NJ4)wtXU8i4H2 cG,xjZM>1&i^F6%"6Hf u,?Jbm $Dc,E2VMXlz+>O]jw}{sl\V>9nlYSEw:o0Q$J,% rrgcb]e_oj~~:(E2aBqKYdo~ )3ALR_]hbhaaWOD4&qaPBi/K!2eM3uoZOA1)w_N>+"=Ng}+?Icj !I]!(82\MtSnt&6LRjh}x}woeWO;4ywc`NFy;k-U(C2{}kmccbcekp{ 4*E/^ElF^^tw#1<IN\Yg\hZaROA3&sdSEl2N$2hW3z#m_LF.,}fY@8 0;V g,9MZp} J]!77XHqVns  1DNbdwrx}wpl\ZC?&olXUBy=i/S"E0 ! }opbj`gemrz 4B8`:hNVdqy %)<AOTZ]__]WTIA1#|a\Bh:S!4mX:{#r \T>7$q[M:+ $-FSo.4LWm }&F_%74SJlUkw(>IWbjruwwpob]OF6&ywd`PFv:h/U$B2 zvjo`k`ohxz 4'@0[?iKVfo| !&9>JQWZ\Z\TTDC+( wk[Hk:V%4u\A}&p\U<9! qgPC3$  '3KV u&6FWj x&Db~"57KCn[d| <?VYgjopolh]YID.&vh^QEs;i/Q%C0 {xkpbmbpkv}/!B4U=lKzYavw ).CARNZVZVROF<0 k`Kq=P*=z_I~)o`OD1)|iYH;+  05P[u7>Xcx,>e{ "25HBi[c~ 0?IY\hgmhgbYVCA(& ooYVFq:i2N!E/! vrohmerk}x($C2Q;iPzSkl36DJNVQZNVFG60s^Ql=Y-7$ zhF6m`OA3#ocKF--  "2;S^z3>Rbu+Ab},5HCaXiv )9DOZ]haj\bRQC8+ ~~ddNKy:a0S%B0!vxjpgoksx'$B-PBfFy\av|.4?GJROTONI?;)  qdQn@[0:"gR~3o$`MD.)wfVF;*'  (5CSgw/7R\s+A`} $'/FF\U~hy!6;NO\\a_\YQI?1)ykcQKs;c2Q%@0!~rujrjsr{ /%8/U?`KzYhs-.??JLNOLJD?4) slQqF[0;'jU:o#_OA.$ wqYP>5+  "08HXi$?QO\WZWQNA?)( yncS~Nw8[7X!:5 {xsormus~ *(;,PBaJv[ht%06C?ODQDJ?<4%wlUsH[2?"' pX}?p)_LB)& t_Y@A*-'%6=N\n 7DZ k+}B_} (-;HYPslt&3>GLTRVONG<9%% znhQ~Pt:`7Q$@0z~rurpvu,!84N;aPqYiv -4;ADGIDG;>+(i^wFY7@"' u\Bm/\Q73|daHF32'$"""*08EQat $,FTh)~G\!0;BSXqfy .4DDOLOLFF46  ~qcY|JsB\2P(?/ !}rzpvvz$!=4J;aQoXlv %34?ACF?D6<(( q\yKV8F$$x`Ik1]L:,q^XCE05$-"*(06>MTit +BMj+uF_}$*4FVQhkv+->>GGIFC<6+# ~sfX~Nn=`8K"B!, $ u}p}s}':4J=`Po\ky((68>???<83(!q`wNV8H*${cMh6`!FA& wg_MK:;/2-026=HNag /7R`)vJ\/5BPUdfy#%94C>C?;6.% |wc^KfCa4J(?/{v{zz%!:0HB\Knch -)94>9;83.&qdnPa;=,/bUg7`(D?$ qdXPEA6;2;6@EM[_w|&9L_1sDgx*2BKQchzv %)83?6<11( wc`yJiF^2H,B*$ ~{}~$"80EE^Jhdh  0)91;340(%wctU\:B/-mUg?`+F:) ylcTSCH;C=EFMX[or<Bb,kM]*0?CScdqv#..433.)#wf`tJlHV0N/80{z"$70FCYMkc|i (&3+6-3(& vkvQYBE,-rZgF`/D>$wg_YNPCMAQIYYgq}6A_4hJc}(-?BQ[cqy#-(1&- vk[vSfB[8F*@($  $%22JBQPn`tn %(.(0#+ zkoS\FC*-x]hL_6D <#|ri_[TQQPVT_coy!, DW9jIg}(*;=QY^hy!(#&  so|YyU`B\8E-=, %%02H@PUk[qty #&&(!%fo\\BE0-xemQX:M)3, |qjc^[YY\_flu 1 < W7gM}e~$$:=PQ\hy~   wl|^vS^E[:C,=*!74?BVPacvn # zslUaJ?05 z~moQ\DG+:$|qocj^iallt$D#L9jQxe '%72MU`\q| zkanQaHU8F-8!/"%//@FQMafql   |toY[JE5/ko_\BJ97+ w|nqllqozz,6,U6]X}b:5HH^aoo   yoy`oS\JV7B2;* !$-2C@JQd`io      ts[XMF4/!vp\]QI6<,$yzuww|#<(LAbTvj 87FB\^ok~yq|\hY`BPBE(:%("   %((,BFHK^dknz      ska\HB;4~p`_WL>:/+ }#7.JB_Uso~ 22H=V[qcyyqt\h[[BP@C*5%,  "'(-?FHK[dhlw  |vs`SMK8,$!zpm_WOI94/$$$4.LI\Wso,*J=QPodvtv~sq^fVYJN8B45*!,58=HUV\dqv|  |vncUNH:-%}ovgZIQD9(,   )73GJ\\sp-%C8QNl[tt|w|tl[h[QCQ@;-:$%!'4:=BSX\`os~|  |wiaVSE8/,s{e_MZB>)7! ,96BR]\ov*"?8SEf\wf~zvona\XYFE@C,/',   $*-2EHJMddih~ tzlcPQH=,%" v{hkOXGJ+9$, /7?BR]cmu'?5Q?`Yy`z~~ztnhc^UQKJ;=22$(  '',4CBMN^[nkztwtfkSMEC-%! skrR_DR4?4$ !#6/DJTThsv} -5-SB\Ntcn~~nhff[SPJF=:-2('%42=@PK\[ld|t|  szdfPQEB-'" zkpTmIR1M&7/,#9/JJZTjs{}(!5'M@\Jo\iw~wtksa[XYMEC?:0/$' $52::QM[Qlfzk|o|afQS@B/*! ~h}_mB]>R!A6( (,!D4JDb\mj8(H8[HnX~cvzwvycla^SXJCCB4*4*! !$/0=:MH[Ql`wivwsz\fPX@=-2" hbuGc 1&,6 F9UA`_vg~ 7,E0YHkPz`nvz|i|fd[dNMKK:8;0%%( !,4@2JJ^Kh^yfq|h^cNY=?20p_vOm<].RD:.$ &.BF:`Db\}m~ 2%F/SBlMt[hs~zqkv^hXaMMEK=525- $"(*@7FB\Kf[w^sqwd|^fJV?B--peQrAe1Z!JD4.#  $)<A$U6\Gp\zj/%B*U@cFwXalz~tnftYhX\EQHE4=7,$'$ !2(74N@UFiYtYol|qfyUkNU8C00 zcTuFp1_)UL <:()  /.FG!Z6+(  $#77JO$]9,+ @F LX+c:mL}]p'?!F5c=fHVYli~zzzkn\^kNhKXCN8E85'2*   '$:-C7U@`HoV|XkhzwwwacyKkJU5H-/% keLFv.j&eT UAF16&(!#..:?JU\,m363171:6AAIOU_go9zG9A7>:;411+~~~|}~xtja]XSPAB:953/-)(%#!  !!""""""""!!  cue dataLISTadtllablTempo: 120.0ukui-session-manager/data/ukui.desktop0000644000175000017500000000027613622453036017036 0ustar fengfeng[Desktop Entry] Type=Application Exec=ukui-session TryExec=ukui-session Name=UKUI Icon= Keywords=session;ukui-session Comment=This session logs you into UKUI #TRANSLATIONS_DIR=translations ukui-session-manager/data/startup.wav0000644000175000017500000126115613622453036016716 0ustar fengfengRIFFfbWAVEfmt DLISTINFOISFTLavf58.20.100data b            !$,(##( ',2!+'#+(!,$6/16&436$8/;0@ @=@)H7L=K5G.K5XB\KTSVQVNRY^cge]dT_L]K_T_T`O[JW@W;T?WKZQI@>-G-K6D<:<679-9"3#)*#2%4$$"##*+!)%,46&5,6(;DIHD>< DC-%-2)xn~v|z{ujunxrn~qhchvpj~t|  !% 5+N<L:E9J@I;U=sRrVXJSR]abam_ufllZjQf`sz|ypkuu~y{kkmXRk~jMFHMYVG;:LR:$ .@/!u.q\b%h!`K=IK7,--(%, obw ~jajsrmeWZwmeptom[FuJsJlAZCb9d+JFKr]xMb4j?uFRM}iwe %* "D*f=r4\]GriBAj|f^}{E%@=# $ E+g+^Ug1lE}}rz)QnHocu w)m;_3JWf@.S@gL^,n:sP3!nfhTcUxcWrUbZ]:V&fCG3['IZA#;ACE3)&}Rs0w;{TCN;5q#9,%?u/q]b#d:1G0c!dX>XQ.T)5O}CY%YqR|Pa*PNirJ(s)qN?Qcr {J[LF,S20[[}`6Zr,rkBhn!%i(0<_Ii+P1fL3_WQ`kvbz[3KCB;nNwa5am#2B?B)A?xUzGIv @H`]zlcz:gJa=-=rw#j8~T$a] R 67[ CRQ)c+^ua#:PE"0MDshkfdS1, dN> I > q]}q,SYP~(K 4 fO,?%]#yj@rkfzguCi1&x Q?_z'RQ&`@'/6 ` -_TtFj5,uLz4vYzu?m (q:'jKFKC2/`Gj8hJu97`o%FfKx+sA2(`acRtjS#S 2O 6t3,E}#jVQRl`hqq+gM AX\9v9&"R M6~+~D_j"[)W J,E!-L{L~@G'xynh\r c!zIJu/I fglG~jA;K+DsgZx%2rTtVCyc ]8BZ5X.M$E)K czoAk'v_ {ub[qY_R[v}%7T~(%Un/qcXc :mjQ UWh]?f~s3u}iU'KL g}kQ@Ykea[U&=Q&z$Ri(%lg_]oJnE#9MDt&YkR1p.Y,W 43bC/aaG 0P/%vVd>=!KAv_%{s/>M,GFal!]y $Px7r%@<&sz+g>dK1TP"jVz=pv]Di2Jo%%4]~\Zg@o"F q+U1D- A:r^zX(Ps N^_?\`\|+;`+e0'@)L8_h\Yl <oU$^5m`A+cUTwot]c m p / ]9%-ft&bM$LxAj)udjZv]+?@P(K[b k74ZP{5F]LY"0zr;VUG*t{90H( l8L(]QmJ8~[cM)31NCl"8Rn;F(hxNo S9<8$^qqf( &nda;?3 PyVl+[- ` vd > u -v ,&  j765+745H-:,_a ^ 8"m  ^3|a_q[jIkbk8^T2ck y:5%(`Q]c-#w;+x59uASJyCdn_L u]] }UC3g=JPHSUBx9d02V8z|f<,17Re8lW[@%ev03=TjX4$}P}-MewLPUj>/a3 :LCXo&!<O2Q  = E  t  f'mfc0z(XRZoQ`)_af&Ef0  % ;d a j g l wJ <AdEYT:d7T1z <~=T' 6q>0{O?&.T] tiW?M:WpaGd';0vuu}l klMW+ 98B0"D T W9%=CbpM 29aOh_wT>JEy Ihw ="gu_kK6rQ"l^g~kD8R' t/  4 =x3oML>dJ(+_*n%5R/ %f2@p>j  H8 8 G e W t(S"Y@>#YFnC !!-Nx&t5 3c% pAJ ]m% +'=8eEtyPI4 MJ Mw   } m B b k h ?`T 'eD  F x.* o 2{$DWe?] \ M  ni /?%  h B 6  6t v6 f ~O}`qrQL7:M)hK} "n D  TJs - A MT<l"^TGa%+6)d# 1*Uu $<.DV c I Y Kq / ? -%P13Q tbV7< ? B   |V+ :X *J 9# wG(uI 69O, n J P R  J 4 '"pJv] vGc 3   ,}YV]|nhY@^\.(\"Y[l  1 1 f+T yaj X O kB&U*{;^1+qW1VcOhq3* Ai7>?cB3YwP|;ko3fgH[ i H>  $9 0 J\  @+ dpC T2g&EZu0:N V s9oHa&V]/: Ai  ^qVn1 JmTf>b&TFKh=[, o4 Ir(OYr!s,3h x\YF   5# < (PLc6E1$U,pY\_u[1WF\}7e:/ck:I,Cz+:4%XoS[ W } n ,b a Vx2  N  U!  8 V , E + O5( / /x&o , @=?z\1     |  Ttf(  yYpHDtV% R A 9 : y ib_t= !y%m)!**R/ 0*)/>.0W,aU)Y)Y(#9a$ r ;OBQBN_il QIf2 y Y?0r<${-[7y h]A/.n?/-zc@{$(['$N\D'a}h \Ko3oKP*! v ܚ.ܵ( m  ] ^ ij t/3 {JJ < P"$*$ ?% ( * '%%'s(;%5I&M* v%Y@( Y Xj 9 (f q D} Rj  uT *&)a$J f#7,D"&a }$ "$t%g! f#7G$0wv~~|x[JeR)W5=Nx xg cnBdz  i 62 4I GR  8   g H LV  i@ 6| ߼s_ x 7 5Y`H + E V g ; !, ; \z)Cb~ u_<:0w_+$j7 ~ yG%&(R$h!'W#$"!28| z ~ ky] Qޏ (?R-TSYjW ? nz>pJN*9C(wR%[zA{3N4 pc{ 0W {  : % A $ S_ e "߭0l i {0 %޶ M;gi@0 i Y@g[+POSsqVi-h_E#'%AtD8IQ{AG#i> E?/R Bfr"sn),++-@.L-:N,$(#T#T^# L wmD rr )hLi(  &Y ~hQ) {" h?OdB3< h 6 [ %N V#޼0ܠIgiC[  q KZ ;f"I=wS*qV>w $J  \  10o { t  \}]  {   Az  Lk  + Nmu  l w KX G0jw#gW0HD7vA cc2+Uz " OGeXanrXcQ [ B  *<}U\)Tv=zLlH3dU& DV 2 ~  <  K e  [m E? o *Xx: V hK 0TjkB3"[8܌ = Q dsl uw.2 8`PS%.u]ETTSv >aCnSEuZ:N8$ /= <  %R&E#j @%)$=/HCo`4 '-G#,/zzO  pi [F`CdP_ o  V  O |P * f #=G #  N  llvUA/#6FEWR h J nU5=Td@=0E^ @;2} ^~ RPkN t[rny D B! 'i.?+y.sus?c M 8F\\ 3FZ34j>H :0" .j  pNj"_DOT={ZT_zb3>U y+h0</n Q\%32v*&ov z~= R P/w Cx2ucll &7f O  DGLG]PH9>vRsFy3'7`2GH {M`;j- NMz}m'ՙԌ`;<, -/ 4A}$QaD\! 7i^jzcFMDX%8yG!iqfN$d` M>w l L +  z ,  2 3g  B T "  ? & $ D  n5 S!Hg]= : || m8 `q&' u c ).6 elq u xD_ J8O?+~6 qILl FGJ'9^uBT#i4z&6e9"o g4+ h t!%n,G0m+`&m,2Y8,:$#%&N*.T1`Z1(%,.H'YW"! K([d:UdP_W#N\XK"&Uhn@ > > T$! Y  A7 r : p S,6[! Li, F  "Z +1#a%1vF= Ru] 3L il> 4V W|mJ1oW\GEG_" >y ]Dr s*;j I<ig!'d[" ""X K)*2'(++E-0(N4B6h5x4W%8:i5,*,,*k'0& " [+ xr* G,6`3EeG1j* _Ԍ kd>;Φw|-FվَۣOڲz BO +U_hFQ1OlmY  LKVpSX'1 i ~u ){S.tgXBS4q n;O#@n\ ۲G|:LӖָ ۽=B ׵ݽj ݀HK _1y$Qpg\aTh' ]c;P[|M" e1TuSj7!g"Q) X&4j,:&C!!H= D'rg]"J"\3 >!C!5E$v;XUK;5E. A !luN2#S3j"( !OWG42g . 2|L;[5^u:. /P cx /Xbu)6Z>!d=$ ""} N ' Bj5 Hji 5oS1I  & _ q.tR#iGYp"Y#{<!] {! ( Y:W6 O}W,7~  $ *D u+.569 u5t%0t/0.|+)){ (4 $q% (6 z# P.{ U4 3 &9 Br)^F0b]1= U? UDB)CkqA xIz]7pjPBK~xkW O  e FfRA W  g  r o  i do )  wG ~ j VC 3.Q|N\umZ=nd!;.A:'ynCC%"S,uf"$-bQ26s#ie" Z]VU"0 :3&HsejSda $ ^3AVmG   t ?   cT t 0p #  }1u`U~ f`(DE'jk2 _  le | <WoUa i10#\t(RVPD/IUL2J-5|H)A+."dA7{,dS^rJ"PD?* ^/ 6@w -A;R7E}h=I =.  eeZpIS;@{):!l4 h1z3 % O  [ UI X MH UnE <ij ' io  5\ % e vA2+N K = {} OB? Y i& ziz  [[ 0 i7  ! 3W0 .( 812  ^({'f+" "'$# L$K &y i &)[+%9!!!RX6L>,xD/ lrU1-7,y  $ })-h4>hOMSqp@;2Bc$>\~]ږM^6pn~V Ҳϙ'>ңd3\݊.C} 3~F} \  54 ) qCECbx\Oy5 [/@-=֤]UسC( Py)߭QF٣7zHҫ-r>rѽ6 dά^e /٫" kRRhx#܎,@6 rXXERP;b(2p( 5}#  K*# {D4 OO3  )9 |~ tXy rXsH ]  ^ N y9  bd5s &Ghys |xH ^f}*ItG׽7<#8_"Pq qV1 #! Owh ;A  XV@G-4 "Fsz6O )g&)q3@1A=>CC)H&BK>oEG@ AzL5L?B@MUEUA5:>9| 8>/* 02?0 &353I[7:@=3 N93o97'@- )? @ I#JTNC8 D@LWF:D9 7C:?2/[)],-%$+& MC! T## M%5' # `(#&%+4!&O%8#/ 1% !( (#"Z"w%X!Y{!%uI"0d!>Z! 7O Q }U" & u $% &!}$, <-'jY'u o)w '4$&'s"R5$l(dH%":!$-"XywC@! VP@%*<\tU  {[R< 1.t G'"= MGra1cV p( kKF,fHZIL V _:d'I^}s Z 7e;jd#D׽#;܄DvK3%s Ulas7Ai(8>_0bEO;Hހ sd.ͺ4v44hu aVutk +g&pۓlK!v Ԙъm qԈ-:ʈ@k?xnfyb[ןz݁ ޿IBvCtZ N7}dֆϽHΓDw̕٩ز)-) kk޽o"!9*t0IG.00"kxH0!W+CveL%* " A 2 Qeq"ހi9.GTi9TpY+] J  VFvW>0! r MS VX P4LY++hAk`_D lTAC!$`")%0L  s _ p;L '6XfP3 Q  61FLc&azwH "| Z 5@_l9ap+q^rC- +W`U*5btUF [\ b{)F Q Rfa܈,+o;@::@z^N fع܆4#2jq;U* lc !8)Q5%r~d:N _ N 2Zn|=  GX\=VK CK.k _lg v Y` h]Q ޭ0`feߘL5\uW߁د۲։;ڻٶITV޿zH}/<.  ^1R>[ {}wNc`H -rzM$s[o!$$Zfr)-;tԔ};ҹ} Δ Œw v` ~ ڑ=3ql$" RhNC r:f@9_jbid3>wz h =|~ U  b ?4@ M&-g /00 -'-/ G,q &]& t* ) D%N&*0 *e#@'s.'V9L@Pz]$++A-,03251:]8b4)43 1.s*F$"a&')!%r("E*&s$v# ("3%(& -x )H'$-[)3|$_0\#/",^6r/6F-13*4=:>9C<5M>/8_?=OBBAD??+=m815#694 /,,I,_4+H*S*n'%&i ' $"g"i#`#~#4# !* F &***+L0#36 ):X 68l4#5 $9 ;9* 6 C7?:7KB5F=6wE3:B(0@G0@1?2:14z/0y/6s10'%pofT kcpxb@Q"y8e eT3 jS% &"\"E$>` m L EF E]g! ]Zj]Xh 5P8&  &H   U x!#h% H.#|T j~Mui}T[~'|^ȵ[Izi˻c[˭_ebԪ@, ؐ)RڗA$, n[ۛ0߼ߎ;:<|-$g 0sZG? dPQ4+0چl.TأB!y~v9`Pܵi|]߂ٌvA[k 7d&wK:O[)My} [/  # hg9D qy+  % dFPxYz S 9af~`Y['^ ٵs;   (\[`  . k "AvK jbu\kSf#.A  X$<.G&% o)' bqe~" i a2 ")-2`jj= P"Hu0ވ! DX D  f ;ޡ/nPEHMh@mcv7qu$5|,  |I W1>o*w7|&"HXthwEr5rwipQH A19^ni  uvFS%N0stEUZ c#" A! i!$C$\ & %#%f' ' &$,!m!!";t'.+(k'a.424`5^;<< @BAx>p;N;6~. ,--*+&& ! r n, }L-f[L%G%e&;'-$1 4~9XA7CXn:x 7w?@=c:8E;(7Z/%-J*@7 4 "n'c)'%( !-G)*'*,.15^&4@26JR<6^;%5j 5'%:#4 H-U"."+0.-,;-h** ,lJ,k,T -f*7*?.J7:2-gGK96B%|pް>ߋp!BiۋJVҐIǶKɫBnXIɾ'żxۄں3V<FͩpB.4ޮEz{ʄ Oa_n֡G.PHbO׏kq?q6]'18ϖL[ hu۵v#Sd,Rz[2+jFlC,onUSB-g-(Ʒܑy|vูܻĶz2'n -TyS͗ ی V.C- U.d}9ߦݫFF”Ad̎ ͽD#.  K x {X< %))T04#t4n3%44/)#'"t=]  / 6$ !o'ul1gc+2 .6_:C"#4#*.r36!E4y0}5,|"3^a"zk82R[ u u U2] eJ*jO2#S +'FDW;X p.'% ? P/ X# X$#DJ#:%%(K+& T { G"5x'y%a9U##!! #"{$A!##"\1q!f'5!*D&H%&o w!t % e'5' &p}&(+c)h&#V#~ k D ( l  > e  : 8` I@  U { hX `' = C u 81xq%aRse[ ;O5Q ewpa~${ ,(0$GH!YB"! #&/%Z%6**%!8$^I&b$\]yh20 S ]d@z-9Zy"N"\_ I" m@  " SzGE  l =zW zRe "cQP*/V7ڼ~6GOE-'9A  Y ,x ! Z':k,[a/F. *O*|,5 1- , ,.)1% G"f jk n+\+KA Bt U. [f K Z Ae"$(+B\z; D_7RG2ׇտGۢe ыݷT݈Lݍ"qڣL0޹3V6BnًՉD T +Ftfb5Y2epb('*d>p15  aL  rP (? ! 4 "$,"? I? mnRS#2oMG;ߕWو3^m݁ܫ"` iFON_~ n+CmՀRToь3 ks4^ۉ/b`5j\7"k9-I^_1r%|{ Uuq-l/!evq#D .xuGHۗS ^M!#pO*4q#;C)_P s1dhd ܁9z$ ?H! - -L wY -eVZ " YXG VZx5~g rV:Qq3 `=2VD@M5 b =ybY[N B N0 f>tN6!W .="6:`- x8,&WHJ ; '  N 8 & -16~;? =>7KY2l-'!qYc"R%") $J'&l&*z%/Y1{N34957Ib;:72 '5"!$0",%&*&&(]'[%(")H (*K&iK  C p  r   G . \RJF M ; $ V=A!xn")"=8 h"= s!1" $)"F(R;W4z@}![!S$f (#%!d#2*,b*-~ u7 y? oCg C&C%B,?6;7J53$V,D'D'-(R"(j%gVGbT}- ch$no>4`c (Td}ݽiSݧ#:}yv6 : w -  j; rJ8 f  V_d"U"U? f Q( )v$#%U&&Pn) F/m n0 /R48x.61L5,&#a" i  R +EI+U Uq5ߘډ(Q 4&  (Rw@H8 `Fp =Q}D Z0B+JTO&p r| U , < R Y (S3:@(GJ4$OUc$X$4UNT.VGY]l_[ UY|YUTN1C;<*<03|.Rz/C+W& =}Zt%8V !, 12= 08t ?>EHPK8NP T [ta(glqkf8g2e\TUE6A)8i?4( ـq4$*۶s &wJP$ApSfeTDK5z;]bU"=vEީ)ܭ߯B[Qߠm KfjvC&Hܐ4vӇ* (ђ̻<;Ƙ:$Ϲϴע|р<ܠ؞Kحc4HJa=I_^o(h94VLۼٛ6iܝ~±ޓn Ė<źYm\u"ipeٰbd߇߶ݴE;@=)ߝԭAjѐЯзϪбa_ Qdq3qf&3ȲƦC†IǃΦcѩ ` T kG5 Y# ufɹ]s͈)V\=̴Ћ՟vahZ6yocR+ p gY O@/}u d}akxnkC'z/A5;jJo2,&xUz7r\1'-&*0 +E<,&|Y 4"=x"P%ts,-.+()p/0t03wj21I56p4-46EK4i|.1+}s*'r:"_ !r !|j 0~!7:!1Q{iAp  { v/gK&]Q3lUc7TL d\rS }  V [ ?  J `  l W $ S 2 NxSh  R Cj!!tsREC),߁דr׿ҥBEwöYǸO`5ʓD{Ǿxþ-^ ǰhʚ';̧rV7 ۛ'ŭYq ;sʹ|̵}̖iIՃ$;6vؼԿ'J{;:_I ʾ"I΍ṿ̵\8sW~ķwbB!Iȱ[+VĻҶg+?euķ9Q"tѨ:êjǬA|l0rSl&m(Ωг[;ƏНŃk02,%ΐqaA 4/N:o[4 I/U!yhQ d 1 .BLyp{pW\s 7zE"#O!" $#'+(h&C'""g"k"o$%$r'#X("( 3'u'(L*j+3* )-+,t-/12q5~8` D?hJ>HN9L6WKs6J5H3H2Hh1G1BH1I0H#/LFd,3C)@(N?'n<%':!%~:$;!"}; 98G8V4Z/ ,N O+D 3+ , +> (C(AT*B(%& '$"X# m QRSXSq i% q 0u u h,; yO!n"Pw"#G',2!c6$$;72#9">z"-Em!^K NPlQ,OJHGZEE?EBCFuBa? mA. C!CICA}; 7&75V233/53"/4B"14#5'h7*6U)\4$p6#n:$9 := 'wTE&W)X\*S&Ph%jNe&I,%Et%FR(lFv)C*A+?,;.,7O+8.9%34622_3Q698;b8-;v<UA@=C4K;;&K8L8tK5IX4JH4Kw4IF3C.`=*J:,w6.D0/).v#,-/70163D33] 4 Q7 g;b=>E=<=@"A"A"sA<"W@n"2@{#:AM$A#@d!= "/=o#;%&;{)=?*E?Y'=Z$P=' <<=;D::#;?=0 @ BwAM@=BC8 XA = #;u%:(:`-:1:076.2.|//-.(.'1N(0#.w1 2&H57!7U"5+43z02+%]!C   ]/}_ .|b!woq--!iV&|&s(]*Z&$Q&68%T!  &    F   ~ C     _.S  { V v] ;X\GFp P%8n}bdY~ l  | }uRMHSrD@_th #8;*V\`|Vp2!7)WWBx@woMpNFV!n2eĹ Ό˾%y̐yҫ"ۜ1k V s<4_"*#*M/-.586t1,*NO'2& '9&Y$5#_$83(*#)(F(]7*>S-T0U11g>46g5O5W5a2*+0(`+.,e)'*&7$"%k9>{j D%s B[ ,NaM&[#'+/x=2cy5E:=A:EDuA? W?S@Z@ =!> >T < 39' 5U I3W .1 10 b3/ 6, 5q7947d7/9Y6K4R3M2344[5676-42*.w!)#* Qx1  N |݀Sڀ}?χV' דF.3 ӻ}aͪAаԕsHDI"ӹфS3ג!hü՞}h>U$Ͻ_Mxȱ9M/PD!mη<$7mǶĴuAnɭ 86ުݬеܯXN߱<)5iܰ=]믆Ӯܝ3ӘC-z8֥7񡖗ޔӚ;??UО=CnҤ6֡!֬Х Mѯ)?pKUհ eϱճܰݷuM˷ʬd#Zu@o>́X>էgޠL̟ק[׬ص-O-ٝܰ7QtޞC~g˝!ډp1܉܀zeO:ėʒܹ^ߗYו (g~3֣ٞ  9]=⦾F72JlNjun8ˍp҉lWЧЏuΗ/PϦԣ/$׷U,1?'%C4J y8 w oCG|RJa<Q* m x`@EZ aw a w)a; y%Fq)-x/'1G5 4s 46=61-w.+YP) <& "## $#I B eN  ;| l hot+7o!#L!]s`]  "/: ' a`8s]b-cTW#V%''(g)-$47:c<^l>/C/g-)Y+>+( -+*,Y,q)J'')) s*{ 6)V ]$a eZ   0 - B q 0VobIc3r(0m T +e!#U&[,135_65Z5778;@PBK}@A_G!LfO N?5OxLNDJRJLgHv!G%K /M VMOM@LLbIGlHC;p:9=>e"=O";7 98 9"'<%u<&;';)G:)M;0+%?/>1:/S7,3*z/*},Z+),'.!-*G*s,\+ U'0&l2(*'E'})`(|%z'.[:2>0K. 2 6kp:1>?bu=># B^cCD zH!J$ G XG#J%L$NJFmD= E>BEJA'Ao?[>vk@ ~?:3?ll?i:_6!`7#7t&?8*x8&.}63o686.:1w<*/N?.A>,<0)#='=&>&?T'~@&AE%A#A#@!<886_3/^* & !6 | )((ML Z # ( o,! . /k123UV2055/-IN."-h%+&B,n),K+?)$+%,!v-n(,,P>.Q-+ -a m,]@+ - f.*&*! .U 100/05167:;?<p=={>?Fr>=> H<.:;1 ;gk8U63z0(F-)[&#!% "3K:0rq0asTZg !1 G"AQ'pO#qU&!&%$""nr#"!!z"$#x VY!E"'Jw5$"![]%%_"!#zj%1#$ $>["C4&vU@J>h0 }. qa>Oc-b/}sr:Q:#Ch*X)2 g {UMI~=~Ϥ͕- Κ͂̾9˅k,tYg_(]4[mq1`h(9LL^Hb /P|_59/z x4xS_ X @+{%., -^ c3 V=@Q@ECDFbKfLGNQ!HQ\"7OxR!T&DL/ FF9E <588@4QA5 6 .+,o.G.n2z?4"*>) 1'N34(7(?,?+*~@(oD+~A'>3% ?`'=) @P.A71:*:(7?o+o=u'9<_$>J%:g ^5?4,$$%&R4%&  R)2,#+j,5/;78OA"Er!K U$\&U`'{a(av*|c/f3h4hq7hv9g2:@ks=Wn'@#l`>6h;g:j?ibAa<];[=[U:Q7Q[8Jc3G1M7L_9hH6F4D1VGj2CMG6J1G.;J2F1@w.C0D0?BU0C3>/8F)<,>0U:%.o8@.3,&,(U*);))%B&3&'l$W%]+ 1#AGC H    <>2TS 8 %Rh/L   |  o] aj@^Wa(=b n+K K4d7 uY}7bV?OGUW}@yvMpVvX3@9猾!۵֫VǼ=եY|; G%ȭQAܞG>\|٩vgvxɮZ٢9zƱ3JZɾֶAζ:ּĿDzఅdz;)̀@u}ϵ1ưtѿ"өੈ^<Ĭ$m!)M"CσU϶O7q WFq˯!ɣVݯU<I$K <ɝ!_Ok5)0xO"n¦Օ@֮fI^ܸH媼Z䉽G*¦}yORYúAҏĽ-ԄӍ͒YͺA.ț/ʿȘ›?ɨ^άc(o}0Ԇ&մ'ԏTFђ1 ѕBQҞ2M݂Ի $Wј΋ ]ٵܨݻ9F ߉۠؎~c>XHi72..gȤL߽y$H_rTۆTۈDܰX};0q7YD@{ %Ǣҟly-A\( s]SݍM5k@I,@<6L|4$q}]ݥLb*j WrBVwrb޴ޜ E ` Vz | 6 b U3yL\Wc O ]n l D  A ڠ׌T \φ\ˋȓ>Od ׼#1Z^Je^ ŊHxJ2 Lե&إ^۰VH 3& (*p+9p)/Fi:;=!B|?:;;xx8828U8A9,8[84k*#${#N9!0Ly}romsj> cj {w e, !N>. FqO j< I  Fo j `cP7, 8 u5Yt!3$|#&C'%{&r%a#L% H&C% /2  qTun 7EM#Ms+!:!$7 )*)-)* 0+]k*o+?,?3)D"I(&( ($)W ?,F,!+,l%+_& _"m !W \!3_3H~k>,KAxE   O"  "J&N,0-a+.T11p035^4V8L{>;@?BTF=K^O5N7M=PPTPSQ4 PT'UAU M( KL(KU`H< B3b;587;%5e1,V%X uڬ{GˇhGɼBpɇuŻ)"L!"}N&A({)&'n,t+y'&0R%'(Lך$x׳ud,V + Z6s)HRx0 %d I t UFD&%G}FsGt,f?l @H 9 M  P  +L l  ?y {fi[c,A CE . $B&q%C(+-14R7&8D3-,-+%ja!%{tt|M N(M[HcEbH 1E 9_`PKC =ADGD[CD$E^kH4]KDMPQ NP;Q-UmVd=Y\o_b|go kekf1bc e.De.)fp d!9_3 ~]|$_,\-V4-U1R4Nz5^K9G<+C=hANA?E#?I?vM>;M?9M?M=K>[MBQAPaAOCQCPE PKSRWWXWnV SPGTrOXPnWVN4S!JPSFuM]CLF$>&A=C?p1?2i@5>5d;i4<827282272151k4(2p43585?<)2;-;*p<%<[ ;9 ]7 7O9<9658f<<6579l>[@AJ?l-=|?EܢE6A'޼@4?y=><8};:q;?<&5=D7j 203[. % "[ s& WfiHy]H5,p>g|  +t* 3   N z I?B!l"{"p$'D('##"{6"Fa"U":)O`X1X=ʘ£¤Ȃ̗Kg>[S˭˧;MЎͧ ,֬ ׫h٪;IhA8AX![Zo)9G`QI] B q k0 !0p{$ H6+Z)۔ݧX܊پڔHoaܘ׀ڷaW‡Fֻƺ&g3䋿ky:р%2@Ԋ2bܺהRATy 1@!( N5FgjKϭ4oּ+Ցٗrۻ7beVOg^9q ,(ܭS,ϻ:05SɾcL:v:ӿO9f:0Y̌eظIhyU ڹƌWLeK⻯ͨ~dܗgӗpٜYWN3i !^(xEN>to8\ZnDe(pFSʌx΅&־g'5OP״/պ~$_>,8ȗ1Ĝ! p ȧƋ;5ɅgNSN4~:\ܶ9ևڷطZ""x S=ݪܘ n=WkD= ( &  Wbr% + ]@a{F)Ccڬ! j\)-O x"Cc :r  u1Q:Y  } ?9 D}3eLlW@'"'g M]ms: ޏ{I ԟl҇;%ɩS jFu- ϼ ooȞH I h, ͂ 4W ?y ޥs# 07  1]iBݔ@Y#rT֍(Өt=z[ֵy啳b簰懭saUOM0~vvOJjW ':3]i׼}aGôQĞ^Dh9uWcjaVc4IOLBXͯˣLXC%sSӆ>tk,׋  ء o Jۚ 4 #}نRA._YF*KUE.h"(Niתniی3`xں= B7M}NtC6,hbwoLX܌ ׁY˥!1OҩzӴ %WmY4ֵٷg?`2Vq z bz!,%&.(=*3E;'>I>@DG"FB E@ A=~ E?Iz@8BzAz@AAT}?s@JCHeCoFY'LR N+ N Nf PvTBV\T~RRRP OZ#P&PM(P(P+SK1T 4OS3J3C4L39@8Bv9oD:Ci7C]67F9F9-GK9M$l4lZ4Jku3Bhj1fV1g25g1f/h/2gA3b1]D1V/ L]-D:.5A8@W7V@4AT4\A3>/t>/?.>*n;v':v(8A'a3"3"6h#3 %3t7$7Y#34!4$C.")"b(G'$* *!,%12%O0b"5.h#1"641(1H459 7 ;>!W?GB-DBbCDEC@dA-Ax=:kk9062K11ݮ0R'2ݩ0-Pِ.S1S.!+Q,j*M%$y&' : 8 mw.{T[ % [d c FhWwVHX%  A  ZyYt oJdWR=*!J!?! %Y&% & $8r! Y%P s2a}Yb&HN4݃[S#m]KB5 p]C3m|otCCzC Vh}  V I "_lUqy305w L>    &W:`8"=5\t >pzHP+P+s ڹQ\փ^.S ׁc GܩHiq+p QARSX!w5(#(*L.91+5`:7;]S9F9"95x59-=B REI F E\DB0A<>98!9('8P*6,.61`1-3)k2M#5[Z7`41 4t5/0.S0 A/m, /x1,(p*+6+ܦ(u,0,.(,F06E05a,-U-5)h=)l+$)G&?|&m&%^#"kݮ"^ڮ /֤V!XO]4Y"͊&&&Џ'(4-Nڙ0= /?ٍ0t$503Bk0mz31+hO);(# "+$ ! P "svNc!C`wZM-=^L| X!a7f{ J7 Z"9Nx%l]Bk}YyV * K`d2O{_SuN|. ^ S هi=} @AY/nʡƔ(l+ìM IdE[ƺ2ʪߺfܤkw\ٜg ҘBPAԉcӁmϺ= ΡbE Ƞq  Ieο1X: v   NPC-R9ʯ & zf}L؛ o hٖ"+u;{" w Cx M  Z~2jp)tܖ>6tղ210'}mH'Ҝ!ު8MkQN`{{]IdZ)]J " 2 m 8 e $v I` V[ DsZ2#%+)01613"30/Q33 s02 8,%8m5 4w P0 ',#"nxJ1s.(bk 1kGk%Iqs(#W&&&)c+-/g245+7r9^::^;';089;;h62c42 . /0~,d +uj.&-z(AJ(v*UF+3*)d'%!X N q>L  {l +4 !.KbB f~OrzÒawu yO%[vdЬlQh瓺?)H^ƩɑHh`'pǾİ1hI]đn<+ƎŇJ*: ̬ BҎР(M _\mNZw)#M%u/׏̷5Z.g഻⨷W8ߚߔޖ~iŞh߬zYNN٧+}ڭ^ڭsڟuBؿGO溍ZlLi:S⟻ p蹼xljt*Õ_VLRp[uv*v`TrL"֯f*_x< pӸ{9+aZДlE } ϧѽ P *؛ն\އ B lKP,95O8,G6Cxr rbt'mo~M!*"EF%k+a0a//7#1C34Y8:BC<<CKu4PVQTX'ZxYmtZYOXWSC O-ˡ@|-AC;ؠF&G$HqHݨG IߞJ=K8N0O@eM)LMY MfMtMR M=M,MfNVOMK"PaSOOR7IS<UQAPN)LNN- NLJI$G'C+0B1tC5A#8=<?W@@2@?^?j?AgAX>]==<>F8 5%5'2/)e/1*<.'q+%)%)x$-)"&%$)#!+@!J+l*R+,-.-,m, 0 A4I16:a-AUD mEIUL$ L,%KJFCEI|TG FJ/J+D`dACDPBFBCC@ @>@;9YV6/F,e.t1"P37S<:[>?>W=0;6144w3J0E0^/(-pw*% fspY :CGc#VB4'%W [}+B72 &  sKr#"#"u$|( L#1 VM &A E afA6FKnNO}SVhmY+^1lb-dgUhg[jib84a fdu b9^<\NZMG8EgHEdEX D@d>i<8V6684*{1'U090P/.gd,]-7-B+f)~v*)P%t"s#V"5Q&ϡOɤs~λa5k*x*vQl~p7N</3ҍ ق KۿX1>G! }6@NrO`%<B@M.$ *i%r0> I g 4C'R <2:m[BV)v"֕^ )&Aǯ1OOgA-pn@X-Z"DqQūv3t@5ј3>YݾPt[؂*ՑԘ$׆6=!Q}N-s%ZQ!H#e&@$qU]jc|fxҁzDʷ ; A_ Z n <(Q l t4/k  S! $ F ; 9H P b 4 ^ A1y}F9 >cYoH> amP7o>tw S#צ?+"͓ǷRY\Dع=۸Cg il0̿IqǾ2׊FtOBy$ic-&S0{C.@m tD(`b~LHNp?^` tS2;!!!>q!9ƥ!#Ă 5"罣%0"SM0 V 8_srbV?G^8І_ڸU"|S"A}"6MS*Gz0wZ&A7bgnl= &߸z$ ءx.Z,ԁsѭLD'~N1S WKLljտS mrHcܳvۈ;WsڅC:אu؟g֔{֒? qpx]nm)ם!Ԁ(/I00MI10.Y,v'O $ $+K WLre* <d  vZ9Nr3 A%=V&k&5'yH(>)*ڊ-g/./L10&2ɫE4a43䢩4t32G5}5543}31QP10P0$E1r0p-+[,"x-͆,L* ρ()4(ѥ'S&&$}%y:'׉&$7Ե"Z҇"W"͕#,#u!~ɽʢ# <vԜ۬"G*Z mk o ^x.LwrYs  0 F 0{r A \wEqNV`,}DGy%οz w1 G7hg;_Mu J 5 3.! " *$d")N x[ T;9EI+<o "#&&r(,%/Y/g/2u2-E+, (E%&)$ vVR Y~`@ z3PiKB|M9/ "'`#6+ 3 E8wI>%CFi/M2RJRKTz[`}Ma#bf gb_B]W ^SKNQGN$M:JKjXHAF-5D?== ;F;|\;4<&A}E hE E @GPFFxECBA@b&?wf=:7p4g.jo)$:K 4    Z rJ  l / 7 bf#'S/G7<?KOBExGHYIhG.G!I H| OF B =z9=5K.~;&e ]6 (}JqrCN+A+B#xA&9Q&v*39773:0|H-'0g"o{ w9: ]e #"<$ 'J)z,t/r.2&4{6Y8E!8J79@87x9nF:8:;97677f2./'.)q'kM&pv#G!N!^sBYuigOA)-s ؔѾt+a4[}{!񂨁ɥӠtx쫣[;:ӧff\q:TG4> |u/yH܅5h9 vҾ Եה5մ&֭]_ptV.IXTKW ܫ@ۿbq3gٹ ,ױ!H"Q3Nlh& SUCWĝ6% $? obQ o 6 z lWaV69E|xy +m,g 5/ ';->26@EsHMLONO7gQ+PLKWOKV KeTJG D?79420'l"% t3Rl 49 8E] `o.A[ " &&>* 15S^58(;*b<b?BDE&$GDJ#K_FBI.C=5N4r3;/-/l.*.b6f+6 3]P58x: ; @ D ]D3EI GhA?}|?= 7S=-Lz'f"R z c q  Ve v , v$ZHz1p&MՂԁݍݔ5 o 8;!% ) &$) D+"%h)}'D2C,]1'0H#8$>"2B D DY3DAV'><877Er1b++(i!d$; ` fT '%7'c 8K+#*2YV6-5p31 3M6Sx8{6416%1i33c/t-O.9 *P "1bv}EG !#m'8-/2";@AmdF L LPJ(LK^>F>`BjA?gZ <.88340,*G&!k!B8 Nk15a"\2F; -A ) * YP 3/(ӾŶȯ,YX {=)>5;U[BϜ x-u ;; 4@_rg :GT Xn( X+Y%@p#ٶ<#k /ǃC%Ȼ r } 4vxȎRqE 7[ 2    kBᦺ2i9bɱ,/2 ݿ BIpĆ΅X(ُTh*:FuZq  {5qZMg j 'T JU)ne$ 2*߾+0:%ݶ>K?A ٕE GeܐECCKDc7?k>ܩ9ڤ9)8_+2۝,ڸ&Qw96^ک-d2! RR3 &)w)P1CB1H2%9@LDCCNA EkI.IJLEI DGJ@9 n1,F-++*'z(.I1>1>33466 9Y?ACvDBOL?h ̌,' r Yl.6;bE  I  #q $RN&x&Q*"'*#&*p),E+|.*,+,e..-<-M,+/-3B032.L/+05+M2+-'K$1 !"!_WV~}l!![K"%A)+ (<'ud)rJ-K267C:uu?EB7@>\?\?ށ=:;N]:9-86 2Sm*jΞ$:L% S$!ġqǼALj сZ+ ׎Qa {j^\ D|,7dG3 O X?`5iSIe;&+ "4/%} ޥ!EZߗ/ wہv F!pa1҆^ҷ\NׅЁө,̆ OnH¼ٽɺa9SCTFzοdr ݧ ފ T e8x)&HuI`vN QP?fەڸ اѴЦ u){໥" gȼE Uɹ8ߺV bu#[rֶLÎoᅼwRyNċҋ>*(dɬʩ?@  --6c<\@?.CقGJ?MނP,Q6jPPg=QMFIEaSA@R:}0("r|4 0# Sn-vu ] b  7#_ (,-9,0$36S6n4m31 25ٜ4x0,!)X&!%#*_ed,N$ yP +>\d!o  "~M,"}Z^\_>o78tfܩևkH]j*gb$\VxRJL/E8AA"BEL{jTXq]Y8cc`89\_VORN&I E)aB >t:7M2*4$}|@' %Pam  b -B~5X!0$ )^-(0;p5{7,93<c<:s9>:v;2}9$7 M7^=6~4 M1z'-,(g%$I# a83ZDh   4u$j% h2 x- =" $ X p c[3I fMq.&@@o 텽nźp$ʕ!|0όt҇AfI|DJ$y@3+@oQ4KIg\f_ߜ5P` ʆ@ǬƸ|Ý9̷ * 2 Bܛ} G! VQ&Rd`p}ՒPv^> }} ۠  9 Ett{w"Pm6|tab?Heȳ9r tZOeG0h-izhf5`KU߹\M +8Z Vg! ;ؔ K%%B9&''$޻!q ܜ!qݜ#ތ!}ރ oؽP ^@λo-֔Oݵ9V6DP{ &2s>BH?OV^\_6`aCcd6cK&dwRgfDicDdcWb=Z SOH7C@(W@8AFqD&3HPJL9MIFFqCJ!BIEFSGAI$JILF?h7L1+ C#F( (x , T  R  {5 ]  x P ,plaUq5C!D&q+o3"9#>?"E"M$bWi'_p(c')uf%+in-jX.Ih,xf*h,i.Se+a)W_)]6)a[(,Y)T(AMM%/Ey#=" 6"`2#|03%.%c/5'1!*Y.S*Y*{,(1%-4s4l4^}5;80;K=?VBJEPGI J[KS L%JHED:F1FB)=859<64ה3.+1+J'V6%%$K#U%&`$7#J#z!227 V?h X#5Zf[mK=,f0o j'`w8iSkfAH#+LrqSI,)!1Ma*5֫0i޿ЫA)r҄i>LٞyeY߮S꫽傥惟Y2탚s˛ zoG ܋m}0_9XAS=FVrD֛ܚҕ7:VOŢe0᯿ ܺu2" :R,V۴.ٶ,d!p珶q@ߋ-ɷb޶իYA߷)ɱfޮ)H̵WQ#*εlm>8DzM$Z,99يD?*A{CCC>i;j9533j2A-((%ҭ!hm,qnPI#]&&tQX F *Ii%]) C*!)$(&$'&&\& '%%i$%g4&##,?%~##&O%{I%&N(+,^+ 8+P.J0/],* +M*)Q8)S))).*:(e% $c$,G!\mC   Gp߼ '$1+Ιo_;gg B 0G0{d3  2 #&@&#'m)D'#"=[!d)!{'%%C j"E  ql0"P2's*,Z>+(k&yI"v8 62h܀ `$h Zrm4Mפ6Zܴk#MrQ}s]U ZnMo*7@J[HRsPrU WWvW>5Y|\_*badd)/cbS_VXqLgB#i7Pߥ-&v%kDߝ1ަ@Mo E+'O/%hjv#Y:Gp$E/RlNdd\- I5Af[a l 6  >b[^>%s\ ~^e$e.n[F7l W#&6h??:!E!/ӽrѪUʅ(˨ ɋN"8ͬ-z+:*%N E'U/4?([F:JN!OMd! KE M#Q&Q#O\O\NJND9=M 5 /)#$G z"#)='.)G'D%$#S#~J!"z&()m-,2;1p//Y.)5!*iS}xlF9ߴP։/AeuKf9 7 KZ"[,jE5@tKiS !>YB!_i#e%h&i' f 'a% `%v^$["PX TfQKB:3$L,Q&H|"Xo I.H#I'8+R/1 [2l 5 '90 998Z8MB8975 3/+i& "vוԍXWƻ Ʊ^6ٲ R$Xb]7 !"ZKZ2 C~ dn$C6e ; G`ru; B ` mP ZK0Aa?H@m+U'zc:htDPQޙEzբQWɣݝ'\!mƶTNt.8fF 'a!GՋ4 !8$#"if$&x&#" jg;2 HuoMZ (n؟ ֵЦN߾3)7y§a8JVɜ\Ȇ`Aݒȁmj4d\ٙ҂߼ƍTú ໷OƉP̾y;kyڬ\tǼ-bئEn E+/4<,E)KM QS4 S* nQ PsQ<P}K*G5Ax<7- +!   BjX ?  JwC<nf!-'*-168j857s8865y30.*x.X)!sخ+ T7HIDxdc=y`|0 vO M )F\!O>' *",$X/u(/**l+$+C3,B.|0 0c/x/ .O*&}$#!#{#"Z##$~${$>$$%\&? ' y)d,-5.,0Y:1$ 0Q!1e"1-)&%_ #?yr3{ 3L8kژI̤ou4S-͋YLs ==?U*,"'8,f 0M 1q1*333<}/--4,($X!^#$6CLEjO}20r !9!P!mI3  6)] '{yDܺ.e XfdgrUۿ+ Ԭg) g>4moN-p5 h9&+[1j8H?0A2@MD8GMED*C/bAs=9j4j,#x-9@iܞ: >Kܴn(2cޫNJ,mf$5T& )YCVwow 8 0N!ق^Iяy2ܑ̜tEgZ/e++=IgŞKŮː6"%;<5Lp.($3$ ^Q݋ p,!ޖ"ݘ%GR(@ޞ*p,S;- .02|8?CNEfMmSJS~@S>5TTSwROK<E|@i;4+""lEzL. N 8rb!$'?/9 7n?G J$|M^-=T3W6YW8#Xw9X7W6/W+7W5V0zQ,L)fG#@n930 + $^ $  kN v #0  bsr-RsR- OAQ ߮ ~ b д%Lìz"g@P"‹FLJ;{~ s l O=)k$H/(,P0S2831 5 6 42 1]2X1.E-],B+W)&-ݔ" Q~ Y1tm`D 9"|##$:$P%}d%`#V#׺,(+,eS- .u0245;{4[0k./z- )Fg%0#1B#|Ѻ,Mb(q :!k(isVyx MŇ Ĺ2vǾ n!JSP4V0 ~݂6{>LK<5s%{_G7foԦL)l#l3:>wnDO[#jdj=  lEӈ+)7J: If횫{I捲J϶錽h nmu3ܬU #%I.a4f8=; NC F& H8 zI% I IUcIF&?Q61-'& t-rEzQnՊD2o !`T܁N"!x !!^#"Bk5tw2*3 9ݢeG9pߍ*:5- UrxX%-I5)ܑ#,* g ֔ C\% 'Z) ~X>z GAU} u ^ J | 3sl{*(4~BZ o .0B} tla` !t Y4|tX5{L@! D_4>6 pC!eݳ>ͽͲ^ 1J W&̍{ b*#ʿ͔ xYc $)y,X1(540\;0v . .]-23)5]#!V n f ? [hJ'-/[U=k[qtD"XmOp֋[}7еͥsͲ.#[Q9pJUzýĕ-lh dӍ، z c a!L(-1 l7'=4A9;CWDFYGFFEB = |7!`1L!d'qRFne6e%g9${ٖ5sٚn"\!%I(+B./:. -.(r-*r('-$j =K o2>65@)WZ|6#O{Ber3h 9Q"Y'>P-\1*1;1]3699777530-q* )ۙ%ؙ"Y@! "&H$ F%R$x### #%N@%6<$x $ %&#/( **&#K dg )He l+m۫t?N_a4Laϔ9"~n)  (g;# !&,8.$ /"/":.g$-(0+2W,0x*-~(+t') %&!L    !     Y W:#.'*/'+] :  =9Ln*$,kK7(.k|ΰʡRjϏޮ(7tߙvYF D~d$("+,-f^/12Q3tB3 1/).,+)DY($ GQEP߶JDN٨o׳x%0݈W2~| tߕߞJܮ|[ޖt.}``׫ѣKŁ)ë , t!;ft[ ԿG!Gf&~ч*ֈ.q4z7A8ܝ:ݖ?"C~nFFGGHMHIE A ;`40e0:Ю.N+4'(Đ*4+.ť12L1LJ1 ƥ2E8ƺ>DIcΧM3πP=TqWCYY!YXY58 1_1,**(!"z S W   'i#?E [L  {, ,Z E %     BֳΧ%ȘA ѶOH%Lgy+QQlunU ׁ {\f0 &E+ / 4m9Ma:0 @9 : = > > >e8>>>W=M>FFn hH oKu@kokJدڕDsٝ1f,P(^*ukn2,305v2664j2/7-*)`&~W\ [F$Ӓ^`}3X$Z2eo / I0 n dT`cu 2HS S v#KLd %dc " P@&m~]!< K iYtbSlvY4'4M֙Tͧ(ָyе޳JIVùO5NTzzéǀ#e S prnNko:}gO6 J p WoL,Hgoӏ?>wsˤ˹ޛ_|K9sPgʲSv%>ބ09gڭTԿPѩҟn?̊ʤ֬\ɏ-; qm"qjc(*| | Ds i_uj=wlZkI ^$V),O|2@78778::99:Q=H=9f8 *6_10/8*]p%3h#Y#$t"jcU 4{!b&El)i*<)'N&W"Bnz:`~ D | g t  h t|ޅ(IkO-ˊ2RҵҵLؒڸ7 0e?/O,d*P)@'L1%"I, aQQxٻcIЩ͜F'EԵp@!K-pcBG^xMhU9*?(]=w؉Ԝ߉BP,%ҦeҏI,@ ;:2C865C*3y/*@#UA S& 8F4 }b ]mVzfQa ."#W(*,f,z3|.;1>3Az4}E6pF5G3J3I91H-(J,K,I(E$ A^!<'z5e,&#G% 7 o x^i<5uxOT z/> ]]OYi[XrlmZbMh#O[QĸS%4a@{VqJf 8 g5 S[z*" &+<((X+b-F+' 'z ( *,,g*a&)&$ڨ#,O ˗ƹ1U00tO`Vȸ׬%X! 4$8&ߧ"csL~3עԖ$Ϯdw$  4L4|н[߿(\¯K¾× ɂ$Ս f5߫<$=!O$%c&-(Z'U$# #D$u#>!> &q/#-фЉPPG ?5>}ۋ\ެj{lhPUh(d%eeҹڒ*i?Y̳|gٍOۤPAgTj#\pkx R # &: )Y+jT-^2/ S1 36 r44B4tr3`1/+"&zi@yZNExvS [ & | ,}61Z% e yco{$^ OWi@K25^ EYq,L02 }. 5U yN&|-/4%<CHYLeXN{QRP8MN9M#K0HBFb5C =5n-%[ o "G'R;G ݝJk > }kLh;v ]f # =B8ݥrVT0ؼ!߶߸cK4m} /VBW #$u! ^! ;ME  n/cvAA^ߍ+ _ n Wnv\nKLk}ݩh9N|*rAűyİ9v9:]LeJ2]]Xr0k^  y @ J ~   U  d ]:P#sd~/ A]ޫVWӐߕӂрF|%Ϋ˽G(7BЛ2RC?wܫ6܊ +AmܓsWS߁ݷ*!Ёٛdϒۅ'ڏҍD֦܊\ߩޱ2{m[x+ W Y#( #, K/L1E/Dc- / :1 0 E/['/Y S/x . *$ r X0# +<%D>9.UISVM]F V l  1 t  % O  ^ tW= g o J eh o c e:;[=,3# !'%+ */,:2+02,+ 2*Q2+2,3,l3>+2+3s+5(5$I3!23P2.vS+P )'$m#!X!x YRbcZG ll _5tTF!#"!%  6 Y " k@ $Q ) p ܲ/ -  ܎߱}_isP# #gWS$ (+u%21)3;++3)B2(3x),5)3Q'/W$<.t$-%+v'&*9*4$')%%\& #} ] `+  $0VIqabZ]SXZme8M :a;ڳE%4n*PU0V)XU+Po= ~@0`h$%*(*o)(%/'#ayNY{ .{65c9cǕ_Dlb(J-d ČJTculq!_g JyB}?Ui57k K ֲ"'C+8.@15ݟ89d8ھ8=(;ܚ=n=;P]:TF7Pf3.B (Y!/yG0׍k֑~<.84|,""%1*ݒ0c4&6?8k7B53HF1I.Oy.[-;x+)%l1!G &k1{o^5c 3 kr r2$OV-6>!D"H#L$xO#N MM$1L}IYH#G8Bs=8r335-# > + # "A.kDP<BH_  We|ag{q$unlAAU@CLu#s3Z-K$ 2޾ 9 v) R: P ~  qr {003E$!6(}$)F&*l'"*k'O'h%2$#S#$"3' !)*X,,$/ 0-d+8*'% ڳ"w4҄Y9^MYZג 6 0 ] 6 )$fT hFduR+|+Z. Sin̋'ŏ  Cȟ l7q /a9Gݥj"va'r,02Q4)5E 24 3 1_.l - +.; ,) L*U)Y5'x%u"(B )m16F4hRGZ{|yB<V|4;r3J d ҤѰP h X:sK*=9_'/ 60:;M<[< ;\ ;I b; E;X:.9v7W54~/'L m S  b92AgG3 S uJ6 zlzi !S'!BA S!&sQvu, sICSg , <XNJ- &,R4;@ (F JN!P{HPN,zKI{Du>h:(7c2:"9+'#$$&_' ':'%c $|#?#@#n!m/!!Fb! M \NqF]\.AV  _I Y\j tV )Tf V tD&y.' ";8|y j%+)ލ`T I_$#!)+1 7p9:>X,QU1~CG N0g~Q2D҅H BO B 9&6H'&(,j o7Q۷G%ӉM_5;' ܎ ߵ l y = gI m>/i #z$7%b'):)-(&&"&f$##!5"w!!c.u< {  }cIL ?B=PRezQ#F[ I9 G<-5kfZNF.Ufz&)J(87nZ a3 A %].!5MUMն+МBʠ~$h} Y!?ɻ>PJ =L@ns^Nj)DYa"s;U? [ԏC4Ϭ%ȿ Iʲ% ~$ռFq۞ Xgk뻽 xĎ8w?!&RJ,j.4/>q0ɮ/A.S.D-3)n%˧$%:ͼ$6|!6)~Ɂ ˔ C·K͓Ί*nѨ5ң*8կ]^5h : uA ,#X"f}f41&zJ<;AvIhRt}sx e x&Om-'38>"DjF4FDBAM?<8!!2-i+?' =~* ?U-zABZmn wߝ@,>ONY%<K c ^Hc(z~)K/e@ M t A     %")9/ '3!}4>!6C$5 &0%+-%Z*'%\'{'f)k,R-d,4;+P* (= ((&q"=##k!kaz\whL0  "%%L)V-G.y/0c11q0a-00G//0X0/'k.y."߫-U,,v,:4-2,,U-t.001"34:4js4"\5U#5>#j4#4%6%}7"R5! 5#O6?!32._,)%{$7![ fvHr `k P INT70CG,aB|4]]pdfHgMp5("{Bu6Y_I +|?E+& , K29=?HBBK@J=F<9 ^6f2.*|&# 8 )cp$<d:mS4Gtm M90n>[X{|Z 5 &nD   d B1d[3:=H|u $&5 y'u =)}j)(()($_ xXc!Fw!O ! !Y$.  (߬r6 - ޠ 5w,*3|' Dw   3P$fM+]#a"y/1u@x? RF~ $P(% +-i.L<-,m+'^%r{$"* 2cX5&l /,]vu,M(Ebg(\Qn$`2`E1]xYldA eEvH.ߑ]Hf(O(rb S4K!7["."w###[ !XL9 E 9d݆iJTz|ꜸvRW"e|{}4pXٝ:lQ<|[bu9H |c?p`ZC 22 &u/  ^v \5n#R{A(P qb$_ El?ExcC1cD5Q; t-HhK @u   l ZdS >:svU Y -Oޯ ) p d$YVL~u"%(,/!@00I/,D*$)%*_!?}IF}q_\e +lu Y *O7i'/E)( GB4~y8<*]  %T r t n q^ )j &,0o49=j>"A5%T@%?:'2AO)LC+E.PD/LAU/>0;17(0 3)/++#'p(8*7($!* Ki1nZ W B 6RUhw#?Vdiqz Z DHQxm0nYd e JTPX7s.r}ow QN% 5 E3Ad2K{)b*~+ppMy / _ ܰ4YШuo{ΪFh{ ]& }1)Y 1>#gg0iٝ.\Q45`g$y;agAk s)AqO"O#s$dp(!+S"+v*})f(''$q(F6r! +OxwH6ޗMA7UY[k0 3^6.:bf4rB fe1_pbݒK3: ,Yg&)8+8.X.w+,M/-g**+s'H!Qh b&<,]WE[mOpG"L5Ԩm;Qs`i\~JEHUUUo|$%;F V i|]ws N <  :  ,g&l X~:[M ~ m~? W  H F% %CN Q P (]|})3AKgU y\:'!> q!7  wd Y*kO3"Douy( 0U 1  o I ^#rF$<$$v:$ #R#V#L# \"!'"$!Rv fa76o K  s֌Յm\p ,6Hߠ%D> /rEc / Z yf ? g ߚ $߲ VzcsXVtBR 0_M a U@ps Hs%(--X+c+@.S.$/G.+ )1% M  D A^H E'e_c" ܥE݅Lfnx{<mVu1 8R_# O!:> c{ ` -< H 4  r g R P ? E { Xrx| reY&/+Zs z ~/N[)tn5, pE'fY Y !}0hd=J7 }  _N i { O<nLQh: sd( "%a%$#Q!-+ "I$$%&E#M!n!L.!R x  \ 5 N X  &Qk| %D?2}X,,w{3RL9%?fe s;kS8 t07 aMSijdjl-   U Y J }EyP Y f. ݐ ۺ֟ Ѳu: r`!|U'ǀ)Ӛْ۩]8[*~+.%#aaBxF%  _  h m Xf!V!#@# H%@g&p"#L! : 2 k>-C;s|T,VP`Msgt[JV  SEUn o O  c7= @  ?xuz (sQw & I% J i  za t   EL , n! r# [#G $ $ C$s%#Uk$%w#o!]Mav  JDN^`L RcA/ h ltH5)cf9O $ 11 $ (7k b,`4:O3D'C  XC|+} y" .#A%!)/5!8D!j86 384"@7$3$1%1,&-$B*I#)S#=(|"'!&A"!!"}(  yR''VN& yAT\^lVq >;4-LF}"^m" Jr S #6|x>-/k{=I VLKi xAU "(Ԯ r ̦͎ Z '@%WY-^ʭWj* r̺We՗*ߛKݼCorXJ?ݫo)ۯڡnD WB p։8YT&q), At׸e+ Eטׁfݗ7߆T8n- LKgkKkh'2gzFv?SD<(%m:{Ra D%]J>O =1 ߕ : ޱڂW1c\ٙ۱>~/X1ވL2޷ Bs?Y(g#'>)AZ*+-- )L" j9WkY . yIX"  , voLN0RrUfdgv\S1o[Q/Sq->+Yh y% Q p=WtxzQyXw_8` +,Ls ! ^p n  [ e PhVf*~ + G * @gfU sTQ mM4; bR"m`h "d+#\#/_#!^"-tD/68^JN A= x K;c  WK {    h KNOiawBs[ "P4K _@"iޒݢ7܍df".Aa:  8  " L^ u 7  a ?M VE CK N  aH ?%La'(N*rR,$,(9$ < O @"n"VuL N^:-r[c'C@z<0:$T'ߎ#kH,D Jt w  k  F  4  W)A S % u D E C m / o~* Gj{~$ [ . k2!? | 1V,+Cwy.V B >hKOv 9 nq|E޵[ݠݼ( oR ? 93^+  _ Wg= 7R56 $#60X`<5:~<\Q|4i. #8R$,I*/X~wtda 0  uNw$U"    W* `7 VR }kV):h /@Sj 8aZ0!   / g ) ]X  }t)SkU ",$ #- o"!;#v!&#'&x')K','(.)-*,(O,<'-%S0;$,2*!4P 9;*=~?&<\62R0P-pD*"+&" 5 H #&  s i & \,$78_;9Ca1wk)C{r:gXZIX, $ "T)68KahJ_ O "rp5K}[VG`O<p>`  ٻ,p)Oѻ* YɵKŘ ċ;}eʵ;͟iѪ~ m4۴I&1v~ݠߺ1Iur.xܲ>id9WM%yh^?6qWvzod^(l<Q|yYZj?UZy( ~ q$G C  ~ 1  , ~ eX  e&KyweVnF6qݵaf *ڠ+}ںڜI{eGK޶l+٦M׳VnEv5ٯڮyP>`zH5 >7u=cTb>b}!k!"|!z!enf// 9zFuP!_9$v   nR7%.  dFcFq{ l  %\(#L(*r-0U2L$2*0W-9)9$tW{ |q N  7: gMc  Cyln@m:/I0~C eDnRf '}" pMk2 !   x^}{: & "g" ! UB:@koy!] *tjCv v K  I wF R2}gZ:Mjj`J@ 7 w{7`w[^ af> # Y AZ}g)3)i*ExX R -?N  - p  y" #!CT5(Sq$gmVQ b` =LQ3ffz1}3GY:/ۯl%@zXގ4ߵc^ 2j \ybZaN | 9?JHg`fyo  ; 8 #  Z l 0] d % )| ^ +[Wtz2\)& v܎EKb9A!tSa#n2 &ޝ /ܳ /  ^p _ c 2M Ox}|VsF$5QbB#J9ORT} } ]+ &   }  - "i q  T& cb{!(i޽nGܩF#<ߧwEmU>F iz|oh(I0 ; / :B t>Eju)mu  + $z DG  "k y 6V j>z?fA|n= ~E5M5/E6:R2kOkwuw-hx7 jZVx ot9$YTztkBul /T"fy | K2 .< g :  9  |mLj]qX߮ T Z V}> dn Sg nP;$f#I9H p   6: e<5 p b|<Y.X  1l]Y |  y Xx U<m ]2  [O   ( R   b   kUh;@K%6ae-R.JJ_$'@D>xQ Dc d  9 #    */ D \@Oi!1!>""Q  /[ "R&Y+k+'%&'%J#1" G!A SqsEM 5JW p7|1Jyoq7'8e9V! H|@!     H z !G!N_ , $Gm\@o J d 42 E x d ߮  ߣY Ne~uu+iۛd_(^jb`^?kdޏ_#CߜݔZ*(+d>u7Gx4 M{ xQ){sc6Z*a 8 HN    L ' &FwT{A 7 Do 2_:?oAgkZ;bݛPڤG2UEpr,׹_-( $Jm#y1% 4hS7Q(~kk7 $V j`Y8YZ  { R c0  f  (' _  !X  4J Cp%T u(_xWyݡ7bnݑi L@HF!PG  8$j%j$$8#)!0!#u"k"H%N'';(h&)"9) [L O  q/ ] a zm St$_Eu}("%2 #"1}"e~ !'"}N 8w3bd13R l ](f+mw~]+E? HX}*cZy. g  F I& <Y 4Ih d^k`Gp8]% !!]""  g 6 ej4A6g Z@ v6G/J#߮ZaAvo4+(]Et& M  X: h ~ l  #   Q  m R  U  ;i   d F 3 , Vs    C  -X}C N<gN/iJe\N*1~Z\h+wsD|& ! D(LpIof;>6Pvs w     }  E  D] d z2 S # C?Y lTH2 f!T\ .hy;%e,AJM[YL]%MvmN1g %'9!h"\yl9uz2{{|= ZsS(@w  }%QNL 9  F r I = } $i F6ץ*1ה% nW(`HZQ)l aH !c  =  V w/)I4> >{fw X :F . ,\ w Wf { TQ+P aCh?+%zNXMVO_2}#q'KݛhKk%t}sCKMa ph '!#Q uSr 4@h' 9a|GU Gp#+6E;9&41n * z)YR3z)YE ( y6}=f"g~P w AO=eMgYVF[ NdkZ [n{ D&UBj^  XU ^"@K.fjkqTn.@ = 8 _k[l   O J C  ;  -RG ?qguH.v/4gyGN_c:E Z iz^>aZr8t "40&;&*$#_" k| . B9   y A  - @ #  %  D q{qo`RsEZAKL1Z  `J ) O)!N# &LK'F<'G'%L$$%$z$z#y Oc \A$(OZ/,LEiife M  mbxGw*6A{ !!+!(VbJn?1p#B@FIϯΚ.!΢)e]׃vڕhsCc+9 t; E t"+ e?]H"G,: 1 H p   _]  Z g R  l 1y x   K m sr@J0aCllT:jMpz/fJK-ކީ޵5)S$hކۙܵ$nzr4~g   Q!.X6n"!i#6l#7* < !tT (KWR'hRJNH+|) X3)mNE"sKS#b()"=!4|M+~% l q DQD "k=K"G" P  <(7y?a , | w  p ;Yk / A&  &W@[Wp 1kJ?aD! T]  P! Z d{b9E>X1 @ !lW d V B%`D_rܗB:(٭ ~g׻,ek;ی|ޤ~Dy]@ $ /K k  ) :h,4k MmXI<Ai| Qs hy "|=[=^? *$MP7=$[RvX֘י =W ܌eM-L0fKuQ[|I j:h9 -[ڝ1ya>sr`EU&SnAKZt y.1Om)^eE2 si2_ui2SV p 6| 4"  ]p. 2   !rt%1 Uj-ܟT-<ڬ LBsyXtYi _ 6 ?x wQbeXp#  0y& "  ^ g =%   > p .  ,<+ e Go!Su3 #ea0=@+QF9b+F2i~2Fna9 0ma$"'T(%@#$#!p"$N#$m't#Z|Jz\sp) {,)_@C+ 2~h@\= 0Y vs &!`YjYLZg4uv]#}u* $ h':5"M,U',? +k:oG}zVdS  V ` m_;0#2 \ *V"  N nD!#$1#At  (I),N #^t# tlkNY`eL]k2 hG(#8  0 # ( S+ - /=+J%<#_|! j B!~!4 an!!bl!\#x#!  w Y; X #* $& $ ae w % p jQ:Ihu}_i6JdJ  0tPz#Eg&(v)++P+ l--*\+D,*(]' /"vJ: ~~yAR-ݼr#h1pb)E"T"M `!2##"?$ tFwxzz?  bbSPݥ_3Ԕޘ-߶Ql^y|c@AI F bS6cb AfD<tzTc Ne(|& k w{ #}#XF!R [m*X/yEFm ܉- a[vѝс5C$g лc5њj~*k-O7\m=w@RQ' JF )Aa_n(/0 K@"g^A:D-$+SRYR-\c]G}I+rc7Gހ0.Փ6c`*-SX FFBFi> ;(W+1|HQ  1 Jce dMr~   A$R2'l+ < p v a= 2 0 -  < Q   FBU:g>7 ; tK[ U "') \( '**o_* 'x S% %"!H!w)L xt Jpl>'eיiN %p{YJvcD60 *    =|@u%u ! ! gC82v;[Fqls3D/:F)?O  -k :n F  c Ag|*#ktDuX_C Nrz H !B't9,,y,{ -W+*EM,+(K'I-(P^'J$i"!   _s 4 v Ka 7 v6n~z  NL D L Q ~ ? L  Q Y7E`S  x|L%|&,pdSU0^0[@Sjp'_pE!!ZV|S H(:5vbmN($)flk%H` C t3u;zwyL B" P߂06D0UܽHev}Tpb 37?y ,|\3  z  r ; 2eLp|9-uH \F < npq\ z5 6 '[8 }bLj|gU$eTL#ߑc 9chIKW;vS[ 7/*x# $7&(~c){(%##3!a1vc^ S) l71:%U`7Nu KRsEzn 4 ~92(8#Gu!^yn+B3 K-Bfl&~tdJMJ` u1TjY(}F`OvehU=F LsgT(t Xv8lM0 U"A "4 s y` b. 0 t qU!O܉{"3JodG "n;a K_XA]Hy!?!i3"J"*$l%%jC&$K!'S1 Tf\}j^]TZ #9 H  |  B7~RN H 5%2a(-J\J9.ۀPON9sf9Ef J  v   *q$@JF^}n"i4H cAW . ? _? ڛ ڒو +e M Ld $9Ms A}rKW}gYWR!* >/7ЪԇfUܼݲ߳t 9^)-,IFm{2`g  a1  c@ 7 E P  ,  { d > \nZ"Y & ** 0,+*(+@*J'?$#9 /S_ FH||xt{~s`dc1,: M]g tJ }]  x) [ P + Kc"ea4$9 }t7F E$ o M=#LoN;QnE=lShnW%7,9/#/0]33%3Y1' /a-6-)W$!! 93 ks,_2SsrxNW3c77 . - ^! kh5 9VtPm3HX.k F  Pf9 / &o|2<.2DR( #cW -hNg!N !x qK4 th [ 4(5fZWh%w<^:k8PA l6aA2NH: INsxځgvB^ZՍCՁUTۇmX`y zLay`*KFZkK%XV k=Q =JlH -utpS.6p3\plg'r A U%@mkEXwN=j{j8"n:E}xSn( d%[W [#&S+K/jP1.,+= x+5 (!! M _IJ9 0Fy<N{Dqw xxn cmI  Qj=|,ٝ6ڎ}5C KfKߧSRJ8xW:tKs :@ ` 8G)s{#+N$0,P$.m4:+#vG#4df m_wA[#Jh"l@L qocW # ;s )RчԀՅاB/|MT%7Zp  7D   J a  =L-#WBu<HF a> D*#QkpOY3 eT{ k >',\eeߊ1$n*/pۤݪ~gmu'W|gt #B%(g5.0a0{/ ,>()(% 5&Mk iD[J0xb-x}!    a ~H   (  _V rhFi 5Qf uQo"%Vk)2w*EM**')'$ >NR "   S5 h _  2 / mH  f i  G G1$='W*i-/n10b-g,Re*&F!j CO a .;) ymo ;G(s#5yO !(],.R31666y66l6r 4 0 9* n&V ^#lW@p t[ m h A1 d D6+5 IqLE-;6  _ _  q I a ~  z -O^HKrNB njYTkF8 E#a&(l)(C'&_ C$  M -h rC v' P % y #ؔ B Wӌ Ѽ * & [и 5? k0 Y} L DDg5oQ^Q456?@HAQj 3x]jQΟϪWҁ[ӯ׹*=m H A  'J +0>?H yV{=Qp I PR_ G&);+h,,*k(($i6!3*(+PEjB =D<7ػAVXBߒ֜݌fEb9fS/n VX+<aEx MK? +c< mp  !s1~~^nv <)-M):>, c d E/vhgp=|iS.g eE R%+ 2{797`7R5h21/+i' Y#H, I{zSIQz5}CB._}] x  V<u*& XWD,( qt S=M_yz; M glR!&N)-(.}(R (l 'X(B'" !#3p! E "t$$v&%6$%&#%&*&~%&"aF!!!J[Q5 a *"P%8$"/ T\(Q  YnO # 8U|D1 bxSjrޔP} x߆ab V &N,B1l1/0fR0121/+~ ' # 8W$   X_p2eT4Pk(K#@= wFr]U!5 ` n7FzC ,j_NI0w8 V#}?C.Z&,/@>1d0:^/I/-r)p%>#YDy~dZ%6euOڹ_=ְ]@QҜqwԐJےYtqVM6V  e} h eE=gxqY <\~0ҏWԃ S8֑~^@wBާpkYEE3lg&FR?9[C%G34==u6] qBb {\xcq c3i. w J c" T$ c V bQ[f$} |ݮ<4JȞɈˮ&M̴{"ϝ/*YFX 4@=p  -%|fJ [@W?lm 9 x M<t[3>dr AY  SCwo%! ' v _ NLT\T`mf5yM'ezzwr}i >9 tU(>&P,. 1a449B1-C,*(P&;!U  u  P _   u l(Rmۛ=ש@ Tޯ$G(m,> [ *wi}M&  |(;-'*sH 9hލߌC3 P[%[([t86]Rp0 2 c vdTHR Y  S ~_ HC0YB0*y2 Vsp: ME   m [  jA!8?sۼw<&/,aRgX݇]w=fܢܜqQ 7s $&h')** ('n(w(5 {& # , 'sm$ q6Z L N 2J:;2AJcL 8mi' D f W " cGSo3V5 J ?  \[ Pho=?x !m!a$08''%Bf#" ! au!6k M{C% 'FҺ0ӱћ" G% Np9b(b KQ c mOX,n#[ji)Uޱچ ڔ+L߬CߢI|߲ @=a}G <z b2y f Jp 3 ]yN4 G] k<u 7JuP # %%M$!a}": )R cCq ߓ0ݧMA({tH?8{B$ #u *! <1 -! !' z dX  pVI  (q c36EoS2 _\ |Boh $uTO QP @ qf}w%akwv\vB5 ..y%c#+.&/p/Y/-+X f) E% )- V OLS\v(2l  +  ( HI36Av  O$mz?N| i j bBP_}B'h(961 i'  CHe-D!"2"$B}' (@ ' &&&&q$ OR<WT XWkj!SP|-X 1G 2blc1hr~"Y )%QDbL:I 8 fwC i*$~A"'E,L/;1k2aD1/2/: , ) $ 7"mla  %d @Tu)Vc9@FT*.0 mswySh)M pB # *  & & k F  A'0gcX)/  .6 D "%<(+y.L2r2X0G,l)& d"@  1  Qf.   R\E tݽ>@M;9M6/X%  Lzr4t?Pfv-`ntD$ 9b,&B 8ܻDR%l{@Bxf<2'w ZT9y: l%Kz%=&_5% Q9BN?Z.;w&"'MX~sNc[nEX3<[ۇIؼԡyє0А&ӊtyZ/G$[  Z   'i#R ]gR߽eހ\߽Zp0yq*M xF''WI \"VjAV{qHd _y5xs ' z 0Lj)<(_!kU )S*' M O P mwC&  , U%U9j-$8*kFqc I+-a({ju  6J  kKNu'VSLf@m:5"0-tRdnc P# s5Z ? scpQ m  `h Z J \  L ^@<}w2>  4:G wK_M; xD 8Zn>M QT{HGDm<kzr3C ld G\Y!RV>x"!xk |(oDw B   5_eP+ tzItK#~;0l/!c[v(DmOhQ  ;[i 5Q -Flr`D,Dj.G|-s=wn5ud i|J4ok63Kl (7ya5f[L.S ? ۋkЬXk@5i7@Cdej> & m] (.  # Ej7.-رٔOA C L>$ S>{  ^ e #@P@ 6Ysk/$paG5>nF [Zkvb0|C"fdL#9Cuv};yS_2{YDIU "iq(mM &Z l  4p   }roV'Kwvb^3tw{~.Trm@q%art|0T3q _m%}s'$ S L  .<0fx  w Z M;w)$bN_"L[%, OBX- E ' l#_   # g/Q    XcFk&7va0 uL*}   Z  &8"VqMu 8 bw j' d.6%Ugu _ +< a9 "r ) cO !$$,#%&a%%&[I$ !B ? dc njM@Dpj mW   G  2 $  < Q +b  6PCRqF,l*DD oq ] {^{a/Vw} J B[$ {B5 BR. VG<+s{xDU> [& P MM f x 9p,(I^|<^ +3Q`v( aTH'* i4,WQ  e6 72R,k!hv #hq_#`>BT{]^ #L *`aHar5 f S & 3 wA;,]| _ zR^a1 LY aj ue (x 6 f!L}% sJ ,  *  h a + ,M   y!#&/m9N v_H l@3|.Kv$6;xx]- E6FzJpmr|^p+< H{^~" 'B 6 AW [_ L I Ui  j N^HhWr1d}W$}lg3c "?>"Mj%!]pl 9x n ? cW ( n lR]v MH P %% f2PU[k X r 2 zilCIn9  S uK 3  hmy-$"Wm[U|d.zNuMO"z1 2 % e +yn z A a)2E]P)XqnrgW`s@F z'd,']/ E c j)!EIUj|_uS  l'2  2vn?(sul' 8l)%M=15Sxu| #t^/  [NQP,h H 5y5X U3rr k g @  $  Mf'*kj)d p  * uu8m+Glckq3%Rjq 9-BV C u h - N pz\cg( 8d LJ l&$OdL>A r% \o t2=#XZ(e4GGۨz > qO ZZU5 s( ] G ;>W:/3w8D[`'u .WLP 4^i 4 O m p 4  r   o oP r_;o Y AWVN r (`MNa~q][8ny) t>rtd\MbX{trULmiUxpCPqZcSB |  1Z N7x~As1Ww >K/tP:*F7{,m"O*oE7c)l(I=Cv9 m Yh 7 < ^ C ph n  S tJ?[ ?>HAZ;MbQ  y "C(}AA8,RHYP/[imF1X:M|<Ht*\:q * V { X"f _@k1LI #{ei* e O LiX!eS >  "c ;% >2$ m   ZNQ ^ ? J~=kGS]e>sew8@Tu7 VsQ9sFs> . {Cp|v  ,- -b S \ L % |N %k<_  Bu# \F | z A| 0P'Am>4qg ^ g w# >jx3T m jjy{% A ! . N n9|>yy;|L2Z~k0n))3$*4^;[k3qbD{ Y5Z@<_eE;^9?\=``*CDy " @/h 8Nsn 1  ;t:gC6|ZJ'Lf>{:[L!(Mri` =$Nd]Cp?oBU.CQ$TO0 o k 68EBT[{.g.XM)3 {G`@ [ 8< 1& p0 l\UeP{DR'Xmdv6fq<lE  X:ie-X/m/F 5= X   `d A (pz)r ~4Z*@ O t>4 %8D1tm?PY1B?yNYb.% =Gb/ fB0gzEb]D]Y2 vIK; $  #  _ O a /G I 3u d  Rp     QH9ndzb F ipXbxQ p a VPrj]}}"+9F<cQmvh(j  |L    # B {@ 2 7J @6xL LWR.  M Rl X ; 8 | $d  =  4 9u~<}dbU-mZI^hXQpI 'BT> b b| > b wh 2|wUX! Ao2#Es < ^Wj: d { LV>9!!m CL GOr@%Y 9?1AfFoB sqN zHtW$sYM~wmZ > A wpOYh` !0  @ P e u   `J:W k$    3 T c  &hD  k BXO?0Ac?PP^1 74NiJuN1e 0   S Z * { z i v { p@(^Qnj_>AN_f?NTkoCwx.9+FJ#byNw=I&nr]a|7 # J   ? A45`U B L W " g UdhM[@4l$# :d , 3apovg.23p k7 ,  giYf|7hx_ zZHbfr*avx%bY?q >"4/3m'i; 'vjt8# sc J M I U L gc  3 ) Z ,R~ |   !IK d O: d 2 e  h&Tf`b" \!O?vFezE;Q 3li2IU3W1l~, fltNj N  1) VUBX\l""AMWlf _$5t> Y eC _) R  : fk 7 o-n drRb*k#zKzzGN  A1    > k U6 u* d  4 1 l c * { (Us YCq B [ xB =Q_}pqS`73U0vow[ZgQL2,)t7%@m 9 8i ~@6U7Y_/P_3f j 2 C d.XS  3h  X ]TF <zcp>yd7d_<=>]+=xqXgc#{2_*hpNuOX   0 . 4 3 .Z  R7 i e d & qY TL  l#r >Ec h=V jfn0ZTS} N+P wY l cE nT' E M4~c< ;wM(  3& , L@ #;aR::ery,5K1]IUJml(CGe T$MK;)np$$c^o1 ' ?l d  B Q i /  q JF 0   T#: 8 226 ,   !> j]r{)d}c < `:oz3!%tD-fAVMcFHs,l(q U ,c/> *B  M 1ObG#`IH| TEc<cw-R1((\  ]  <]*%Z  x m86"">$CU$Ve{  E _ g ] c c" %R G w@@Y3[T`Nl9 0 j, o   J y-   { Y < ,sx}9v||Ucb$8wx%Gpr'`u\f@{g KrP|wB=pD ;fI%o/%:t>qd\jv} t * V 1K \n Il=\l$wuG~KEc]R9 zy 0Fq \^ ! +   Ws!)f(Jl57?"eP4^moyESDerQBc9i?}IXr5H,pl#"69U>s ~]b5;=?c ; K zpk]=!9Ibek]VloG+;-=> e2wXj0Lr d W  }5rL;  mySPgILV \.Q5#uhgJ5Jy;P $ -de ( PL ro 4,  6@  O K  Y s   5 C =FL7N:rM? &  ~ 9  YN s 8 @ N !{e?2!'#Tx:6[uxR|Cpi+5b9w(y"sv[ +6NOt)k4?TDrH;<Wwr  U@}ihY R p + Gj #5aIDi{+Y<z/e2p %_ [tM; "B  GF& (F~<mr)1$az 5m I A ~ d8_ { H Z Q,-^0W]5 ?I0|0d'.x PV'DE[I&;YwW 04(XW/`~&} O/  X 5p hPVaB*NU&1oL-+)6o:[/K C " m> U  + j = 2  %*$QiGN w+{j l?!{HB[n%l7/c K+k/s *\ ,3 IP5vFXO&" ?2 4 .^;?Hup> 1o   <#dA%8lnK7>mzI1 1p+qzqzJ eG7 mD hmEn>B  =s@YG^:  v?-:qi7{bI P72QZC.Kqx$KQnLsf\'jH#NG ~ X & z , R:|_gHCEJiZT}gWY1 @ \ $@G9Ob<1J)8N7.hP04sr>bi{|dq@Iib : r 0E K>x2P%QA_o%iVt}.dI0D$T T~J7Aq! !1 W 2X _ a6 Lnx8r#}}fQZ5Nk #Ye dyxde= C K  G) v S TR98 '&  [- 8 W &3 w  1`aJzA8z >tJr |hZsMfiRIZ_* P)><uHA z 8' H  A~vlNkToBX/|:  6 m : Q ) Vd # 0 Y D v  N / \.UX|Es4M68., 1Pn[ Q?-K?B; > !  3 >sX[*z3r@7HA;TglkU_e#5Q*$ =:/P2P],{F.a: -hb; ](v 9{"M} =:hX-)WP8 ~4?5 A hNNMnGrpKv a/Xt|ma;[1S8`3boAq7&cf)4DeDdWdacTA"NR;2k E - ~tz'#L)k;?ZAO (  @ ? U 7 ! &v =[ q f v \,^2 k-    zLXa  ~ ` 8 KAr(7K&[[16n0a gX<=vR<6b{^ s [ /#  XddQ :ZD' fy61>Ws-a?jb D xZ zcq}3d   |   j$ 4 >II|zi|f}^3ge+9:3N ' d&&Bgc@ Dn#_= J  `-4)C:2v (F"Nz?w{A> .|'t|c8: Fttd%oG]RMP5 j y { h <  Gp6ivpxk{[W(_'G3Kc0,  W m S ; &  x3Z9|^UV^-QKx'`1WbWkbA30  4P  Z F wzN# J>"9 fH l8NfeA _oB  t "|^-4 QA<2*p~7h4ej i 9 LCLOLxX=N,-4;Fs t D = v Yh ^ )=u }]  W .b 0  *]s-Z\$~f %Jn"H4I}'G!AYd @,2K?t2vd_C]Ng4DVG^}- jb o%"z 9 "A UE` #!:=pZq9s~0#6p}tB/9f&P9DM: (QHpw7E?Lmz/f> $Fz ]uMH7jta-RB |$hPh[)4;+'j6}fyw4_T2 (1m7Otz1HvX^.W@ziOL'@Oz-8SOSh?^%rCw(\<"7t?fxhA,3;{Q?7^> )  / -  $ b  A h $,ZqEg^EOmlG  Z 5 ? L g + HK3 )H`lH h    _x:WY(,F ># ' 1bb\vge/V#=[M   Y    ` L[%Y#}Zqr&k^1 frH^06{u_dQ W < zQ5*KhHK'x9fQ=yu q ?il2!K>]3ky>'  j  NMIjQku|TE}PA1rS~6fB{Ov$0tYsO'%BF38p L Q *  7y-`dyQjhM!KF$A'm(#t";IZ'P-E68)"s1K=D) Ie`:3; m[ _ V   *   8  I   o,E>q"N'(A$O Ig @ 5 5, + >   %HUl  2  k %u   f 9  N  e T8 =  X dr ? 0 r u W  b bcb8kh $la>}H384)N fCE9Bd 3,/]jg`1NBHeILpF>f c &   ?  ^ z w(?}Dh7vNOz7nlrMT .3  u4{Jug.  * Z!BcUfW3ej4*s\,7jkkM5db)W^IUuJOhjI" t3]:*UD B}n ) _5Fj,i  7 /< :   UX{DpK"'p,BjS   O   #Tlhv F D T H;  +|R] mDjcc4 aMvX NT.5 U v e [h:fG:LF` , W 4h&K}i6BiYo31H6|V};ALJ: i {X(3B&\|/@~9  R  Ayy5HM(*]e]Sw(27)";I G"4|3/_DN(! + ? o2AU(-;":id|-h+ n`K, 6%^ R"hQ*\-%: aw>c6*aImzSQ Mg B uMcTfc9(t%Pu /?\jT~mx  C D?   J \ i /n!z:?V $(Jo T. "$hG:F@9{xvH y/Gog(1].|r#g-H ^0!=/+&2;5-U#,9) +J1v -  8} ' Dl3GeI4B[>u(txyp   w Nc+$q_`-+ z w E?F&1.(0m9?r'Qs(E SCwEn]S3oK t  HaN`J~#K,Zo. % wm5]+|A 5  b .  s4 Ox M{ g_ 3 ;4H3(h/vq   GP3&pO(@Ou-<Lm-$'    ch?L   a i  { = 1(OS\ E@zVJ9 cC /AC g  h C  C +t t [&/kD@d"R(19!!s\]+8yg3^/ '@o=Ya$5WU JWZ _Ufk\m+Q\ bhRUNy3(`"OYGbSO@"BJbk> K&j Qr   ej R ZY n   !   k1 yd# n0![ Sb Ut2x!'h9?Xk~MM!D_ wWM {8^N H;DE o>~!o  0 u 9 t  ^ / u UX2i xAoTfjYCvuPn"zHIB#5cD|y5 ; f + x K   ="ZB | 0 f Z~!KS M~. QcK| sa^%hr{m/9XX=Ma } h &jVM&Bshe= (9t<seU#Ai,(67 N C ^y Q v      ) @N|CubK%OBLXI[r # b 1  LP9w}U{WHXI_BB !81|F?xXM#f6E.IrgS}KB|FV^P3Fu~Z(Z   2ZU0is  5)spYg869Wm2m @F.l?|%uMk5;e_]au%" "G}H[eb;>O tDmbw`_2p| 8 K >{ OI}5k+J/CmDU&%L/L'>&:/.0sFV5s|u5gL0u(~4P>^L^  jp{0z4:8*b$%?L|"F[)tr0[k py,Jjg~^*Q86*h D8_7<2 = s1 , x :  >  J a R m )  G ~ N) L  m|qy~  7    %  f    V! fnj [E < q  `' vJZE h1??= ~negI k<f    + ) x"&3GYuS# t h &| J B n B y% [ Dw#*i7]l#=)sT.]: V  E pi)ftOkA)Gd?c(KJ82'</~8 1 #<w+Yv1u 8U NQ ' UOpkn AT b~<:n#\ 6}q%B-qZce` .6TA'A&TPg`]YBgP PQ [ r i ` E & 8 3    /s f  d   x ; \ 6uc/&]-F+ _3-'d$) k  ~/K1  )   = ! C}:\\ZMr Yd/lvR|jPu?9; i aL\ 4c u69#?q#%1g']63%P@6Qk;oor8d1&P]]|g#R-7' (,5-A;gD%{ R  r,`R6_qK ec^Q]t X24n_{$X 5>OT-}VCw"iYp R18}G8_@|f3ul)Sd!.1o?2Xm0.w"1)%yYY9[ "C'3(7q&`\ I&H% !b`G/8d,G%(.(43Sg|c|]1"x6(HR|G=xaq0 % { h |m'k<&R<}M;O$@+ 5Pigs,%  T  "  - d    y3  F ^ != tQm ?U #6jp  U : ` j  \U C  , |85 |ve/Isqob<jUS7i!"YF J?H[@O9;a i  t;-k$s $R^xR)(Yb!\xE}BN6u   &n [  =u T89RdZkl.*`8c;!> @ Rwh%0h4uw(,i3# IN  -Z1_0GoB`'$R.vt|{`nvZI6^a$nK*febnSJCxVrY7)] wn9w U # = M28vj: ( '02/GG.  B>ys&F#(K;<NjU Q& :  iIW *  )  Y  I  T}g7t}0N?]y?#0{7@?o `;t {BcWCUF '2mgqLSi;l)BE`59A q~C T m  >&;, : _0  C H  r z_lTmehFkQ0x?SU$[FN>Gx>!u]'xe]%:TYuj%vAY[M a -, -0 Z N \0 ' | A C " N 2k$L# 6*|j %r4e]NE32JrAc)}#H J1S@M@(~Ff  a X@ ; V P z  pi T=H x`~s?:UQdc!x\OMJ e`!W-(4(ErbIuj^I-D#z!9}>_YJDv';\q \ w s * Q 2e i Y i  `  n  [  IQ"{+lota}9&KQCW~e V8 J+])o/:/tq_| _=   >V?gu{,h +L% ";$pd>U_"Dp('x`~Jv.jFgZ Vh+1`(C-" f~P=WYk1j =x<"y"J  q '_ #   S p, vVjP,f9T  L<:$x`8//Q Vmd@f$p]<'ct94 $sX]3m`a" =?pJb|>M8( m H BNX%s[Tf<)!.kP` &MMS6@z$j 4 ov_NQ[;+ E O 61  s ^  FD !u d5 + Ht I  s cC7D[v&V<;3 [`l$)UW1  5^w9 ^AB1F}"+F?F/7kD~ 5eQD>dP    ]   P  p  & g{B*N *>  I   j zxK TJ>!9\TM@ *G`f?v7SaM6I>]IjW"QsV@0^D8eQ=&Kpu be  x Y# @ C S z x  \7 : U Z w(1w$hstR^gsCed_^ ~#^:zfj} a6NF +s#@A,E\tS(,e)*rf;/-t{z,Pfhh abtT\dXD]UmD&k/|P(3ZhhY41vqlg{h^!m Xdf+ zhj# k)  e \ 26 b d 8  r  i E \ z3 1& 5 z ^7A/rTUizST@\B_G?D~M rLCj`.MAem1#e7f> WEz C$*pmX6^K)3\ Z4V"7]4?;869Bd|mA>5 \ bD^/|wm 5W\| TM LWS\,XyybS&,7@1y,8X im-bLs+f eS=sQvMqV-7 0(ri|LT6V -|u  z0 u c  -   C R 3     s D  . p< *x "T .1+6~ ]'gde'eKF C~d-i_O`IU3o: G O>WdOt>=b$t f3 2 !#N+]{O!w \"t *  y 3kV--+4k!P0zkcJ+t!%%7 W ^]ML*%3/9S"..9>K>Qs4R}s&`f;"6dj> I^Eq9Bh-}Zpex0H<k wSm /_?]?}L%{K``[1[_n3m! 6 )ctK J _   < m_ Ze 3   3  Q  O  } ? , kb &D:X}[q ='T~WQ, X%~5 sy}J%h&gip46mT;!$W_b5?7:+\`59}pU:?O" GiN]q]c)\85~ v&3fq1~pq~g" Mc ^ $` O VJ iL ` p" >k n m]^bj}?B._1y{?a:~R=2lX7]Qt7'@Qjta$ C3\MP6*`[o y_9:"d q*:HV8  c X  6 @t x  l^)*  \ C & n4 ulEum#~EqW`bl2dX~jPb !w,uVzvJ*ARFh7aZq7@f Dp0UqG//,V&fVD D?'$rZVI T:gN Yiw^I1s\hH)pzj"H5f6  D zT  U z k":=  Qk8Os4"0 ` B /u V}9{|6y:P.d *iyso B26q }%{L&U6{K1E;\IOb3S~wo;r?Dnf aTf qK  y= e   K  F o A  $  9 U ` 'dDn3iS`CQ?SE3C/o;@+!~= ?=KJbl&KSF^wbj!lR8gbmf  l p h | k? x| m% u 3R y  Pij' ~_oN_iwmly28~mG<<|f9/((MlPz,8PpW._}; M EdpIO<\C1UD{ ;<0?JU79|H.hR_Q=Vwi0-EfJ_SyL "P p P \ k >A EDvqf^0:!v8\~qK98L[>TNQ~:6g\p:/pSBg\vIgs%o7=j2Arp~ 2) ~t Y (     #M  *j 5Ll.>jcx<-~^(I(=@w-.t^B\Oz:oeA\CY^+&$PTkddFX t '  g B W    Q 2@H>+eRfT2q9: c0Yl`A d^lQqc fQd(<ji!e#cH'^_vGXc"ByrT6{! <^7Ecfi9:l\0retWjJo5i;Nh}1u:#W$[D/08DzEL9;%d;*NKvC&9yKT^1r$; "=UQvn: \xO  dVE3s< ?O 1Y o o /  u"N4OSx"S+rA G^qvdJ4vt'oB !A4"7,1Azs=5hg\qFUw' 9ckJH~tcHQnQ \zJ3=>Q,wuM HhKN}`*<}h 6 KD: j { xn _zX[ox[ZJEh ` cr { n O   T ^:rO: $P`sCv@5&ot{1^ 8n"3V>zfIo:,gB<vF^__v0.Mu;jLlZ-1Dmjcb L / !K " Z 9  N 7 H ZBoHzAHwB_ L{.1Yhg1{1AuAnp3s/TJYoiceb9z7lnDOJFZ+ K Rj >$  SKVqRNLCtk s|~qsg4+%egi(T) s$d e4JlZblk<Sp9^h*}\s}xVy!o`" `9>D0+}6:,`mrG5xmgt4Ieo37AM\>$1,PF" rmha/R =sUih1|$5)p       #Ek* +   J  CgNh?PrHfb(RVH{<H\_lyT_K~Bw@y}a *<1#We5!7u;C=sjC`5BMs1z") ^ z h <4  a R1 wXI[# 8[VZc2}j-',_m\^DZ#`A l+v&eI!L 0"ta1Svvp),K Lr%(/KKR3{NrfrsiUPHDZKZH*k*u  W i |cgZl4$ B *saso+/{&8";ZHE80o$iG4)*_[ZANnk\`2 geAWu}"AP<!y~\1|7HtX`] ?3{nmkBI^D HM(~E#5 DVB!7(Z }Gaw=Wp*B~;s-4tttgjO>iW:7Lw_^7F\b5 _]ylbk[r<~w^8]Z:\'%}g1OfX.paMsWevdR."/y\[6hs2U]7Dpc7AK44R4.M!f. WHS>ls)  77".=D ;5P)jaP[k25 GW>  /  b 5 s i~0X(36WFM\4Ml;cY*.AK  a R9x\,-/g68(3D?}q(ru6OM`OC04R"a8v`aWd] Y0Z{>)r QpAh?%tT Q=+w0B=Kq(Dke9PJvN!~Re0V 6*mj,F?{G9?L( H:$@R=q>7  YQV3NlvG|q!m_ VoLYX#.>{Qbio2 7[ 7jxR&v<VsR nKRE|ZzP%/#LZFFT@-}@xTY<n>!xd@\5F]Z0C$jNaeXZ2 ajG->pb#"=O2`xo8APfw 'XL}[lBk K D  p g;vv.cN"w;J/Su7i&-DusSMnz?_`*W vP ANxSr)Wh% u?,YaaKPc:1 j*P'?_w\:b7CnEU${*q @AHM}BX5w08D2Dc/ 1prTmZFb5 _&+q_b@z/$\4WO5 jAE<8UCy| :RPmIcO)!E#cuw2iaCSj5(w6yyNL.!'z@#JR"KI`3NS:ktMnNqs\`O} 5y;^O#S|+w9D'fO\`H HHlHvb_7a-$*i.h_;:a:>l0z~gNg%X{$ZIb<^`~oY( PO?"5 8-E;aD)N"6T1_J/.M~0V4KSQ!NCHH1 K:qW}sg83c4e^2[;Pj};t ~|:$1ffj F F#j9@5QYV;)8:0 #I:wN`vQ& 7 x.Z~qzYRR66]Gb *A# \/\f;4g&!+:Qk!9%Om` T, 0- (ORP bse*8f9{ |R6 9mjW}r9*]ow|(zEBQ_0ge$E}cARgm{-QD]|TGNP0-?Oupw0W<#lR7Pj13Fq!:4Ut Px"-/t7\]H64hGLps^j}p!5+FN$`>S#'CL7 `qs>GxHz`6E5He&QlOY,=WT#oDHthoNc?*S={~I!K*u"yUZxl45N1cfWa0_YF*ab-frX&TkH, X-p/$6&HPVgvtUp}r1.ey^-*f~VL$Jz&q%1o'EaR1}f=2@K&Zt$Yo>?/0)~Sv;fCc8Hy]Q=I P^jKA*z<z#]T)4 qhRO0;?AC9n7@o<) CZ?hTt@rK_6>#/u:@RSm8u3F3/Y"VPdOGS6q F;ag?A gBNvyD5 fY.15I 4@'DXMn SX)0XX7)9X/]zW7}q,Z&RloIzxq8#eiPNK ci_ASA?K  .pO<(9R0L @e] weH6t$L#sM[n6 u9pIK^YPf\$dQ g=JWAQ[zB}OBj6g 3 51g ~9Zjww1]qavbet%\'YGc%a6 mtTntiWSYT}.2$"o1)jIupc'%]f +Fd~0LU  Q y s.Ibl^ bu#dRx xh%{s[G 'tqr%nC?QMt+Ed931nW\a/U[b,1*g%**\fiTe2b\tMRh)Ofl`eQWX0,=WpV gTliq3Wc+n4=x-4\6p UYOE5Cr/zHCxxl.31NOj[ 9r0D`?W."%c^_ #N7(EGIN 4[)AAxHGH 86:5* {D A<@fF{E8xM88YN|fYjGu:j(r_{<S;`"9kmdaG8i9-IUNj;y"']45k/u/M,RKJl*T |R+\8a+~5P/zX;`JGO Y} /.7!Ju3OhhB[U\un~-'2wWD"bl6 8dLjP[S?Hh AR~yJ+H%|:J7W9Y$Q)A\q s3 :$ 4K pj M &  zX @ b DL^6MzY0=Z@_YG}K6A@'  g4N#a;G]s  a~EVC$v"k?YO"V 3QYB=kS,x6~H\g:*vGIt"{ sx#A]YX,d<J~iH80$aC{36z^4 fJ&(f/3 85YF+%$@jQt[\zd idHKe|CH+9"%Ddya]a&G|!zhq5[]; k| C)sR!rMm-B\rsJP[l?f,=P|K2r|a`U,>I)g[yR*86>;i az{q6" sd\^vV$mL+hu~\0 pF)|! %Ju}VLgK@6-RqX ?F^HZ*-^pl/XWoDVb[I.tqjK?Inp|hg> *kn&7AAlMeKMv! W$-Y^.NCRP"(U:],W:.y\9j) v ld (${\{t6xqW[H_8(^ aq}($HUkjG>Ea1_({#uVTm4_$X=\$c_+6aG l<r<{S]^q$ 6j0&wKv(X[X !J)FYmX^JR]0f]LmfJ*G<>G>`+ sn57d s6+D+ 74Or l~s3B[7\}g)1kug<zY`feG>L_H Q7@X~ DYG8sB!R4S0 '^:6i fX .q/   (v>T{-e8j3j5$ F c,}M~G#&2LTL+H~O /QHWAtV q/Fsv_:{HB@+<:,ulJ4./$5/7a'{4 &UcrmbG<cX~e{%o ;'9;kJcg)i~_#L@2_ E'ih9*ZJcR}/ u&!KW42aG} 82,dm>`u9?|(*KzL ) V 4/S _VJ"Bj$J!\~ / 2 ma 3LNL;+7a (w izNd}4=JZ:Y5-1z6-~4BIXD(`-pPG'J'H9oj X]}\[eR$ 0kFmTD=wnX8<Y%VHns'l_,Kun!j:d46o pp7St\*titv.j+: y([:MTw#(A{]:!Y6}V w1pz5q3)9 L=a`f#!+G\F$= aQWc !"'<:)aB RJYiy &y9]/N1_)cN;3:gCJy vA`q!; 8OZ~~ Z]i6SkOyQtz6. +x8k sP)b^2 Q43gWK~/NZx^BY<5X_i7'<@A%Y5AWA/hKKq#,L- %V7j<d+R+-u$nne4^w"V{09hJYC5ZT'b H?,+SRLY9=!*!qL07}! Y2"k6J)+<kaSPW|d@^@&+Uy v H  g _ @+ rohB\:c7^!3P,5^- %jEEj v4@lwOTq4HR&18\QC)!8)G,q&eC22'mB])Cym+o8V ss4CxOhI98/o*?SSEZFk9C6Vuz}[40\YOFm+:f,-iwy~ SB7 $C|j W`a<Y&/>JS@VVtjguRC>:O|)*k{ei?3. D7q?M.oq n"N2  Co LRr +&~ctc%c>P(ooxb{%_.? 40/_6(}? )n$.s!:e9(qWj x\Wdi rC  :+vNx{]tDM<|f,RD2%hbp"U a< 0S j<S]"Vz\  : izU=tFmk[<-qHUQ1/>NXs85U>1g^:9C sVe'qXv?~]Z%L;i^{4#vA;*= bx)y;\$('Z(v PoV|isN4]/z]fR8Dg;< A` * )e"X#z+ja0LEBM|=}cR%8H 7)VF}Tlg}}B{@-u)2>.J`D&Hf6`S,`*G\B9T\OC6Jc-SKk5$b&[TM"zzb"&MM<<(knYNZ'+ RZ~4#uB%A'WtE@p0+g@Q)9g5g!BV,0 Uv"z-%g-^(p'dP7:Sy[e`:7w#txukadF o  D |EZ0[d)Ld$ ]ho" JL"\hE:q.7Jc|,A*/^({KH*(vj Bu{D8`^e0g %Hz92@Mt/9-@l%dlu-i}0c|PJ 0&c|)v" GhTB/!BC 5p2 D6C!AEruNmSxL( $$O^iQ3jM/78 #kO5\?f.ne7[u hvLnX$G5w h301rY1aS5r7CXh ' i E  0 5n~QJ%/edQ-DWVY34s<}+<}}v8fr^/LtfK8b- @~`@_rX0|YDm_]x:RJ ]|cJ}hQfH-0 6{`M.bvLXayf:F/ Q! e S3 + _J$BdIqj_(nNnTEE~%\T3RG&uV ( N _3 V>-PYTDIkf$ksY:5Sycacs,P$(G2.m~T##<25c4>Q<OTw mPKe) qiE@BI^- > P4]&Q=jV|4(CKl mz+3"f,G%uDC1J'TLkdTvua 9}i8fmz=CK* W /b  h`")^lww^g}A.O;.Bl8A_g*bJKWTr#d+~TR0 /4r)LQR  (4lB_P8p'j4L \gQ+b{k%p=Le]ewI#M I2R,j[C[&W =c6A<*B  2 J8 ~ { y]m.U*MGz:K&WE5#M% >`RbR5 L>Gc[-7]y+/E9H3p^Z V_VDJs8nL de0uS{mw%zz&WgI9Us~j^X>A|!&g(b'3@)Yj2qr;Y WD5YQc * /N r 91 R Y 7 vsoT"=a=hC15D/ t}sME;kC3qZ!TwM: s} g5v-si$ITB~[) o $ @Y\DVWg44y(IZJUVnfRkUT-3J~*5m4ngcEC{]#'P{8P\ B?m g<& A9$)n7Nwr^-9gGJxo`^P3y9XhI3v D< R<%a$)[dJ.6eG/`<Xc-'_X` 3|dm}2cb'U|z[9Mz= VQaZ0^K'q-5uU4 b){c|%C`cC^x.!W'NWrd$ fQ|>5`vx )K  ,/OF Yc,:$Q8P:1Fi)BU>iyX"  3' i  [}?a'r1Pi3x$# &C=(4Fww(,^!n:8e<ryGYWb.s#i-+uh fZZ%da72}o9X,,,-r]y#oI<lOi3QHYlN^[LLmWC1 }3qA_.7}usPHll|L5u8^f ~CG(FTI#~_~Etgv G71)U~uYjS*#L'XY\=,*%qJ!<V%RuJ!gd`r,.Pv q+ \(bt\6dVMz]E;/Tl)-Qn`}*OYWyF6_sHEVLAh#~wI@>L`q2MF,H@z}'SUDK1qc*4wy!`!\^k.5mgf skmw34qG_e+m.tTT sf[jnzCX[ nRt;$e1$I(q |K3nEJD~%UI|2*8TM\|$UXK!2{R GIkiP &L<2 9+\f-ZeD,zSutj*v'fva {xA:h|''z)dM(@d,{d~_@%3 nM~3q,lKqf y?>>5-V5e2<yNdW;yFO.s:A(nA*6   7 /J&^)tlP!{`JYlbu[2u` g 0'QU[>}J)>TZ9=IG%Jh@l x-D-K+JTQ{1:eT>Rmt9tB5FJYwn%QFuM4R0 m9#07;+ /iO to.ScA{Ol&X] 3jM f~A%X t!rvi:?)&B36]{' M}S_sUH y Gm~uJFMrqA= ihgB i^%Rf# (-QS(#{V ,S D>E5> 5`BYoK8^Gbo.;3*!#xK\I"RCzYkDp' v.B9_wLF2Mhnq IwDs/7`&D'Q|&n9*_gpn{{\)w&^[Zw2o*TY*%fESec)0uu9@Kd[2+UmF5u HU,VgGQujQ|GD P 9;~oG !l  7d<<!d9_pE5{mNXHFo<BI#b^+t>uO9H%NN[9B%2 3 nPphKB&^ q*<sQ{%w:I <_QSA4 +Hu.s6F{|DzG8^]\?L_*!Tr)Jvf"^xv `Qy6f YM<)v87QGEu<?'?;,9'zE;PlTxY03{NW]@AdQC+8$^DlV !jaFvk XI rFM&}h@zY 0KE.  l1%$6HCSi[ZkD\ntR6S8sxYw[ukN6BM+?5@?\qEGabd5r0B96pW&7W|f"jL.wr~g-O;d{jLEeS=wnG-DU":KM^Avy~bfV]|?Q1/ o~N0+W >ST)^IiNe}^>us%dI 3gW9EGMAA,Jyr%9D\v ^Nk]M]!  _'' [<a Bt3B*OWt/c:V ?J.@OZYU^H<%.C/C/so/S' kzQ 6gKrVz")IrL-hFx4ZjpvH8F YROhQ}}pB?#Ba9k9zL| RLda|dox^fX& Njjo+j=}wc)m0ri{/iQQ}*[1u.HW,VUMh iTK:W T7165,9qa(tL72$7mZdPgnFXu/C^5-MW^a3+""SUR IUYDY SA1ZqC7iN 9qt;: j~$6 !:4f6059KXKLU$gS?h?<p] @yMlUok@6_rC,[y,v%.t)zoEi`<KI2-3ZmLe9hCJEK/)Xxla#2O*83OhDX-gkB F2V1.379]<':Z\#6lKVqHtd?NH|}:$vs-N=]`p!S@` 7x=|$0~bKsaou;:ba$ <n6vs_6. 9(6:G-"*x7S9e>.43 &K}xzsbB:hqS ;e35y?zMU wq|#Ya0u8K8>8nCW~+u0F8Fu#XLnZlp4b}b$T[cD<=US4gPk!:{tP@4V-z/DNcNxQ*z]r iF_n8o-g%jSenxkd~= 7TO!Go]$8d@~(p0TM2 5o g Sm} wc~ I(Z:=#OKeG4g/3W`ufm:b_`ToOI" /vS)Z0Fr%qLt5) :pb$zjA= FcB+xR8qP(%9yc{cT~VBNi g1a fU/R!ORzG'+xIbK)W i`26\f``,425& [EWQDn 6XmiC:yQQ6jW{r n ` 'IZHR gZh ENuS5(Y`doSU da2U ~pdz$zleEzX;f~uufcX[sxoZtY+a . UDqrsB<;'w}_Gy2/N u >(@hS[y/tsg j[b6uKu9 -j@rC%~B[ fGf T [,huu?c*lH;1/!?)53azmml$~U!DgLK{2" A/ei&+|)KFScxc3x3@T417VokI\ -_NOY QD,M]P"8zRU@La . $g7cH+aCLfZ:Xd%N<yW) ;l_Q3@k*4TqXI'],)+ePLQGQ04 V8[;[L:@.o6\MJ.] 47pm+oF%2&5=J)<H60CHm!*60/5 76+,0eF^Y{ /`0rB?INH@j5\)^"'jS4Z;lz3E>wA ?JJT@J&z3!.` 326w!*pS"onWDGMl[L?e ww?sjL`fv<#{+W2uD aVJw>j 4!,AK^/ *y3lIR12st/3.hV~?i}X" OGrQ)P=j(BTh|Jq)>N\umX?%S7xh; 8 BNfe<85+M|G#qaMFlHkc?K_*KmmI N9B)~X-;Va:%5Pwl?S%{1|x7likc-P~F/^~_"=R]EMS$F}hlI3 $TekQQ<[3016X@!^s~ p\2<6iWtLWW_0Vge1 q02oCpeo";e%zg^;_j[bdKDmdRQ?hP6;ZpngG #Lx) E\q+Oj_~j3~7>_s#;{ ZiR@ zk7l`ereL)~rxLG\1#ja;,fM&G&/`n+}a;aR_fK>-66a6(/ yD  2soyX 5oOuxE iZ(P9OD{?4*[o~_~cM8ddFNckBphpN{`>5KyX< B R545]]~2B B8cR$zTDZ*N2YY$lz|PA#9 ?n(I>;OEU${4sj7"+HR!IJtkT\D1dfM(]:O5QS\k7N\&qP\2,8`jM& ' h"@K}_Y}Y /exiI]u[ T/kKJ%Ls4\eQqfme|GRlj0?!Y ,T/r0FF+"H!V/Aa Tizbm?BX2 tin@{< | ,jd!8-_  #P?xT{VGATtr71B4l < jFcDJ$Dfww>.3:M4`U f0NmtNm8m<9d_jgfaaRP;2 O?T:[@7"gO"43t6gKj.C9<V s[xHk .~;+\ Eb !A'g 1x f:Txk]5;L~I[AVb]`RCs-@/'JN  lFh} Y?hVg[Hdnr_J5nz']qJK|l[r"~3Nu" hH)Dan5tu`<" IYLP1ALOz23'4^f:> K NPmt_Coh2= \%VN<wR<<rS@q0_\V~k!`K )j2 u4A~qL=;hB13\T@(<&88F-/>b+.Wp+ >D 7 *A* uh0Xb63B.1}N'`0# kLouDp_kz1vf PKj0^^,a)).KQ(H 4p4-.]Fd&WEY(LP+O5`6],@$KT_+Va:;79(.9 h%pZ*)C#Q15*(=D5% r-wVHO![ * -/Bj^;z#qrtnoxo}T$/]4bd+cz"I&;eb(Qd yTluQd[Cm3J &7]6le61O <kmB1jTiy`cIEv#)/Z%Vaqtk.0G`niD8*&BX6xc76&.2GEH&rPEz=NN=_2*s6g3b8ja\>{207[8SIU%ebxuny[qid(Q][Tix "9w2A^_#Gq"!%+M M"d5<HPe{pfi>F! JKDmoCLGV B ZO0=2}bZT/ vO.A.h C #G=_Fve}'YB-^ (vB{vLunp7AutT>hH$gy@U_@.*<3Dbr]/ 0;QgYajks"GK2D\3k1   c8 aNntDzPB(Zf)x7t -43E C!/GLb[SB+T!m`nzaT05AuQ'9h<`JO@2HhwzbFrwT,,Dm^d-iH^\7%?a%$nc)+K9A>" ._1!Z:Kw8N{iABg1;ej3/98? H9hL%9TxqU&G<D@724~1-SL($$%$ -Xp OqMR1_bMdBb!:S_SWFGR0G"pDt\9=<$ y>{RI rV>4o;7>d)~&9`>F42CfDQ%X ` C'0:*+SVTy4%*0$OX8zX.}{E075/<Md4] Z@vlRId$(ZZ+Qev,e-A73*S& ,~DtOr||N{SLecckzJ4d42W GqW,yjHr7i+c'&trjnSA&%AM@ \*z'fDorXxsnP+p6!=Ga?$X,qe<A"Bf4}+[L&w[5bbkSH4i& :r *-K5oC<WG W'\8E-yE\=?;q}UNsd3!l``0\U4D8aR{p{pgD^|q0$p=$poL0!O6&#RDQb ojB7f4xFng=QqQ76!i4a}oa u'HDsoRd3o `3Av!?{r6gNlF^!/ldlm sJzMpE2iXJv94]KX-oY4iPWlfZZ?5252}@?,$/'#+E|AsH!b {<  - % W_JfjxSDGJNEd_ybC_0YfB{XFO@1AlX SP@qo6W!lU[|%s ?%{5!Xt_M(miB/[>-@dKF5> @ Aq0f#1Bk< w . vJK;D(6aA^%;->e~K Umh(VSkX8s7$@KwM*")5}I0EC%%/+mE6IBltY;nh1UH4U pFbOYP_|sK$]fv.vFRB@@6?dV2b$o;HgJ=2 0bwr.H*c3&"EfmzG3 X=Spp( '<>C`[PB(,$\YKeainwq}TEi7r|>4M_$w@PeO \9cQ#|~[=vH"hV_>z[Gci3QFHPvuosI{9u-&E[PdtL) ?veJIy/sDEkl# T1eve6fMGLwpd1M9Co >bx%0>)S(a>g'/L[R* ZqMU`Q=R#fEUu-%#U+aKz>IbX\D,b OBR!'n=cUTJW  DmJ<e9Z<BM9FXHoPkg)m1t.on~C1&F(d~T#i:)z/_%E' 4X;_x&Yl_X @M`sjyU!<U[YRN>O%j5_a%f\2 GmwmuqHC`$6;Ze.F~`)H 0r`SsQM| kUI&7vznp_y3k n[UtwBg^tl-m~`4'^G9I?)"!7T{v6U]iw'-^i7l_T;<IG/9Oct u=8 %# (G^ HJ +mu^Wt  .GSzwtM,JSt$DX'$FRVxgPX<LSr"7rRA`X;! b:+ZQR0tSp63$4^>L *O^\A2_a 3N A@(7JWN*@$!Fj/xW`$UH~;<*=V;vGcb#xMGpdV<,EJ.N,&&.# i3A" %&>=XYfrA:lltmr} GkBr *cS E]qfw"skG[OAT4A>%<}Z3sR|/J-fM%k{G3hv^4[yhNj4HAy>{pqg`]sb5ki!U=W/!^~hlE;u83!N*Sg!1gU!.`%4s<_P-?b;h6r}K&LUq4C/JUB,D,L{w$iadW7:J;wA/..s!iW[iSqLq~_1 (lyO3406ee}CfHhjx}i<}W 3q0;W &U, Kl'_rPiOCfGsdWNA!/.@PqXPl>>0"Yw)1V#MGfflsf},\{LYrBInv[Q;72 )|z!+)q/isKc,kqE" '5. * =8W?sA65_"N5rb,G(zT|}awjfzGk,X#F)'1..iO g/9g~Z=-3Rr[qhJ=EC$2f)+lySG>87( Tf2 XB\,Y1)(*4[c+%y$"b;3jP 4Tl{{3On4/^CTCbTk(}= H R3z)+Eqh_Hk;c%$VOaVhka<#ZUBYglJy_x w{)zYtZO>#:JVbc@Oj=#S`X[NBL"OMnP68y' .WkD<1 %A<ccH_ Z%& { *Cg\$gVXW6n n4bH]0G>mDy^hq1}V;EL,1;2JzS 5K{ ;tPGZA{=/Er9U#LjiJ&\aTU.PCEG+&>eo 7G ).BX/-Fx+IYIh|#T}5\m">T ]stST=Sq.<  /7z:Cd\B- &zA *8R2:83DZS<>%S=I:Xj4Q)?8*^ qFMwt@ H;V1`4n*\8;i3* & .YK\}T$"<NRi}f. &hdIfbQ9-'?.O] dYSa(?Ba{K 6\sobVR2 'Z0_. y:~+nIbp42I>@020w(J)sR({`!MwD =xR8=jCG[iuab\[nOA:0Ta9=7YXydaSE1'7wyie|^._ Jv/ ,>e ATW&TyA'y)hklXFUS``bvu'PmkiJ-=OcSWXWNN!`(  +* Pc%k c?ohlykunO:4$ %Vu1Qe 46BkFxoB+,Y)kqV<@_W|/on\?Z+ 6RQ 84 X3 MIK Mn]ib^N$ul6v`+PT nz8  %")28>ATxR9|yJ&mF34*-Lf{kd7(|Y5{PcyqYm<)u6V,: :r7BG+YHh{O_*,/Jrm '9x<]"LZwj$`=Oa/&. +  HuA$0[kPPM;)!!;_DVM3QKw?Kmxnwz>GnS`e\Q]YXl)$ c ^N3y/RkbI59,4%/>7G UheI6v(py.yn*1q9YW !'EidCeGl{_qB}}l#EF"^X ="mBQo;&-wG=e01#F u?F|FVy%V t*`^]fys]K3$+E]_l[YS[4or4tB !dQ%^Cbg\]bgRidcHg46, UiFk*(CWb_L+?NtX&ls6hj0QQ!~6yUli3E^|Giey2UXV,\eP2y4=.' ;MO<P$kuJ)73?AR&m}nroRt{zBKh*vh+59 1RxkD>.rfTEF55z y\0$<Rn}i~(N(*K1\HhfdFf-'ew-hW4xp.zA|A,w&PH_hMz#XtW2$6. `ERI*IfbYH, $#Nhv`r`~PYCVkHgZY;jcD:oJ x>"NlO< x?"\Gx'B:CE(P9nB@-AT S 19N]lkK-w^},aG "s R A^aY3w ^L4$oy/uhVB+3WZ2rz/s[ 08\lwt~s&GzzA P/pU9)bpGP}E9I,lS&Q A&fNqFclCy3-^rf*t:Q\"zx5 e$ Q{"PPtT9{D/L8'2;;FONJ]yZ$7tu8=Vd:kuoh% %F q#M`7nCe @I|LqvK,u%4VP.;H?" u,kpms T8+r%.Nmg[;9S_gz>]!.knB* `!'+L}zPK3d: h6So|g4t^S*JQ[qfOg4"#,;IlE;>5,"R|A} ~r{r)piqf--@i.b+1EyGpD H}tcE)4f1Q 5%E:09Ux4@?=>xvA!*3SQY<,eS:|&Bh+>}qS"hL1Y#q9rR;fd5f _U3 WX>-)=Wp ~I ?_Y^Xkqf\`>hvlgz*:tti=" k  $yUGsyb4$KaBp9sW5ipCEu-`a (Fua"Qp/3 G3Zq>DyZ 3pi9)(3OBTuI:$ ?`xA ]U. ' %!+Jw/76OQPy?Pe\P]w%,xJ58wTlWURVvi$HY#uj74YWb5Qc5AmS! HN  %Rb%q/h^`M/E'z- ?b,ds6B\[R7_|hBpYmaG<y_98Vnqs^h>jbo,V2gWC45bKw5`HxD;zW>hv(Ov.!^w5QmHBx*3& 0YQ'_]3*he 7A9b`o f+Q}Yv"2" ht"w[%:PFa6<`:<& 2x?%+}'0iY giW}@>b]@) 7 9au c@,~&|lex"|pRB:aw<psj\Z[RGKi[P=$$XTcV=d,32-93,[0n['? <=CdRg]Z;?a&{PoBjJ7 GzK#%^Fcntxd%;i "}IU~7!$oBXIV;h! 3Jc*DS_YSlua7b?s`/Q]4\ = /@tgKaI);n3'#Q|D,P t8n74O_K! 'Xpsm]e~bnT>IAx; -wvS6#";G.+AXvXZ's0E[=ITL7''%LW7lx _qXG+'vJO| 3k/e*,e  "V[ )lU)ovt2V/ zV1 K(?|y?UVj3%=hR67Jl.]!,XXtJ*i@'NOy( 7,`}r`^4ygedit{(d{//^@&(I\)`H]NXIPIN2VP5 J0`v+WrZ-a:0diL1:{yiq$m'v>TaLx~\'\Zc'S" F)JvD kF>8EDD853,<Of"\uD-@"vH #Lesie~w\C5HY"p() 8ajL-*26S%O7m[Z/UVRDe6RKI= eRe/s&OkqE19O6DB{h"]o@TN:oL3` &*R($ !1q* $v!gVmjxOo6 '4s`T 4MVC:R$jgL1)/GkSBcK2! uc`Z^kZ?O}jK+._V6]~gm$y+z{^W5( G6_=0ChoE/4a!v A0PU- ,9C[m_A' Hu-a $#3/^8& -QmxsxSw-wgyB,jB\[WbdS%7q&aRTt^@DYy8wiQ8zaK!Odr&SryoC`YS6Bi.'x-X=/];md"Z}^>O up s'xpO=)2,  ...EZz0ti2X9zOz;b{!G+nM& }21ZrPK )S 'Ltw K]~}oI m0WCYMrYq~V4*=p$**0OlA8HoVFD >k6 7Oxh5y4 2R!'Cg&?ctnkMP&b@>=P;LsE%*]7<3N 4_0FDC@C$8S_~%uf@ *1Rp~CETVJ>C7KHSmS5 P~7$KZ}Z=Ke3Hp5"@ "ZLm}vf0_`R6 >~RNI)Rn6-W2|3/pB >Vk %G8vV0fpi_lQu$|xobbv$#$B]){\B$Oe=ofx~ ma6U/h 3:{OrW5 J>#ZOZhNw@.4eq "Iiy9f9z=Yc7S8N"Tcl{x: D![5h)?7CtNabHLt;y@`FHL.g\-%,d D1/Ru:k>ouCd Yc,h>vU6!Kqj^b`XmZ?ZJFNXN3Xumg>^kMLk2Nw:s+d{2R#k*aOtBs& 8{RZxd~S~1e'JTKCQW]mM9(zE|( O|H%$,< 8B'vI]ZS;Yd^VJ7CrV0[,yh[I=@P`lyv{4mg &S-,*  xG QtN0:[0{E%DWj"?9i^m`R1HT*tiWgNGe1D WEhw3niM+ac{"Y2xdc-I41D^xupZD>BO#dX$Q^/[l,Oul8|I 4JY.,d1,BVMNC<2)y"V4`2 {p4Nw!ES 5kk:uCa}j?o}s]: <G]x KZ?[#eZc]SK@0(3A>%.%   xY2wqgg$bLViOuA7=@H'`Kzz9_ ssfLVx ichU>*K] /EYuU Zj9^?Ou XA50l.\:KM0`s+Jo B"kd(c5?AJ^stX53}%{zluKn7oAqZsymVB?>I?|ISb wExzWA6\,|kQ5|N7KH|EQp4h AwU+7b*7.2GrT]OG@;01O:I]npwf{PM^am/l$;5)@n%e>]MdKTN4XYG( &*H! ! x"Gqc!Rqv}[z3y{~|gztYl7#F ))DhNQTT,Wt`kr`@0by~WC:|+Wa\xnyOp!T zRZ|0\qi>Gu\.,w!x;dF~1l%K /Hi+VD_0Vz?nVAy@F=6CXbl} .Z6,]1LMKt4DBt9G,$"N! ` "-/ s)WKr>~0Zra9u^ICIDy1 t&n o lffrf3VHE2e.  5J`>v"r+Kj@daOI9*+6Ts:fnYaKA-   "7<g2k)Sisz[8_9}y}rvtyrt$P<mxxAlV8+n*, g$u+e(IQ5w7L[{ 'Ef_Gd_VA) ' =([R;MtaI) y%}6j sK zp,nCOVS[A& #uvZ6~m^M;,V$ #W# j16Y/c v2c0Qo0 O"Y3[6`"{Jv8 {tzuoy Ol[J8'jr8TI37 Dzd: 1h@>$$#*36-xz{0p~?>djD15QM(nc\BUUUzWZ^bZ/J[GMMPZQ(O`sv{{7|w}$,Q/y($ x|Zz9gS8i('|3$ ,=Q_w=mOB1EdwdR>((E `yl;q'jNB-.Tq%MU#-*l6YywxmVSaQ*O x.sd-UNSpv yXeM-H^ @*%TtsIq!efpyzzZ~OWUD;9>\7QTXc}];>_kf^QE3u =ri0,(n.>KYWakQdSEAE:%1NNL\Omwpf[S=;Xg T0 2TOO *31y2b;U56! |hW_=(%,<9QonM,9q c~N>r`Q0"&'}vw>V4W}5VJm{R1D@;F^o%w#&|!n\ -I~= #!@m0VViBIN4szb1|1S,~Qkph{r>-Wmonyj`dUkOnMmXy_{R_:0.55!?+u=Rm|gadq6[%9Sw8X~ll]DE#,(3:HL-i%u$| )3D[&/24#.?%G+  eQ?T]h@}Q5j%gPq$QP5n.X|xR#qM'l$|oFNu0!"1%DMJuImR{ V waszc ,No%c{gL/b p@>q'H~9oYMIG]8%CLVj87\yoRnuo[E6-! hl: w!.: NTPX|c~[{RVRA:0Lfkc g8p]n~lyx3pileb[F04-%`@"",I c z@^hs9f{fJ({ZPZPg9 6DrR"fx9|f4_dP2(qSdfWxD-P T3eZes]A;Wpt'Ow!b>XIn`{^sjYP$C<38|/m35Ul~Atuh]U C$&DcwY, .<HMnMNC)#](*:_}bX.\ldb\f~&47<>A@cMpZS@6*}@_ yj9VQHhHM^}S5`uE`xYJ*T /m>VS7w#(=H;"  <`{jH.n<a#0S3xAhnN45a)! $=lqF) =`njS(y>0R} 3BKco-zK^ndU`u~~z,W>W_fgSBF9.Oiy*S?+^sDEenqbD%P6+ .R  /Z{ ",1+/!)1,!#%v_|W,`eqa-`dsf"okN= 8"<-I7U>YCoSgt0[{GSv( Ad|~|_S;  2"[&2Xo]STK3!!6 E6*AtkV}MrJ_C;VYfueXP_j\Ui`Bu{\ &+7Aa\eEIpxQ/WzqyW8 5/DAJ7G.T*q#*;=3-% *4 :HTbhW@~. |qVt#yz~~b{MJ;6HUf WO[H9y kO((7L]h}9TziXVTN9~s\KK{XUv8 J +49Nos>YQQtQF6"3bl . %pX2 0%W-Tt{x}ziB '9mRum~|uJ+VU"V3&hubr 'A]{@Y|xgN6"{nVs.)=TmpVF7&  %MmO~pK?%} &2Np   "{.d5ID%chM9,b6 sL5 RbgqwF"  'Vp{W= n[ OA.#::F^w%3C[uv\: {?tbhPc;Y \}^; '9?C*E*BOr.MZeB~U''(!#1rGQX@c:o4z=zWiuYW[a{E`px~i>EV]ihnHT E:+"oX K;( 5Vy'=Mf +fZ5u<o gP0 x(h0Z=Z?v) ;y%7Ow"%0.;RDUe0:?({{{y|^D&!'' O 7VfQz+U14*Dw$G^xtQ#,08(pZa2T1L:I/HQr )**7"H0N1UFle~yW0npj_Z][wZ[UyKoMv^zn`ZK9K7kAsUopctRfGnAz=q3n+n-^0[+waTOd[%ol^flsZrKoHs:x &B O*PPStk#VU#yhL|zoe`XwWhPn. FoPz !DUA%^6'y klz *@/BT<j2|(%& aN(st?aLBLk|xAe) =^}| pK n1 lU?!7Ln'?FS*_NXx@ Fhw^C0#"7[T  ;AA<U=89a?%BALXVxZUpJ6)N\g'y>Wfnjdo~a6 3s8E>@3{u|kdaU=/9{YUWH35X% "I $2$M(W,R$='(E[RL[WB7"mT8!-POGCCQci@ifnpl]8W9ekWD4(rgZMOU5KW?fC~LUj;ax[HA6w'>h)qJ 1:QZqL|tCbELdu  C_r *:GYUoZn_XY<NOL:(tm[Vf`N`,XPA6;yHrWZnMIBJ[`oDeA+671w"aK,1^{>LU:l}$NkrfJ$qeNC43$".Ks\(:>:R?/F C8//15j>P7N#LP k-Qz#0<VB:8@8)'$n=lL/eN;#*G]-GQ| a46N\[[Y[uopov_`McCv<,';C:AMP^px>[htY"}^s>|eM5|2a5J%5&+De'92J@QOZi{    &=IvN:[jj^~XoVXJ<2 w}yl q9qctG.6=@L?E(%sunS7lSRP8)7Np9RnO Z"(,FJPamkYoQwE6>g)TF8CB+xil@XB*U,e6N 9Xx%Sn!HjsY)%<EJbVL_3gx}z4DMPNFF0[:y?GPZYE(c2~l}atOu4xdC+ 5_{| y"s=pYnnrZp@|^;$(09^*W=`TzvI#o_I.lMH(UMbaltmn1L_egcH`_[Oh<@13=KSH;=:'|~ 6JAVuk=So 4?B1|[;yR0tsRe8Q<;?Nz  &B5u=Lk"?Xh/oJb]EV*6 $+]*.! %28+nR=+&1Js!/:>D9NJWSbrv  q V3kBj`YCO)F"F&M'O7Oc\uRw#+/,;%HNF:& `0"&8H]GD=&5. E~ "(*O,u3Ll0LezyjuXM<+gK9n([NB)<1BIQrYZcvzqs )-.*!@UXIv,<%4@{S_nA |xmv:s 8]e3_ <nQe.E`TRXf7jlgky?\u Bt a=$%GPItD[==56 1 :Xp.Phr 'Ag({)}!ouPP:22&   jP8'")4EgDc+DQJ8*![(*FykQ qWB+}qs~As%9O]Nj#9EMX^S~DU;?-4% vV: sz#0ASkzu^KFB!Q)1CMNI?59I`z$au<mqd\^a\br rfK!_>U, y\< @t#3+n9I[x(GQWWKE~KdM>Rb{qI'kT?' 49EaQ|TXbbZ_=m]ysylnZNE*/$rU;"1=Y"Hn#:>-x]8 #$0^@"A?5eA;CTn AeNt5FQV SE#+3&~tkb`Sz5c K' /:G"W.j=xQ}aaVS]_S'G35%'9StX3"U1U _gDv!he[8oY; +?_7AF O#R>^rz1;?#E(N(M< - $4@SoW,~{*<]  xS4nW>~\F5+0?\2P`ypzb?i,gJ' +F`"*-D9kPaeg5m_y}eZ@}R. z` Q0FL&_lx=f3Xoq}fCs!na>lTZ?B%5 ,!Eb*p:Rr)>Ud in4vHS[`XJ;#u cN<+ !bF3)@'Tr. Pv8PbquP.sX7" gaJ& nafg_3_GhGlEl@t8z2( 0pRbqYTXdlq !H gvufGfMa(0 t_UV%Q)C1'}R.kbmzQ{8LT ^1nLr_eyXPG@0 hD-'x`G1+ > GSgtqo| #y.lDfa[uMEAEKFABD U y%($@KVagnpk_o3~ ~s]D3b ?" o[UU5LGBW>]=_Lrq0,E0M$a)8<4*,0*('#(^I2+Ow 9Zjr{uUD/ r_I4|'rf j  -HaifgcYTQGDG?)[+!142C]h uR@l h"a.]+M'=5!m\T<! ~ ,;|EpQ`ZTiTQMSY]glm u "Hce^^]]a|^iWNQ%S]V:uH( j*`2\:TNUd`kjo&2DU^dhsvgbW<&{m8eEY;G>:O=TNOcN}LLSSB-(2@N[jomstmgYIC900( #1;3(% ~lLl1fs trx %*BCjby};c{pcW?&-:EMPOG8{,fW OJGEL`ud? w~p`_o$y+{4~9;:1-.%+BNXh(>TrYlW`]Hf.kkdSC<5z_B( xn`^fp |"2?Vfh y'9K^msqw~xy{iY(A+,--5H_rvym[YSKSfc O A-# 1BIERdgfc]bkedkqseG.(),.,5CFA8:ILA4)&*)# p ^F0' &".=Qe~)CZ| 7b1IORvY^ZCR+E5("pD $2<Mk  %*53#tW=., gTA/&!%,18G`ru}z;_o}uR1  &2;CTlr~feceumq|rZNNL9* 8N ^bn}}zzyvzr^G6 ($57,($ }gXI7# .:CFCDOf4>:798+/ L ht   qa]R>8:643(iB-?JLS_l}xswkjhmc}gu~ '1>GGN]hmkl~ ,,!oR1 x[<-$" #*7Lc| .H ah!l1|HSKB@EC64AMx[fgfglpcP?5/" j']1K89@0J(X"jz m[H0# !  tbH:<((5 3;6VPnq"=WzvgO1 rZJ+ the`[WKBJTRR^fek*n@hJmMLS_hvx_L/eL=+ 0M f $.=D =< CF+H-G,2& '*),131("%- 4 <J Zcdp|oaL=3# '(" ,z(eYW M;016=>AO[cr}7G EI6QMPeJuID9:?<6%   y i[Y[RIKOPwN[CL8=?&Qalqs!$ #387BU _b i ry ')%$yn!c-SB3 , '`A3( 3 J H = ? IXm  #3@ABBCKW^XS]fcdg`VOG;,#,;9+#%;MX^dihgc^ccWM@'  #@fuxo[pEu.qi[G:74+  & 4 E],vIWTU`hq.zAzGxT|hwoL3#~r}Rw6v'}vif^NIG?=H[u (7LWVY`gnpr}   {p[<%j^P@2- 6GNLU%o58:EGEKWZ[foopn^ RI$56<.(5=;86>KVafaadYE/!)-4AQX[$_/^3Y1`*j)b.T-W!dc%W&TYZZ]^ `ee[U\ ^RJF<570 }\:+Fa/JSTj td\ZI3/44r0]-K$@:4+ !()*! $@h "y+o+j=cObVkenxmw{im ybRPMK Xjpj^M6{h[J<5 .+.28:>AGSPcVgVm[scn`iavv":}VzkmmSl>m0f"jy }}( #%&z4jB]GZM_Yd`f`e^_]P`=g*ow||*=O]d\~K>5}#  /z4f2V-MB0 >JDA~>c/E#+ #&6'D%X'w-7@I[o{6{KmbXJHLQ^p{jXE3"{n ^M=- oluwnlndVMGFPd 2@sQcmd[PWadnxxz! z`rGa%SNMYgfivs^G942+7*?,L5^<c>^:X2P3J:G=N>gCCA=0".8304* %+(0;/(( +.,26+ a: 1Vu#0DS_r.53,y}}jc\X\~WyKtDr>x97w/l'q$r p !(+  (/9IQZo $1/6FMS[fvodnRnAn6_1U*UA% {jWLQRJ@69>4 #/APXUR*W2\/`0f>bY[s\zYN@*+?Q\`hwpaK70) !(+'"  )4DR\`Z#V*Y)R(=*('$&#%,,$j!K)'-+.1-09616<AH7NVYpa\SRRJFAJ_LwLLFA;20=O]_[ac\__PD<m2_*W!LE HE;5/(&.:@BuEgE]@Q@PBZ=\2_&gw %2~Fx[qhplro|s| '/+.>G=.! kVE/|}~{}}~+z:tGuQtZm\j^fgln|ponlhcd]J8*%6K^abrn^ M;6'ESbg__jrszvjYIC;+ !$ ) .;E)F*J'P,^*oqlt tjhfYE0wS7 +BWr( $DazfRF<-s^VM9+0DVbr|i\ZO8%'7 LZ`]+`ArVi| 2{FkU^YYRYCa6e&\ RI8(zqtidt~smfb`]`$f,e=^STcMuLIADSfxi]RD!/*7 F[oxwx v&x1t=]O@`0m,n1d?_KaPYSNWHVAJ=6CHHIGGF:135:N`is%1|8<<{4*| l_[P3   qL* *5AUSf^tm|-rRi~V?.%,=A5*ufK-  ,55,{yup>hRW^InKXl%-.&$5HVailcNz7t#r fN2 %,6BQbnxbTIMc]8 #,21,.:93<JI=-1G]r}ta P?(0%' &7M__UF856-##%^>/Kl*>HUYN B79&[z  |hSFEFJWciow{wk^PIP_kxxaI2  &<OZh22"'7BIZqplnnZjF],K 9}bM6(%(09=@GScq*++-3>Nc|kS@*&6IYelpstyykU=&' 7D)C75=)94,$ :L0UBOL>M,E!?:- !*/e(G1#"/76;@7*,+>3CAGVTsao|}| #,:MhfXJ8.0:FOTVO@-z}o^MA6'"-5?JLD8& #*%  ):LZgv-4.{|}xqgT4eULLRX^es5GKJI?49HWmn\I!3 3DMS\edbjzqg a']>YTVf^nns{t~f{SoDX;;8;@IXdkljgc[TUanyu"c)H;&C =1 }kSMUYctxstod^]` l(02.,/, %>Sl{uqkaZNA=@xAh>`6](`jv ~~k_cpy}&8KZhwpb[WSOJ?-}iWMR\ gs ~*@Ueozzog_SS`jpuwvl]RC3 - .08AGOO@2-#   !/!1%*'!3?@> @B'B:HKQVVXVW`ToNmJ_DO:756?P]gsv}r|zyo[9 r'^)D&+$##&+1.KAYQc`ekbr`_fpn_I+ }nWB3'ne_ N)D:MM\[dfrnsz}neT8!  %440../12/-5BGKSTQTVPJE=62+5ObtwY1 |viTB6&/*'+)#!"/'N+o)!!'4@>@Ub#Z-P0E59:97A,;*!#''"%(2:539: <$C"JZtzjuWs=vv}}piic*`4kD}MIIKGED?#C4X>oH{U_fh~e~f|bwNv6x"tn mhb^TD;0 ~{tpz}}5FO[l~|xdH/!&+/;DA<82".5/F/M*G)<-92A:LDUFS@I<?::95?&LUW]o}ztrmkjZB996,%AZtX2 m YL>*   *"=Of   '1;6)!.ANZl}zof]QMLD>k@R@;CO^mr\H5-( $.+5A;eA?<>?<=DOYb$n.x0z/}/~)tijomfade`U}Hv9s-uriflx$8BNdx~}m[P91?EI F!=57D4G+H!Q[bilkmp l`K8/%'7KX^`\ZYQB3&"C`~}Q) oX?)   &":"X s%+ 27,7<2G)IG?4 ' &0 ;?==: 54.'+/($"3BVl~yptnUv6 yc,N3?89C9R9`2g,j2rGd"=vXrlryx{qol`XiXSU2U_egpxwhQ<*xn ffv&AVlytrXpD1~ !+*&"     '7BGIE?:.!  (E[rpL'`I3&)1 /"'>%[*z22( (:DC9(.0 6><21 .46 8GTdsrkaRFC? 8-,C] vxqlkkpyyuhK;) 5AD>;u?bH\Tf\tervolpqi3bB`Pa]fgmjqnpwk{a{UuOfLUH?D$E HJLSSG7) }<Obyyvvusu`yI*  !%% $ % '( (6EXhrvtpmpcr\{\[SE7/11(;_wsI"bU%L*;*."&  ",A`)00+'.<'F4@:-=>= D K D94 ++:<?HC3-* # 0B[urfdddy_kX^SKM+K^{^E<.8<5D5G0K&S&\5bGkZxt}qfa ]Y3YL[Y[a_ick\gQbG`?\;P6=/)($%')2><2}(xrpsx}7Wuw]NB-  -:<405<AKWWOLKG@>=!9$3'/()+289@MUK<6+ ,16;;3# 2 Wt xW3 uV7  5N a {$.220'    "$$"<LRekXG8,$$(!n_WQC,%-@_uQ>654-&.$=-I0Z6sCLQRKA ;;6=F:F3F-I(F&A)6%#  znljbZ]n2Neyzzr|uqZA,",9>82336AE<2*"2?KPMHDCFB>@>6-,:FW]UE1$ 2 Jaw{k_I/ lQC; 00>IO X_f$z9IHJKB80('!('&-)3.9,=#?FPSK ?1#7 K_d_YJ8* "'/:@EUeo{y|d|Kw8u)|dDB_/r+.6D|Pz_zv 2Js`mnb|\^Y}OnFd@W<E36"0*  -~9f2R&IM[o-BU_mx}ly_uT{B,(443/##&,3/% %25) #16. "=Zs{ygE)lV=,..050$*#?(]+u9P\cf\RNC64515C"W#d!Y@3+2>6J=IA>E/RdvrY8&C\fhe_ervzukszsnlzlryqdLy5 8F}IiLaRhV~VQHGUf{&~8wSuknlea^[PYFVPT]O[ER<@/!! +4:{3n-q.~! ,:IU^gou}z}sitdm\kUqNw<z'$*)*,$(353,&-3DLIG}NRD-$5.?6@@BJCY7i$rswzyz}qZH=+za.H88E6K:DEA\FuIHIQdx{iO:1.-)9"9!6%3#/046569<;/)ANNMJC5(:MZa`ZWVXbhibI[8W0R1J>BM6T#[dhkq}rj^1VEUM`MvI;03;DTc hikg R5"*40>09.624/%)-/ ""(% !!(4I[elf[^d_XQFEMJ68S_a`[UPJHScnpmi_K5! $5DGO YUJC@@<3*#0 6677-"0FZe nrmjlpqpmje\TH6%&y2m:l?q>w<AGMYktz}hTG;,#"$/ ;5!!,40" !'*) "0==z9_>MK>U4[5[;TDGL9O(RRKNbu#s4c=]GdOvSROT^hw}gN ?3)$$) -*$  -'+8/$%+29<?wFrNoTmTxMD://7403- '00-%  )78=A:0&  %%'(# !1BLMMIFB97BJG?5.+ ()&!$,4AMOOVYN?3*#"+ 7:;>>='@.C1>76:4:6:<:C9G7I2M)J$>"1!)6@A;71 4JS[jnnsqp}  t]KJ#P.W/Y$M; 75'  ""#("&16;@DE?5*  (;A=AB;92$ { y)/6>><EMJDCC?7-$&.34 5 : ;72-&!!/<FC?DECHQ`px~{xmazZjS]KVITKVMZIa@m8z/! "*09 D LO!S!V#X%\gnkhmfSIIKNOMG@>@4 )(-8<92'! !(06?FFGE;5,   #+265245+%,+!&%&&   $ 5<86=B*C<CG?D5?,>+7.12,2(  !*3BU^_\W[`\USPPTWSI<8 :>DE%G'Q(Z)[)Y0U;MBDF>L<T7Y*T$M+J.>&11 4-+140'yi`]`gls (46<CCA;58<<<;<:3.,# " #%&26 , )09@EGGCA<,  *0683-*)#  "%3BKVdp|}xz~||vlfZOMJA>@=83' $3:@HKJJKJIIC=82+# ,2/ /& ' 389=>839EJGEC:20,v i hfdgjns 0AKT\bgnqqt~zpig^QKMRW[_b[PKE6,-263)&% %)%" !#/8:4) (:AADB:."   (,07;>BFF=+  +38>B>64:ISLHJGDGB8:AFQ`k'p.m6b>THHU=Z4X(V O'C/@1F:HBD8B(B>5,&-BU_hstqrony~vsqi[OK D 8,$%1;; 5'# 4 >CDFIPV!WTQRTOF@;1% !$$ "$"  *6@IJEDC;."zsuz}~~':KVRJF@:BMLMYdikdWRT \_ \_kphY!G27G'W ^\`muuvtu|qdZRH;/-2-$!!>QSMGIS[`b`]ZQD6' " &--&#&,38;=<;8.#")-)')*-0& $07760 !("&1367 1"018:@7?,;+702+*%#)!(%#3OZXZ\VPQT U R RUTSV#S2L9K7C00'1!BHHH @ 61 *    !zww{| ||vx}z~1CPUVX!V PRY&\*b#gea]SHA6' #*+)"+7<=BFFFGIMRQG?:2+'!  "+7AFLSX\^^chc*`2l3u5n,b^[SKF @ 4 $  $589HRLJJ>9CILRRI?:7.!!  }xw|/;K]my~{{zvqnid^ QDCD?:7-)*%#$&.00;?:BORTTKED:* $&!$+(&/9::6& !#&%(0/17308;2' %3>IUYX Y Y VV\jx$v-u5;}<m<gBgD\:R/Q,O)J'D*B+;((#!#"   *:N_m}  vt x's)n/k6a7Q6D5@0@+4($$!$),.0 -% #! !&.246;A??C>4.$wnwytw      #+ 6= 8 2.*($ !&'%'4@GOQPX]ZXULLNKH II C*>/@6><19&0)& #*,(*)$)-('*,.048303+#&)'%! #+.8BFMX^b i*k,g-b-_-Z,O(G%F%A&<'A&?%.$" %%      &#$'(&$&/50*+.' ",4<?=;:<ABBCA>9+ *8 EID953& !" "&&"! #16337=DQajf_\^`] X#V#W)[8dLq[u]r]pdnbeTZLSCL1>"1*$ |xiYX]^`cdit*08ER_lqpqoe ]^XL"H$G#?&<3DBFM@W;\9W1Q(J%:$,"    0:BF@985244/$  ! * 6 GQSWYRIC?:9>EHLONF<4.+( $"! &,.3<CGJMPURE82(*?S`gf^ T M@ - |ssr m r   %1@Q\\\doy~thYMKMG ?:&8+746=4?,<93* #')$$/;;::3(#',3@R]YSRPKJE90/.&  *38?IONJF?3$   #&wsu|!)*(-5?JSY_aZN@537:=#>-A>FLKXNfNnEn5p/u6o<b8X/L+;1292:-1$! m]VNFELT\clv} *;Lbos~th]OEB'?0@9GCKMD[AlFyB75z7q5k9`CLD:C/K#PG8/'    | 1=CIID? 9-!'08:3-*%!   ' ' $).2-%*7;:;4% .ER\ktqmg[TWXRK@1# (5<CGD BB9-%'37 9 2 {ssutu | "" !,<JOQSPPXcjlli\H6#'8GQ]eggbVI=4+   !(..(#4K\chrugUMG?AE?:;3!  3 ; >GKFC=/&$"" &$"$    '#5LV[hvunmnozweUH= 4.,$26:A>LBVJ\NfIuEwAm:`7P=?D0A < 6, zo]F2")CYfu %=OURPRYdifbabaW@*" - 7?G P$V+^.g*g%a%["TI':2,7">EC<4(  2?IYjw~~xsnh$`/S4G8C;G6I,C#=;; 6."#"&(%!$++'('  !/73+& !&+/3.;-@'A;1%  $&  &4H`w~sdTH</ %2:?DHKLI=0& ".7>? ==?BB@BEC@<2& %3?A@DJG<;CFDB>>FJGB:1,'  %/9@CINOOMKKMRZYPKIGD:/ 0 9D#S3_@dIjQnZn_o`j^ZQHB;<1:,6%2-**( vfSD=?B>64=JVbs $) # ) /6AIOX__[Y]]VSRNNRKBA@>>(>0>8CIK[Uf[kYoSlMhGhCe?Y4K+C)B(@!955.#   zwx}  -<$I-M1H4B7@9A4B*@!815;%9&1& $/63*"  #(0< GN+R6Y9`<_AW@N<G;:>&AEHNQNGA7){ kglmlmnt}  #)/:CC?BEKTRJHF;/% #(3ALQR U,X1T*J&@):%873 /-.0.#&4DVbefbY QE6,%  %;GI KQUV XZ]fmlkg^RF6& "  #+ )(-4 ;BE?<=849=<?IOMIHC:6<CGIPW[dqxur#u4yAwKqPmKjDZGDK0IJOOOQJ;+vj\MD;0-/2:BM^kt !'%%+4;?@?<94*$%&*4 AKPS"N/J;PCXCY=\6c7f7f/c)_,W/B1)551,!   &+/76A7F<N?UDROLUHV;`)nuuqg WKE;/*-.*  #*187,%! '2<GMNSZ_#`/[5V8Q=CF4K*KMQTSOH>1"wh_]_bgt '6AG JKKIA7125:;0# $.69=@@DIHGGB$;"2   &0;BFGGFHLNIC<2)% % . 9BEILMPRKDEB:61054,'!  "-8=CJIC@?<857>=88:63/,,2?Q]do %|3u=oFhO\VT_Oe@g'gb^_YLC<3*tb ULD@<9?Naw /;ELQ U S MKJI#JKH D$>#6%1(*# ! ."7(B,M$Yfnlgcb"b'b*`0Z1O2F8;:&532,*' !-79:&;5;F=Q=T2T$UW[\UN MPND:40( #$*+&#  #+4;>A DA=<9$1-'5 :BJ LE?@ED@>90.1/}(ojfabiw %05> G H D A<60"*&**)-!396/-+&"        %2AF?;=EKKKMMLF8*#  2:?FLNRTUZdlnoqqke[M?5-(# %17>D?9@JQX[[_da[XZ^_acefhihd]YZ^behkjgcXJ:+! ' 08<;6/*% xnf b YOKIHJIGN^r -7<BECABFJNPLLP%PG=6.)!,#3"5&8.B2K-R XVOKD8 54,#!%$ ! '&!!%"&.21*  $#6'E'J(H&M!W!\ [\ ^]^hortma[UE7/"    *4<@BEC8,"%# "*0,##,/,+,-(#(-48:<;>B>79>=7.+ . *" /AF@AD@<9/"  " ! (4D U ]af`SID?;895*&)& " /<A?@GQVSPTZahjkqpeVJ?97/! !%&.68:=>@EKRY[\aiiedda_a^"['^-d.e1c8_8X0N,C'7!+"%$%)+./+& thb]UV^]WY`iw !-895:?;:@CG ORT(Y3\6[6Y8W9U4S1Q1R,T$P Q[ `#^#__WPG ;60!    $.7;:62-"*'+.':KVW Y^^YTJ=9CHCADE?5+ $&*-*"  #/8@IRVTQQRPP Q MD?<*4-$,- +#"$*.,("    ! ')$$ )*(&" '*&+-+(&       )0233* !##%($%&   $/;BKXchjgccc_]^bebZRIA<3'!+8C HEA>>>??AC@<>=51237@HPZ`elqpqvzy vvyysk$^0I734 132+   #,05@JLMPQPQU XVTUWYXRH?4%#"        !,104;?ACBCLZ_ZX\ZPJHGKNH><?@8) !*2;CFILLHEED<444*"!!(*&#!     * ..1 7?HMNPPPOH;-    '+07=CLK@94)  "&" 0<<;>DKJEHSZYSJDCB?:9=<521-&    " $!  &/6@NYcmtz ~ u"k+]5J:8=%@ FKE=:887413792'    !%%,%-+$6 ?%G#JLM"O T#]#`^cijklh_ YR!D2!#$     $*-+)& ,346:;;BPVSQMGEC>951-)#(359;61.#&5FPV]acflquzzqcQ<(#*.7?@:56;:0,01-#  "'.31/38":%B#R^gopmg X D1     "- 9FJF>3 &  "(+&! "'-5?B??9* '05:=:8745=BEMTSMEDHJJIFEB90%!.9<:2)   ,>JS]fmppty~{bR9(0./46533554|3{/}*#  $/ :EEEPSQW^h{p]D-    $0=GNNC3!  '=HR]]XTH7%#0<DIOTSPPPRUTMGGF@:4-(% $/,( !5=FRRLMOQYfryxqeR<'%148>DD;2/0.'snl o y(-.'   "'(#$+.- -0:H Zku|vfM. $%!(4AS`_YQD4 '6EMSZ\UH6!,9BFDCGKIFEHKvJrEvAA?6.' '5CMKC7&  3DMS]dgipz x"e(L1/=H LIFFFD@6+'%{{ww  "+/ 18==:77 773-'()$ &-269 ;@ GQ] iryz oZD3%"$  %+045- %5GXhtxysaOE-9;+FOT [de`_```]UOOLA4-& !3ALSRH<4+ "+:LSRV\chmrvupiZH3"+ 3:>=:;<6/*%~uq rv~ '02-&##(0 0.12+%"  $)/8AN^ji`YQE6( "!!"! $(%!  %- 2 3 6 5,#    .9CNWZ\[TLD!;21B'MQ TY]`cdehighhd`XH:3,"$.5>DCA?<4+%!%.;HS^eiov y{|woh^N=!.!$ ))%"|smkjikpw,69;;876 1(! (*( %%&$&)(&&#(2;FP[cded^VNE;0 ! ##"     "-5=GPV Y YWT#R-Q6J8==/J"V\^_aa\YYYZ\ZSOKD9,$   $+/0/00-($  (/57:DLKJNN HC?;!6#1( ' )('$#!yqq|'.8CLPMHD=3, !   "/8BJLJLNNMKHD<2'  "$" )1331131*# #!#*,,,,)" (589=CGILM KD;'2.(4=BGQXXWWXYWTQNLJA4(   $)1;BGNTWVPHB<78!5".!'  yttwx|)6@DE IG@=$9'/$!%) (" "#%%).-(#% -450.//01233.%  %&'&%%  %178:<>D#L$Q%T)U/P0G0;4/;$BK PNLLIFDBCEDB@=:4*  )35420.,% '18<?DLP K D B=730020' }xx~  &(*)&"   #),+)&#" #''% %% ',/345:=81+#     #*-+*079$<)D,I/J6G==@0?&>DMSTPLJFA><=CHFCFD7* "'*'%() *3'@,H+L%RSQNG>"9$9&7#5663 , ~ &1?MUXXTK?5* !%% &%#,4993,(%"$(+020+"   $**+,,(!      $.9?@?:(5.36::A9B:E9H5C3<4044 7@FEA;74-''.4541+)'     '2>IOR QLB5%+)%.#6#8"2!& $.:?=83( #*39==< 8.&!#*0 23572( $,141-+%&. 2.$(*,33,#!.=EHHC ADE&G/I4H4J0K.C063(2/4<;73+(*'!&0444* !#$"  !$+'8#A!K RTUTJ<$/*)*$- /&  % )-+"&,"499 4 )   !          !0;??#;.28/@3B4>3<3973:/9)3#)(2 31/("" !   */18;70(!" $#'$,#4ALUYVO$I)?-3.+*$%! !!  $+34/,(  $(%!       #$"  !#%*.+$ &5: :;:!20+;)?(>(@*A,=-:-;*;$<?AA><7.((()/1,+/.' &&""'(+-*& $,#/$,('2#=@ <$:$6$,(!--'   !'-38=ACBC@6)  "$"    !$)//-(  $%##    '1:?D#I)I1A;5D/H-F'B#A%B"@<:<?A?93.+*(%#%+.)"  )04 8<< ;(;,=)B)H+J-M.K+C+=-7-),!)  "$)/0*!     !!    %($"$!   * 2 9;>?=; :"7$3&1%1&6'7%0$+$&  '+)'+/0-*+02+#  ! $'*4 >?@!E'H*J,L+N+Q.V-U'Q"NH=5.$  !"#! "                  %)#+)"&%( ./00 .*()*(   !#! "! !"#&&%,7>(A-E-I.M0M0K2K5H7C6E.F#C?9/ *'       !      !+264 .,./01/)! #). 31.".+-0,3+3&2 45 4579= A CB?;50+(&)-011243,!    $&)-3; @'C&G'J0J8H;E;B=><7908.2)&   !"$)*)&  %%     &&#   (-.+),...*!   !#'&""(!."0.+'$!   $&&%"$+-07=??:0(#   $,4&:+?0H7R:W8U7T7T9N:H:C6:1/-)**$'       #%# %%(&'&'&'$$$). ,(%$ ! &+. . - ,*'%! "(*'$" "&(*) $#   #(.340,*$   #%'(*.48&:+@0F8F<F9H7F6@29.3.--'+ %  )48755673*%()"     #'&"$$   &,-)   *59:::82 *!   "" &().3 3/+'!      !(,*#   #'*)'-35(92=<?@A@F?H=D:<44--&&#!    ##    * 33010-,, (&'$  %/9==?@>9/    *4$6+8.:.>+C%GHH IIF @8. (% #)++/330-)(&! #*2545 753-485>6D5I9J?J>J4C(: 40 *#  !ukui-session-manager/data/images/0000755000175000017500000000000013622453036015726 5ustar fengfengukui-session-manager/data/images/icon-logout.svg0000644000175000017500000000070113622453036020704 0ustar fengfeng画板 1ukui-session-manager/data/images/icon-reboot.png0000644000175000017500000000140513622453036020654 0ustar fengfengPNG  IHDR::J( pHYs  ~IDATh[ WA3;AA#dt27AGW!ݩgǀI(}|8pyAD8>呈~v gON ~@uOut~G-^=’%0Ԧ"jpOI(dѣU7]`/j+K 0"A5݁avuB!xMTEoxiK*c%%:P)ZԝUC}h˷tT{oQ>w7F=ڍ8~b}S/= 2Sz"o赙*l}m:]5|QAR!"8hW>k($~($P QH0En3;&=K*iHe'5R_E') EB IENDB`ukui-session-manager/data/images/icon-suspend.svg0000644000175000017500000000074013622453036021057 0ustar fengfeng画板 5ukui-session-manager/data/images/icon-logout.png0000644000175000017500000000142713622453036020677 0ustar fengfengPNG  IHDR::J( pHYs  ~IDAThZm0\=z{AA #hw(T@4 GKE¤ZMx$NA[MѻeWDT#/kLD=yp؞ |!ɟ ETk nd |0%U.@(]\CItAA !eV(c`xulh4§Kqis 5ug/ݳ^ܝf&>L% =k.Svr0WQ{`rd' >%\n vQw|#Y%Qv s^ 1*|AZ&M( ?$Yc$'O , HCb%KةFϾUc-@pUNTE>IrI֤(e"-m9Ld9Y" d_dI!֕Zqj=vZ@zT>"og/0`EJ?ȝ O3Dǐׇr`0t=\&Iֶs9t]I{RvSR۵w`L0RVSId/j:Ĩa Hb|IַR:,jWu\< іx<X% w맂YYw۱!0PZ }S"dOgėɮJP_+r$Rkv$*_Og"nfIENDB`ukui-session-manager/data/images/icon-suspend.png0000644000175000017500000000107313622453036021044 0ustar fengfengPNG  IHDR::J( pHYs  ~IDATh[m0V n! #$x2BGH7` WQoJ͟D]7'" k2C ` ~7 WQ-d{"(SO - Y"2Dx5u0zcBwww$U/DDח!&VJduȊ\RB{o$|Kzu6^fߍ% B?%ֵ%.Vr=e }io]q7C?7Չdshmzx?hI"9p&; d0'>k^DϘVB<5>EDUdKCJǖ{6Ёs$%_(/#1sxDB;V?{')ME͈+Ci O.V(9_2R,-:2wkuG۫_'Uʒӝ0J`[YrF% [\AITL~GeCmS+Bi`6ҾCbS_Xj/kH<̫q%֋>FdP|]=GIw礆Pv='5g/4>4 S7bjOiJ \J%x*\aNK j\ tDX]H_3IkwgkޢO#yIENDB`ukui-session-manager/data/images/icon-switchuser.svg0000644000175000017500000000122013622453036021570 0ustar fengfeng画板 4ukui-session-manager/data/images/icon-reboot.svg0000644000175000017500000000055313622453036020672 0ustar fengfeng画板 3ukui-session-manager/data/images/icon-shutdown.svg0000644000175000017500000000060513622453036021251 0ustar fengfeng画板 2ukui-session-manager/data/images/icon-switchuser.png0000644000175000017500000000134013622453036021560 0ustar fengfengPNG  IHDR::J( pHYs  ~IDAThZm zx2BG݀nA jO@EH/ `ٜdsyZBeC&@c]I%DtWO1< 9\SDdޣ uB^카Q%5+ r- gX+m+;-s کGi!X,?0<}q$_+siu~oBw?"9uIENDB`ukui-session-manager/data/images/background-ukui.png0000644000175000017500000173362013622453036021542 0ustar fengfengPNG  IHDR8C IDATxY8$*s;ub w0[C6bnh-d?y㜽qFc(b 9cxjt y]ep(QUވΔLx;%njd ۂB\8&l!SpJ־fr+~ ʵi([&vCŵ89ab58_:ap2up]3f]xց9p` 1)3b,o$:aG t^B|β!!~;?'d ,eRozbN&p[o9wVo[8~rK}!\kTodzQx"Gy.wY h#jo 9oFer(La[ɺr=A8 8~HY[,etA8eŒt6OYέ8fAS< ͻ ejoMYpfP6O)v!`nw7֟Q۸WڞGQ/8s͞s ĽF{.~Kdׂ[9xдJXs\%t'(_NRSb/~v}!? &jf !$u} [t|oxoxv(haM?>z/"r%`iU2;:ܦ<'#7N҄6]2H&P?۠I.#S$imυ_Iq٧+C qDVK[G E q $eLSmxrmm)":T{'` Ym&P@.Jچ}aɓN>Jnܗi8C]ҩ.Guo=7#D'd; R2>|N\Iu7eӉ׀}W_!w^ ?aT \҆ 6\T prޖ>۬i}Nq[ V淀]o%qGpڸ_֓{C/f{~ xu`%} X/ccP''nˀ t܃^h_>lqךztq9Pȼzc^Js{4ؾyetrxgL#^"wϓ=yBumckF_Mu! hHr(3V(2JCy:%y6dcn6$ 2ޅݑu}w k#ٲa&:!vg7x 7s.E@6ګĞU޴"ly`F:\]`[SoNcl 6*X7!'Ztݵ%aE;\•2&ΨV\@}%; {WK )/{1q5o>o'6hohwݻ+l_G۴ID4_ޅm.g! 3 Z&\jE\U0䤁oAz[ИPy G^{JZ&D 1mbf4{߬M!"d[C9;[Ň+|r2>xvL&:W'p5z>|ԉJ|A=(o L""'=Tf}0ѹ귷Gt!iKmRѝ Qd@o:p.'k@l3dg6sXчdW?6_܆D$BDIBP;E'BZMBNRϧstʜ5{3r.>0֭Ifd Xjʳ<m{aeݥCbgxsl/YbODI/keu)%ĻU93:掯9I=+ٔ)6^~!~˯yX`@ %}f~u|s#진O^}MLnF:[$GydR!.ۑ/8l&i &p_m!@r92L tRL]ʧs2t5ǐT[%'uJoEG֮rEG0GK.'Q&WW_hO'Kz'"jD;=:2orER )9QS tk#/mrɥg>Q.1B0ex҈Y d='Ç4&e& Z"RBA$Vژr갠ޗ-dQ6 vH71nc͘'>pԃђjA.Lm6c:\|p o 6]>-MB $_i( +虚5;57 \#7m$J8-`,``~9Y~ >"w&q7=2mL>ZcK:wvLjv]]ckN[g ^W}C\dCш])G-M.36Y3' t[Ճ( qÜGiQ8K2+;m<0S?k woO8@ni)oD\~E"LlQm }<7qkB.rj7=wwNW7$tD#`Ga FO:۟^Hwޮ+F3æzI&ٶgC ֝W%i͜2YOfGo ,z:M2>Aa=:L_An!qUϙռ8 ]y/DhjsyHR$c-Kl_V_ӷC꒛k͗I7IjTuqrpN Lw%*/'|5u;"]dweXF_C`Gʱh|N- Nf3EuPxhi\6eeza5IEV׻Γ[aIC(>͈\♫&P$H5'~A<$/L"EQGQC'}e$NJRXc-{X L~Ո~Ck&L8HX ԫU`<tw&vA1/9˽PR"xyCbJ:30#+^*$XA;=ESEM1LJG2 +22o q `L__|ݯ;nb/2 ~A J &/L2[*~vgP BnlKJI$0$BHA]$ˏLN!9~P{:a&r9JykNWdeMvR_"[ξp{}L]^/'# |'H:/$I`7xH3諿L|Gh!}2 b-z- ϒY'nįL0DEAB;(dQπ :fHUoLOUYBI?x*qSWcӭ<$)|6AjH$yjà 7&1"~Ewm+2tTanӕd_n%\gn\O_I?/Gy.wv{U=$2!}*: &E^$Nla$4mWoiБծ-yE|'EL%:^Vp39 IDATB㺼z!$~ O؁(r˥Oqjҗ.Et Cv!}΃Np^Z%KrvΎ&J(?ϚBgnfsF`4"8nQ'ΒMg (!+e=;~??Af$$w];|^Ў,T[|ގ>Q!{dk55 ||'ՔvΟ(`g>{鈔?z5j7~bMd~{Ɣ,“e~ e`6]jc.Q]Obq[>U>l'ׅǽ>R'cCsu_mXE>X܃#l#g@<2>ÚFVB*ңQ%Rϡܩ›6>i' :wpsυvB?mYAD v܁e_8OTiC;!AQ=WoMZNg 2".?Ş))9%AZ={-_QfLHHQ|us^kdzفRC 򐿏Hr)ylOz;xK[:'CqW1.;deyQ_%klؠ CS(΄,ی;&FN"5IP#oN b$}\>i Љxt#2!} <RDϳ;FC~Z$ dk aIpeUW>?}$Ć.>$$07~ǖH>S&uvJ,:9PRX_;NoDihCrg! 9+7'm~qsGD΋ᑠ3 튞H\ZџCn;3[' $a#Uzwgk<~p̵܊t {zOuzf@S,>!~K9M:t˺|]Q#oMVzq5dR^/}iqzQCIr"bv†l)չttDLl WWޥ$p+'@aIVH kimFlsܨE Fer!4{;2Gf۸󐿏,5lOmuR0erB}?>S٘\&7瑬pׂ-苞QN'~ cȌ~YQc& fu)N#%9zIbBEx;1ț6fRGMfQh<0Q< Uڢ3-Sĥ&'CP2yuin 7s]H/:5m^]lYK3к !YȢʵo!w2=@I`$^K%2. %ȽaLI-Y<ݝ*۸f l& @5ƣ/N7ݖKr5r_OS(}&l1(ANj$ qx;c2|qBq67V2GV#CѶ . -y$f L.#g. #~kPpE聝F g+Z "2اo̲6Nα:Y'+GT2\F #~I4y=q N( ;D& 6/&H1IcRɰ!9%{?c'D$K cw.aCGKӍ&iX~=`~$ _ {q-=0Ĺu-3>#|S4ƟFD)(&DxH*dttcĉ៞V yq%X웥ˢS",'U1n˨$i2z2>HkF}=yۄKAېAw4D||ϓZ'a\W˿}xqt}25Y+(Ww;|PA ?[gcgUlH`ߩ#0.y:e:XM&GMx}(C>}8:@^ g';f6|#զo/ak"v+_YN1Jҙ`呾xbk {a@]&UrRs('\GU[͛H^W ԘA9 ;R}XG3SNIӡ$I`SR8!?"M?$F RP Ô-ג3 X"lwhɆ}$[n`ڴD.Sr^}˷ ҥD{kfQx  z" ܓl6WO~7B@EEm5*,Uu10ǻ_gZY6<_$.EVň 4ev@omIuys@9 PF~@sF|t*Lp3fsǡE=h$I#cճ AϦOYC%IQ#bHN7^"Ncbݮ65Z-rn[J?Rҍ0 ̿Bjv\ )_>?]|GTe1v\xH]>"C))bb][f@z^g}Tmf 2؊JIP(Ud;ޖn\S[p6<g)0每]Qd4H`m{߯%7!_afMzdܥda.EVذR:m+NLN} R ~ 1=%Tb!2Y':{1%M2՛Ad|ǩv!EIqRR{ Tǿ9{4l溗(L VqײA@- j7[.H 5 \S`4b`ܼj6À/4gMJc#M-шm.J te~kdo#Yti;hn?D]Q:aՏ $\IbVuZRU'gHPzorfL3 eLl)$QE0cZF<88v% ¹hDGXg=[NXyѱ?ם 8"6 I(31k}\O"+ԏ(nO+ϧ0Lv2c|BaZp5HlW03b98-u0(e|u[uN'UtƗK WVfK3 HP6PLZ϶d JyE{\/E~E,F|# 1m vlSb.;lo=*}3_a__%y%*sg3NQLKE6mlA!LeSI}.#K̃IOSBv>mJUfMN̲gqr8\?I$!k-:$诌eGDou2:$$m~$A<6uE=cm#TO5aR\^o?9<* oc/4bTYX>C"z?JL"RL:6dv:jBf(^c0I6X!0)0@Gj|V!橛kKUC!6;cy㧮a[6"?4uf~ǂk>h=mT >KMl&w_5ߦJ|,8sM>rz<xџIO9 > ?DrӤGug3?>pWw$')`CK0Y/2R71dM9r%}>b]Pr#I|dI1'EmP;33FCFm1p6Dxd\%vxwG-̞j }ޙg@6pfڦ|dmPEVq%fu'vGege+HýQ ‰i\ Ldz۞ ZyyluX=b9EluyνQ̲gR9|͖!=&{s*+t_?N*I Rd/ 9#!I^ 0<;u5zZerի夶KpQgIwjL榀tł~0J SȋNrȭUo1p ;{a;LdVߒR~dyixY2? [9i2_Y)S8>N3]-ץOW"#k' \R4UnAuF6/lv^~]5î,2ƒ;a>}GLͿm;E$#69J9ÚS"0L[1ދ~Θ%94g֘JR@^bؿvrX CL!\E(3K=3cv1 rOW! ʛ(2[JY/yfWo̚K_ս`/٭9YlMI%9o`X(EIFGCIBP2Loa7&)EܢSmл`c蚻丩QE%';RYLjO ic:NЎW]]OsD>C fz^_7}PWUZTb6t:|3;z5&;1Ou|A:8ww}Yn[acy#{z 6 |ಔDNpW˔S6'3\y0߀U-O&B'X?h]c%KM%˽@g89> ത}9!31\>[!9CXK)$]e2ܜu /`qpOGjnL/ۨ/84sKrF0О4% !z!2/UvZS. 96*[O)H\LkL9X3IWsBse IDATY c:Cz j(܉G6J>/MvjD+SOHo6giԾ]SOe `:y4kɫŴ͉dI;`uiVDʗ6𜕵pGA-@R;.ͧFaI\Qjt˿`Λ}1(q$8)f#%˞- ijmpvBf̲֪+^;r"GA Ѹ׌#6Gg`},#`!ROogXZL~?q-L3izl534x$q KDPB@\`?;,=&D6 AU%pGv0> R,}2A[z9[[\OxCTꙉ] F׫q;E_; ƣ>`D'Z"X}*;ugMK_erMshb0n-s}Ÿb <|TlZK rXu@ת#4^}S&8l'( <]Kܯ"0ӟrQN~ƉQԄP|rqe R>\3 x] ֨>1G@dz͵HDP_"/&ф^r26U 5~$QE̾$E_ݗA;JsT\4 H/iz2)INRiøFϰ၂䱭!6;DK8_TW$f&Yc ՙM$xe 7Jz:qD6rߘM},K'no@6Xx] ܒW"%9Yy6vGA:T]sM_vjZJ{`^tδ}_w7v{[c| ڃHU+{6&#{ug'$+"u\0-Xm=ݮ"UlRN'/,{%'Me Ibv")C:fڄ)DG406"=Ih ~%1f,cCndHAqgi_$ Q-3z(nb2^a#D07~.`+'.Wυ۵UJi!z\HY&@ ǏYg +.7^h(n(> o?˲J:"IyBK0߱֩դoue<:?Jvx~"6E`B#l3&˵/nFaUnx¹hI`–irN&ڢ"qK/6p6xƉ.ϵ^mh@)s?zIK*rh޳.A qO *Z=Xph[$tZ !(I.>TE6cyz9?uCTO/my(RK0L!mV_/{kG+-?hgj s.|8ֲqҬױc]_ o6\h]9~ W%ż7$l = /1},ic %B+d+QAHi$/O Gߗ=/WsL&MZ lߕ5tGYtVt\$@KaRf ⑚؂)65M95'1`ŧK:K} Xe"LZ.VX郕tCΙOu!xĿ$ &Ù!vEԡ'<)Lxb> lXX's%yu>d0 JWy֜,{vwm s΃žK(.栏Lt؂4' VFOH&L&}ωKB8N)05怫OgJI\2nL/]BuV dV_ϪՈ=̧g׵fڐ``CNBn3 B$xBzp9ǃ ES%lŭu\sRu*TʎFf H)P9 Xc_0!_|m ء}m|g ^\~,iWG%ر>s$yv* -2{c /22A*WuM 33; '&%gRH[Vy'dYBo𬳔 Д77F}XN2Jur. Tσ(-錤m-bOb8JfWh?[gk"OgKNHسoo$7%5%/V䷂y}<30O@GuxFOw~ օ}j9b\}+6'Ol-C~MV);4e: |SlyC7hz}rӥ?RV-/m9JKOv 񍃺~21   zØxd}\m]tx(5ވ]f`u*pp%q4`Mt21Е&SA2s~ZLVEJ"9LNE6gpb-OGu2HUe=eu:])Dv[iy|gsݫพG^;FPcΰaٶ-_e,@w| #`U'wPzBZ `blo1FwvCŞ7!h$ḭ!4G9|kC֤%"7OЦ !{!_*0)0U;o7Fm(ԸDr _?Y·?*bewuʾT(4N:[S$9s959Yh8t;#6#2]M]VuЗ#~K ل _]FZOx+}ժ< \1h=̆|o 0~uʱ,Fo6jPs`tX oMY6aem~B1Q;%$, c+5 GID2s>6H5,瀌cScJA˿?hRDLZ5%TRZIKLc5 ou1=h|!JþHŀHߗIE`XPu'CG[ۘhlyվP~bB/-k;R+Ǘ-V]S32V _&;FIvt|.-US4e g~`y&Wd۸ |0vBAc}#ӈӟ-zWJ;76݅>^ͤ!ywؙ+Ov5Rr,$rq|gۘj@hDE ~2ZlM+Jo7YaEy$@B[!lV,9:Zh4)zUIG31OjF)c {{ց)8kl$*{{&}"0b!I$El+,m{B>z4~|]}~O/"muuL!2q1@06챔s +qCweP8nd\K`U+9>G?M(b3!M'ʹ<Ξ>|bue>jJWM"K=Vّ)>8;,xeͷKUn2dۨ*?` $S%D.kq[dlmnJn+U{ m9a69a{_k3;$8q#C3.7gL`i$JGs,̆\$HGIgM7<:\%X 3y#[S;Y6F iX8-} WP0 S(k7`q9}:.*g,RPhnj.azʔ4}F?_xIOR>{dbΰav7:;{d|8`0'-z65Jel پ~IO~!v[G@7zC[,&ߘ-췺̪4?o ܟ%L/zV H$kvq!lx-*n>a 4?=d'&{ٯm@IuɆtV 49mkM$v΁}sξ,Jܓ O#rI[^O>iz )qZTbmKm0,>>]cɢ6:R9;MSȍ\nXx'y\p`=;8g_I?,ݹ  ̴$$l/]I૕g/b܅Lhv2'g? l_L,? i>31GƨRBNWk6"Y,DLAYZyR|N%Wya $4 ̇v#\w}=Q+$YL*fiS',I⍩7^W+vU鏎icfpU| t$f߮51z_U\SKz^!Mf* c$[AeT[ me˥ >n9'1[h#z2?r}Ɂبs=Oϕ3IW >[G<)G8,9SrD0_rjП7@XuĻ+W-D ֓OA{Yf35m 3mlWV6 35! D)^Fdx :[!C?IPڎh4-m󚥒^[ s=o7l `isTdס}꤫\(@Ǐ`542ST4&nA'9h畹7%ys:P~܇l4-T>C$>~UGzܨl~6㗋^ Y^tӀ2o5Q~c|J=X1$o߮Ȇb#KvnVp0zVy$aȐV$V|/>:!Pq;Q;ZS \n;o'6;tif?*Bp#Pm䶉oB"h1n~a}R==>{ES`4$egw<BbyMUz~c8 7 Q0S'Չa"J LD?p_6 CVlNy 5̦0غQ)&ONܜ 9S h20v~MUCZJ$}+Bp QN}GGKC{q|x;h4&W[aj@rޝ-ҬMmWgT(`v 0኉@[=vL+ EbsdɑMvKI;0 J&lJ^(zcp[8F%gqw2ԏǍO~>Obb A01̍'k["yNBmË'?q'QXnޝű/!U,ysĔx&{jv[|!b?,"{rj )Y ^Ծ}Dq.?1v2gmy/uQUl hUDOw,/,N2u*v·2؄:!Xj `a8GKվyd-GZK=R V}!X@[reixLTq" l&fP,;1{K<+1 &6n?$?!e;s )HFvmǠh"=N5~'>pIcp.sLx,쏤0"ĴXj6,WcElnБiBYS[K)1~2 % dk))X.Gy[HT=;`T~]W 3%L$B WAm =-:q(: ;XO%zEׅ.X=`ׯe}rsں^uQq{$IFEm>F|Yϵ,̠alsG h;#u%#8U{9ӁU:qěSy oj=!1h?j"Pxbn%$b [2[Tg^sRvnjd*ωA㿗Qݞ o[Qɩ>H>sZ훯M~,MNPwz^,] pIcZeZzfaoZ2[}h2 3kI)I |L؎$3TmC$p=w&;~B>8Օڛ>E'/KܒꤒEFnD/^0v0i61} B+J IDAT Cy1(8Q>'T)}mnG.|19dlV r"G s; ~ z^9&`+Iq }^αUrS .(s 66V; !+QEDit׊e]I#lE~?UN ]+^GyЉvw V+٫|x86)]4-0x2eU.)Oq[ʐ\ԆQ@y]d ?dXie K<5sB)a\]iS$J%vv4O|9{*\j+*"bRdK=&m7[cP_+GB# N &J'X8)Ռ^w9RU!! &R!T\XpSIJSq6j c.R?p,UO "Y Q[b+HQ߽K*(/ـٗ_Etfu}D;Z]Oz]Y5F[eI+9i CÝ bvؤ*x`]rGvHz5w".5Ayq y ANrNr d'H[2#o%}fET ď8v r7|"kApB'O+a)dYv^>˟&]x*xUc`%Nq<)7&(L7>Oz >͉nKZ#5AZNp[ogC]>;g();C'=.A00 c.)Qi Xi9Ev"l e8R1JtZmʄ]Cx]>>mO |{>gBbKXxdZyW7ėVwdJC ֲڌ%TP^mrp0kI)i?Dlu6؜j=Em%Ob?!@pml+iE7~):zz*(Q;&nƆ{s G :vk0Sok\WRJc1sEuXtBi\̘]b,j7YA1y6v j4-`lUov| 9_Bۥ 0C^k2&\poEOpy^Mx dj$\HsӤ Pĭ<$kP\+rY4WY:"Lؤ?9*bM(80>0ytv7N?h32qv'8y[:x"i̲ChTE𱧊!18hGb(ʅtw:qʏqk4O1Su|Ŵ)>4-JsZwO.'R:n;ZҹY}]/?-aP0Dx3I'Uxa_(c6d>esm],J]#6Wgxݷc]8v:z -%)eOr@r=2546IۦXzyQD O!Qj 睤({OGvsG֟8}K%HZL;:n_S jHPOJLofKu{t:OK4&dKw^,hU o .8I3̖|S82{%CDZuqĔvf8^ecVnd41-` g|v I+hrla2#!Z@dEks9AŞl; wQdd=]@Mq_?@\J ЧLBb/DA^MVr8l:i06 sIc+ ?B=$z{ [rLRLE305m6 `mq үp$ >N'eI-D:rlk'Wk SUoS b]ͦDlcarG4Y84YbchzzEo 3Ƕ/yfӿ/[QA$~S*;B\h, ChЅD'[j'xYlh葜 TSl)y>dlɶ'J \ @P uQy Zʒx?cx]}lzcXqY8FGwzŽ].col,Iv$w')9FG/N Q!b@Jڅ]S{A:^ zHz1e|`3giRnZFJ~t(C5crk"Md_hz gH!'`./BO/3~rˆ>mW c| d*JĝYg-3^\ih㊾OfIEh] bY~U23u )ԹCD_4(tjV` %}8ߦ? qpLdTe*Rd+XCiW ?bwfmD?ڱ%꼙®,;!2v3Rv>i2LcLw]yc[DY$OX?[2~</ŁCv9?-: c?e[u`skMJ_ֳS2{T vAk; =oNQE::6V57 aI=C;4yH9x{)3s%̩}k@o乁Ƕ yvb~ZGQxm}5=[Zu{'qϮU!#m|Md?]N'Sg6.=g$3K+gNUn%p^=ӹUIZ3H?hচi[!J"C"ޔ-\nkmCk V{cƫI?g4 lR23+&Bk5"&Ublj19msdaV!E"co?q`溨P7a)A{l GwX=ƚuQ_+0c$]{l%W6)jCS'Ɔ eƹ4?g[ kt)obn@D.;_=D5k3x`!:k5Y7:jmD|`S 90myw;5{8`󯠊K̘@= SjcT7rGgٖׯ#zehwp‰_"eTU5V>Lh=^u< e˳TBδCD aW<$DfWSb|R,1 rM—Xv[M͛"D6qy2mp'{'o&>?w U=XSҶyL[["_S:^O!^#8ONW"P@RYǰՃ0uQ}S9C)S*1І> p^_ \vz]{C|FMsTGzW$o0kl rV:(01 >rK_ռU|0|_V2@tԱ~1&L҈B#u){7" ̓x'[CPx}JYm|rm.E8=),“|ֳW5^{Ϸ1me7U 1xz}N<,EnWk+smWT)?~,yԛ%1 Iٖe(*l Ornţ-c]z$<ĀXO!ʚۀ_8==qrXq[7qKb+noUllqj;k@;qag`X zҿ>cLx'SV 󢪑^l`ߴՑZ7ڏE8` 6ъhsϾGtg˦'gٖW]ew.Ku+aB0gjΣ# 4ޮ-Z!DlER.,avK[NR0`F;N*؋VE>܍ &sOn)$b]kƫ|ץ4=ay}J~}bPP+K1}2)X<{U:lxhW?Rg*|֝l`>L;o$Gڙ6"yCI?q0I l;Y]^%vڬ_-YvU;֢'>IAP;me6'D%}23DT]XaL6ĥdt [SSO# F %Tc[Ɲ?҉a|IkmX0ic_T9/KOYRqF큯7 DdH &zA3[gdc40:(.S՘NIi|J8YM[loQp^69 H*^>-%gKu^XjgRp|sK~Շ9zttׂ'#78jd330+W_)/ AͶk v>KDd'Ԅp6Ōuf}[$pŝpÑ 6]"k\m υ5~L6Vd[93k]fV\6xԒ¯ChCԏSJu> hUh(W + WV8YSneMܸAJ;Oc5q9VnCNWoxL]g]z>Ḱd]C2b\kKIvV%8͹V X%{UcŤ| ڷ9㌥`ĸvző҂ dWr}M8L!$eXJEHߡ_uqmokB"sT/6?}ϒl_=>mЯҏ֬TOU/r" aϴ?<ļ2zq>R&y`$p\\q[9.l" o=GT/ӢPT; M'!1;ֶ|#t *@)&˽z#>)?ՓOr}ω7y_e!݅°Bx[_V cQ-dqa8CnYp!Y7u,;66$i=kBXKTht"g5JڟLqNH KyK_!ʳNÜmTYl8  >Ĭǃϱ[S)3XJu;ic iBe`/ƽ"?oצ}0cj?8g48=6Ox^:=]ztY6R2._K82gU&l;Ƭ\TCA@9T UW,d$ mCOg?ÃSژ jK5~!TlSH 1wUG5!7 `o+V"2T7ޙ O V೶UnwM8Xs*8/Cg=Ck]2bz̥6[6gzs~RG']=(e*s&Uv^DulgYx9U,JTP(Zv<"\cNcR?\Khj?hCpfUzO%@awݞ Ws/c#o˧'|64]'~;iy#-GłsgF %X0kB(3]e91?|XFɍIKpc3?Ȕlטllq*-n#iT|⯙eZ:`Muby0N`__+Q2:*'Q2f4oև*-uꚥ輷>_r]Y8OqjٜHgZ'VUHgo [Fn3 ܮƺ0TSYOFXեHM' Q\݁l~& uE IDAT#VNu͟}=X{qh/,+GAؕ"fW[p :l4J7Au_|jČWUP<ÎEej}n3XG7{Ć+n-J]ݢ)X=Z*q^ymM/}/T!3[^\[ acTǑ&Oil; )]Q̨﹞sC z-7U9dj@KȘf<?=<+9G>-nt.g2F?aCU;CynXks5P˩I4CT.’@sC}}o#[RD 4ڷ%mk\|ɰ8-ڈ]/S SmN6 ӀS'ن#`,_hlW|R<+5< +E$"oCW&m[F\F UT!HT@ZEv;Py)ՉFpOk'αFX9AXv?Ĭ9v j1l y]d>`/:~[;`[*caI%$&ipe>Ňm1Ա\/XYNU8.gnSؿ un6]2bIŸHQ/kÍOGACbsNqxIYy t ,xŽn7=0K|Nu(<.(`/q 1/5O]C?2,7ݨ+}{0z[NsH u<sEl m@m*"# ю3>{:ئD\PPipq|†G\HF( 6"o鉬u۶D\ ^țXht*R88 @j].l#HПi)s1KlPj-D'B͜৔W[XaKrO,DSh]x?:R;lKT0}/,:?8ߦ9J7*5jzm>cTf\,Q5wձZ'mIt%t>ŨmV /g9skqU9& sѭ=}EdxY{g[zR7KWwI~rZľb`SGGF00aƘ !I:jg;Q%}Va &k@mM*u"$ޡn xNն= X^ᴭZzkzZhۈ9(Qhs~ˇ''.#ccc+/~6.>g|'\>Lm\A,faG-?^*'y`xFax[>ÇrL>@/CQ3dAqmV3l#Ӣ}nmKb_J*/ ƀ׼fƱ~3kp/c)|IzXvϘ&uk;ݷ"tNjM>o&>pm|F9TM&+оD%WV,[;ƫ4 G`A:OA/9zT  y+NO2QT!1;Ψ '}E T)IwbLqB,F)fLWMcL @0@u4Bc=cF }Ч\Hq`nxl!tSHomTfݼlYNfÜoϲou .|P0-u},~D* ?j,>9=ϑ$8 ٳgg+$žp^!@XY=N:>s3 }eW1)?5+o;nvhPz^:|_GIk jYCa^甪eLP]C6 lnfjӹ=VChWDubV ߭D$⫨{Ym|-XIU;G$+f~Y\G-(qn3p8q+ehm~/p&UJҝX?SBѲy.n6 Tk_@0<(+d{pULJSkCiKz>1Sw\ƭuk qAT`mCփ :(fm0.׶?;NbIh (F^()HԸfϯ>Adٶ)g;`]l-Z]6 V]i!A=>AzdC!@8j9;uu @H?"9@> Pqo;pR_5Tck$7Z{}lxuSQGN7f~ Ed5e] n:Xbqu{A3vp8Fulx;u}yeBɫ t]ʋ1`X{m8*&-K3f;w~\,ojR$݉9G+űgǖ  Ȍ4^Hñ~ )Tl Gimu[ǐ J9'Z7?V0ɰ['P:05X$r&,}g/.E^__uA;<WrŽ2&]fu X5gMև೻%UӗbCoR839OPȶb[_O0VGF[qŌel:[M=@sĺ𹭏@16Z#>'4~kQ\ŕpc;]AʔRՏ&6Nc=!@2pks_"Y{YǛ3r^Lwa`" 듋zVϰoqB[x\m1G8yg}nk<ym#b;my} 'j酏Zf=l=('[q}RF2v€l&3 mY|@B7NmUc6 r1`_O uwC|Xgdnx7K}` 2qRݞAˤe|wr7 [U^c`[f65F":CPn!N$)_^94aeMd gv[xܜ;k -gexg--⽮? -fWNF>iKœ[|;BV~?AW3ʤ.0\Uf4@1m* 6-woMi~rl#np= ۢȋiYsM']3S]p`mLwXdd.L*Cz븀6=N|KCU ܝ~G-1]?tԏ7qmGOȮߕ%cc#pLuK UiH~KH.H;AD?8rN>LǹxͽCdGs55rD N_|<{.Q~t'E5 ‹@#h_QG%e<4R L'rq(fݐ~HpLQpĕ<;RIFCgv@r\l֋ڷa#\z;DbfUSEN{coy{و6›7>k緀Pjr&Sɤ4صV;ȹW8R)KmBߣ^&$)1"Jq;P݈yH81y4i(0Mm.pE,L/ܣ^FѽVZ2Yg%]꾨$cxH_e=` [+}v1}HEIaP,Cߪ*ea|P(w:}Br>W ,/ Ufj0,~>E3Lve_?FnXa3_5n'շ$0WHN+Gロ`Tf w41ī #8h[,^+J?E9)av:DO0V>:[hs%l\z>CU]Mh7 رYC{y]gϽ3܌ʖXqwD9qjD94`o?59hخ c{-+U\brloDݑ.WuUn"g33o:[=B-]ot/B8V\./po[T _v`›Гx/b )t4.`8*@{~+і+O>*]ohG C*RC m^voGg7u ̞{c @vRmyjzI~Ϧ%mS2C~aڠtVlm´^Z燭47U?C:pg:D:]"g@'Kz`jJtJѦ16kx[?`2&"!> 6C=wS|e$Y?%OnW%H-P𙋇S#+h`qW^5Mڦ(6p+ĢCG,+z<ec<ˆ,7².ßuC1cQehJEH=ѷ;cޚioNOksyS(ϋ'ԕ?r+E@]C5t f6 #f9B/j[bAC0KpSOlKm56 PP ~wΗ\W!;| 7^3]'x\[W`!X0bT{Q_m[?]Vy$`6{ ?DW,G,ǂ +I(D*HO[4-vDqLɏFaRSIf6RWaYfcIMKh<%o0lq-2Ee&I?3Ykyѧ*'iƥ2xm}YIX(jIJ^ħwvoy005RwJښa{׻[~w+ix%ewkm{j&i+-p=4A WeRz'%? utt#kMDžmJqC\YlT!/b AA~Lp W|U&*e *Fm^&1ņ~<06^L?Ȫ+9-AKjX^\d"q_cI>ư{6Wݎb[ʜs&a(MOʈx(]t65#5ƅc B[wyd&Ko&30B`*1q;#GN,{7˳ <2">,idO%&Ć_ib:`^0m5?s N ]N:RpظN?VbhJ0I;c=i.vÎVTHzLq{ף٢"!ETԣN;T 톝n2s[~KRO+f߼**wf!&s7 (ڜ mD99Vv4\?쌼&tU=ˑ1#Td}M|mD=a(ms,XO6ld @QKVyfw!3YY}"֏T;![|Q~!h GTo\Ծ۳~c_OV^ QkUuMy,wuWŕ9R4!3|'N pEG&[h+phN-q#!ax+›.Xdp62m\eMb(FODP$#ܣ WaG* fѯs2=^\îSߪMKZ|T- 7gm3}ٷb<%vsL߿Af7DeXnؒMw-#~B*H}McY̪a>q0 fI|[Rz(wͪ y;!Vd"1WLt#1#L{FYl6ܦ~>q(l#;)ūl`o OL-b DιnxQ5By;aH~G:}b wu,n[g7t:o2r;x{ /!jTd},Ȕ f"47M󿘰0Nci{]^%GL/գr})b?hҳզb3B+$Z2>( }g'}~ufDM']K-=1~]dq3nűBf۽#^ &lHd5:f C(W5 IDATXێ_ĸ:5A00I {( ?]Bo-߽섖SxR۟AB&Y%u, WRt$tL>Cs\Lx=K(؈Iލy\RquWw])JcɎY-j“r歨ME5ޢ\خڟl*[AQӶ-y\5euyhƒ[/D“'O37n"މ0O&_w*lqLxuǏyF|Վ͛J܈S/D㯶 L,P5\ULW"c_$ Q>g>;Yl (0=#y.l"e􀆍 w :C%уFeC Q7aL P'eN3.Ch%^:n:]ٚ:.)I\lcX6ְ/ڲZLC`wfYS??7Q|!A"vN[ռn & DdAf;|.>Ҡ (3sK*縌Y'}WQ+OCO*M*9[wuuy\mӵkrXNKrHTܹ}l5Tk# U\t GڎmooLxQl?8Uג}_ᴏS 6=;{2Bx1<;eՋb`)dM)0hu ,l_q9~54IV:@)smm8Iߘ>-*RdaW,CN X'Ja[@NJ샅h} CM+HӖE-G4sgW^?|7$~Z YRzձEac}0>~Wa#9^GٷXu|xc(HJ!Wo-r7a{wwsY(5a@ %"[%hdTDf U߯)@7_t.%a1}2*!D<؞R\ۃ:n;5i緛<{k15 NPqd?·om䇅mdt58ɴtiSF'Xv~0rڼ=+խύ\3/b*K?Z hgt2# '2srE6L1DqX5F特e-wo8+bzI!F{\?DP0p*.YƘK\c<;9H@/Tb#l6ᶂCY8lN["h%Nh0=Ơkp @⇛hxj|kmbߖfzc<m,~v`~: ڮ*6EJ?R`sϕyv6pK#"Ts3pIFkthe%,I ߏ4,tĘl1?9zE[e +NTKdZRzu;}.>) Smty30!46@KY}Q׮-?"}eY_AMrlx.۲8 YyߠQIy:Ȥm\0:X/OV|8̉n$8T{CWwd;-sMgi:LfK"b` e))8 p*|Acbx\S9H`<@ `W$ΐOaleg˲p_D>+c 2h-=G&&^jpL(Zim]VgoLo+e9ЎdF2vIYR ᯴#9q9O5w٫_Q3 FVUk{(qwgu{fJ΂ (fu&y6=HXU H.S SZ/b_#շ^5.H C5m=qs~B^)>_ IgL)Í"uiǚĘ̝/'KoJЛ}% ؓ57zbۣ2TcC7)/a/^i|y՞ 떌NX'^ֆQ?]PJR 3khU!T7Q >oBHW5w`y@N0$r/V&`b!ㅍ=`~{77ͱ:<^C "?U~]]fq$YLȖ008YcZ%D㾧T,˦/EcaLk 3帎rJ=t /Kd_:< .Б=MUԿ?Jy9bPF!m6Չym>-2_6 K7uIA~gb? TKauH/cʼh!d9>&{^߂Ni$;"o:R;\M LS\P (Vs$fKZ+6ݬ26c9ed'7%Aʜʰr.V n9vL.fp+q վla=EC]{6ܿbm~mvG=A|e<VmA9^ᰘHVU[mxc˝Jo-߹<7/<npf?W3M$Rax[~ @:PvgBFbH``GIJ9u>Քt2`v~,P)'2'qn|ʧjwm7Wn[K>]}Ɖ,zU:̈́PD#u)MĒ˶ըW:m,'Bd7\pH `OF+m3Ju~.;m.XKLn?Ӥ[|OR>I8PRt6f:,w`^/jOҎCyQF>3}bAѻj'tS֙OE:unIqˆϰmJ8H'bC _w=?uOeG >c]-^j,pm嚴!y\= dO E@HV#adM2 +؃lsoeF[+q-wfq;멾++bۤRi<&F ǨW=9zC\qmǝțŘ> 9A?l eMwaۨJѹbdtiN΋BݎMm]:ROE&r u T(t b#?E^/J< )kIvy߈+8a_Oaꄷgnы{|WBItPÎ-] P(ohrLħ_o~Ѕ_&a`cco^c]sq.ǴAghp8r9eI98ۡXeD_Cn4B2?z㵶33^tKIr&,a0 zYC52Zx| m؃lY"S58^R %-&7?uԪBmG#+]{D9va9#դ1Fx}>T%XNSc<4)\;8Z 8͏~H h66Dӷ]0n$E3'YkED3 q{9 Ř3Lcjm8P򶵭ؤ*y%ԉrSf[NhWՏh}=wV]\/w:^HOC8*H1c|PK>tV͠_zZ^ VEi&=F綉#vtx^vR0 ߭J: iMe,p}$tDw ^B6-(>BLg2Gv(4)EKSG [Kc{!_Ccr&z0.M*@OqW,/å>.(yXgnP.}fLAI(ފr.Ϛ$"㯆nR*g| x-}Cvfr]mkS,1ں Y#fq)U)fds^7ƞT^?@Ȥt -F2'hMĒo/rTyʘ$L?a} ݓ 3{vڳ$J,n-A[ | Uggiߺs@BIMʍ5Dʬ\Mږ`?Ix1;ұ[RM;6hs߅!]L)?W ;0c;$ Խ {dc?pc+%IY1['P7e+ Xxpk|,N!wB1ovr-bأz*WPObxV=FWR5Hn;C;-#n|KtWzxρ1 rQU+?s++x]aLc^OU$oO $}d׳t G:ۊod8fi8(tD)+ص]^vl/;)!r`}0l;^NT`-J ߚm˛6, yBo+`!Βן9:e/ 04n#Nh&fLi-]+w[Lb(+2vtF{Y*%~.|;Fy}@PyXw0!h++ mgvdbC?q~@m T\Cq}(.uK$a 'u#ےy_ztg=xjQ ?'ckZk8y[j|h;skp'iV"1T{9 @0:܌Άs^A[- 1݆`@%"jt.𫒞$LgY95 ]u#@.S -Hn~vk.'eV5=vjFk[mקw,G2>(<9?-7T.MNtAh,0AeK "N*7'U2WpC#ϙo YM^ޅQݜFj2= N[N<ݢ./h7MH~੮^7;aL4*ȅ=H +PSl[6@Y;͒\Ջ.}Pc/fT{6lδվo oc}Oy9{ ׄ5D;h\Sx5Mb@.>W Qbh,׮7wvELq'Dh7r{`C 2+)hk",sg5܃&@۔} bvz{hO0}٘D nZax̡RD?E}aW+58ioZg9:h صu{Iu|rP]NFX;R,N<]+F_"?sW+3LnbC6yBUe E.s% ~-fxo< =c,;>v(K 9H9~w,6B'J I2u2MR~.d&G jw,~44I'DwEIJZV.^zCyjMV*[nOS\2= ̖]'nV`^/"/J;UV7ԯ\ 7q P7@\|XňgG#vfB Z [Ulי[v-|ϭⳤYЗ*X7(;]%ihg;c?8ɰHD@='$.$#~4/Pu#Gق[aF> t#Z IDAT!O4)b ~tk;+^ƗץotMwtCڂ?`xBvLk?u`?DXvvC ^9 hWnn>Ih!-y5?l>irx*,5}m 3} D+`mmsS1sGhyp.-iψ`r:F%V 72 •1bE?q}qŇa]Fzb^@'ԭ3*6BY;a0BgU+1P+Zl+쬿r>ŗRwEj~ۗ7pZ!3)r&Fȹ<|7M#%z 19H4P.# |;5k^ j(@ :_\6βJ^=\oҌݲ)Ū̜~8Un"yDRGTvJwb\Ԧ6DgPee1{UvXư.׏eR%{/$4VVL PFq3ÅMi:26K8?eݶp<œ*mcwU'/羓pڋ'׹ڛʜoy3aW-Ez;#]emCLv2y1d?nжG6u,x>^JcU'xJN@3IoxUQ(ϡLp>#tq31X|&^ Dޗ?7?6$Ip"/'N(UEhiWYhzoQ2)o6㦾*+_,T kzm>v˺w|som'3\^~6B'ZU[cf2 !]Q˾E xcGaL/3חrs GU/{E(O/γvh\7:d |lf#=A沴,~eD bUg5ThEr| IqBK1Y tl1~w%$@?H$"_Ư"o}!֍> av|[yNCa9?-x: ȷ |-,x4s%pLǿWgsK?r1Zڏ].g(V>QT2?AQ+AbiWB&P&OݼF);v-Jrρ~a'/ (L[ !x`:nOAx,=\  ݽM5k@)?&W=3iM|LjGjĵr֮ O>*l>JRBjp١;x٪z۶٪8} qi`8,&'2^OVvJv%zѻvTC?dD2bG>e2K̷a$;C&;%I/M莼-~9~I=׎%YBV ߸SVˋ#>)t,EdcDSh6>sG߭r_yGmezm "# MӷؼXGc|0;9 d}LJ~y+y@o>%A~WMUx!#(8fBC8;{^kEڟѹS* q(&Mxbv }*F*6Af;$@}AzVo|GoXI-wXa-} &}ʉ}(ܓTOsC{/!SC6;s@ @G_QeړړPDǾC`c|pEd+ؠnF#LOJ]LAİq-:щkq%tdX8=!0]1$;vI/Ԗl{b&]m;_O?9p_䘠R1}H|r+guwAFN7`I&Ae9O0S|g̾Mk{*~yBZ'UDs=}ag6 Vv2z\CG=蠺[!EO=G8Co2{qY+GW8nwXYyh].7҅՟?R[Z(4o62H$xJipHuGQiGa~M?i d6y,43~:<9_"_X9sV>wQ~E0R^ FL0%N".L[-y=QIk{,Z"q=p"G4vV'?<~v O,7얙`fW ;zxy<+K!?ڙoIr@JSy7JĥJy NkӮ~g Letd-3=b(Dk1ŕ¥LF敡F{5K=v~qі:؅h3;.3|To60̨m qF>|'࿆ikmQ=,$wGmy XwraS ƫ.LVz a}{QlO F>WY*xGvC&:ֺ7gw3v!7* ur>_?ٌAb7}fMXN>?DN^ŗC`Uo'W\Kq,7,-J%=(<4s3r3H¢ CV<ʧxvӈr~o/lEXj!蒇DVn_j3wyrhK[?H~Co<&^?*v P=EA㠃Xl_"LfoY&(dAWN='ݱg>mmbΈOӫ'>>mߤiA]:4 |pӃ$o[֝'x\\7z֨˷#0h|#G|8`5(hܩ]œ!n6k1]7:Mu-صCIV[V{扷 Lyw?|<~P_6| xٟ9YyM^_[4fs*cœ[}4͍D懁`h.AIu.1.Dy_yi\<z{(Pr dusm$ sI_{1| o#bArm|M9ݴ?)1N>N=y7A#іk Vij<=mEC"_򙜾r .”o)wόAo- ';Ro2nda 19қ-*Z_s!pT\?]TO°c >͝P'ι`eqM[l%3&U1DZ&So* LT!N_&"ߧN>&mO͢9Yϋ+q6S]ELS^/HHy3xEÑF!/^E{mz~'Px^pz9ߨ>Md.2;Ц ?* \/ɳpKc%Zvg7j OVdhc}+L 1[#U}X2Y^!a9fi$A_"GЎe5[k,\뻡r׫>i Q8t52̞L,1䏵^*dvy ߥL> mn+93)DqBc1Kc O3cEۀ烅DρMK&3t- hxo6Be%-7!Usc V"p9#˱}{zF[YM߷/DqsyC`Uo'O]*omVƕ|Yw߷7$}bNHG֞5(dHۦ-JEy<=Nx|9`b0L?{KP*f3wyIDUު~(NO?[X69W"~*M Lt=q8.x[u圃Y[Ea%>r]Xe i FWLK{&>XR]Ǧ _}K StXNJA9Iƞu-stLq\i6$QjG6-,sV+.|vUަm}eUa`;oӒ#Jb_1/J޳6aK,Qߴ'q^Ҧ~TQE"}OQN 6&CQaؠNL .3}c}3=I/+?N@\?K €<)$c|ެ4gL$׎7l_7ƲM}g%ZO|7T2E]{z๫Gʜ[ϕmߛw,wJڇ.ocؑu9g u:}ɐx;4|Ƚ^}<$-L`2,1taCiur ;v+󝲑KN?nP4%Dt[a0=` `R(?'?[yٵ͚,)Nfd} &_kfWim0NR>~14[7sغdG[%yͺ?sywşb6E7,1މ2z ?씶dб>Rh؆$*AS?;@M10G`ُ4 DÂC[ʏ~$5>m`Ѽv~ы"lx5ŷi4ZɛVB-kN.&#{Pc֡:íT>ƿ2IHo2 *g=ЏlħÕyt! b}>rK~Xf{{o/mmano#oγm5„P>ҷ>=/ÜQsW9$նnNEyn\m>kTe*Xg%Vj t-Fʎ/J("~ooUwظu=X\1߉Wq@[V6EY CH7L+LM~j&4I**=SW0 L;v'8{ -;,y=|z"O]}s;<䡡6"9Q]ys cT )CZ<$c;, ab~&0-/hKxy7flT1^DZ1L7U3}W[9=Poe :w :a&EܹzBfUťo2&Z}ʊ;f~DkKȐb!y4xO,o1{_DtS-]d4DA޹=B['ȶ٤Leq=NNSd2]T#?T(C3o4 k6&GZ׀仿lmxƸOsMp|-]7| 38x%6| ,o[O r0yv;WB˘pۂ7C`M3y -u ok4%J޻6N8)ME@Q5| ~jT>BlhYF7nw[|}r{@a Qwak$>ݧJd/v*/z,{雵EvtD:VyG:TZH l>T>ZRo](|ەOv?h8jS)kGLZb{DK=O,pt4|te(l*d뎛GG&$?X0rh& 7T}A;UwȷRg.4 G2t|\!Jvlgu2Eio,7L)); k4;EŒ5>6 *[#QN~H59۱wgh .@H[μ#?Qn͜IeXn4;IR=6wUI{x38zVaȱ՞l[v}HUvS^8}.֒`ۿ-nBÝH>9>V=WƜǎE?s4"'uV!os6'LjrꚁP.VZ.lm}a}bE:Q \̙[a1'x>weI3ʻP~0@[(?=;qPwKf> ox:I u E&Cp5 (=Xt}{wLW#=9.î_rBjp44=|ī?|m,G_5ۧ$u0` 3"x $=' ÃP.x'x(=p,aI!r&]sЄNF.0'<:ɽsC2|$&EVLS򂡻#7o=tPg2dۇ@ފ}`V8^ (V|?hLdoFľeX~u/*O02= V+~@gox:=wDٚTbl󜳧l/p Ry#h-v_0  P륀ƪS=3LMʕ8WtK@|G@2"v9+w˔]n(Ñ2.t?>F(HaĎk{E,!-ڟI o>HN#KtnMke`]AxL5#e~׺8Q~V:ƷųwcfwxzH Bnlk;a^/ V38Mu|cF4uDrA2/bGYyo3ˌ0,͕dveW k(ώE@7cW/1Ez舧$ a3`3sI=ǃa~}oPzQH| 9M0QT$d䝥IX,L3Aoa3PHZ#mIȀ87&>!n`:h3L߁OXԌ +.}~7E-҅O!BV^*NNo6X;j4Iϱg*|nzUS}G\Q}jg]R^ph|)_<`T55̋mIn7!?y1Fk&v/ChtH;I=;*FfIV2]XXPL u.kDv!xWjgƇSi|[ZWG'_KeopޫʷN~]m/ ;&c).}p[p!$\}T=HU Au ~ݔ񯔻M׾_n?G,}nw`΁sR 9n/`Y0<=x>ʟ#@ט`#_>󯄶p_|,LoE7+(96|l}l&#fWS1Oa+[aW:< U~Wbypfcی . {xmlv~!?aY?Gxv߀(Ο u/0<3شejYG']*sAs:%~Ad݊'8q†cI=̆$x ZWBL/O1& ?0j;ؖV;\vң_Vs Lv؅*s(,]>5&VZG?Yu*x8i#fd/c \LŹ/x {4}8'# >EeW=S7;"/̐gyKtu^'4opL/4f '/],xkEƎmUhPW\gvKهU+Z{wugjyIOuKĿT SC뷕Ծe\|vcZ|ăb"$a[BozȠK25^)`?Hɂ'tI ?O`CIuyք"Yhe[H~W!gBwвv-[Ǻk*|3G{݀g\@Iź2 4E{4lLFģJ>6NٸR͋Z]WHG^MGZe =9x\X(ɂsorR*;.a΃&=GuR-'2r(vU '_'Y{M3KCu𓖋,`;C}3ѫz~u(W70a~2SB+8+&Z[uV/XC|w1]r.[[ҹfiW=\S7Fegk=:~C8ܸG~7dS!G=ey޽6+'EHj^6Vb] \5+Xyw=[vQ[hcW/+ܖ'7[/ۇ>`f0 L+7}LN``sJ)E4l>IجYHdwl~qy~ .6xdP)O#efW6EFY| g<򵞁^q cF=4ѽğ7Cm3^ln}7}_kAXKןa;Ƃ ZD  }w.,I6 w\}\oEvvҏ؉ @X>]cvCI' x!h: |s0mtQo3zF_{ Ve N5dx3-B6ՌO -O.QoxsB,Ys{PU6g+!%<ΰ(%W^uLcKecXCE2Ae|}26mθ#]%N a"+{t8oZ-8r|w7YMAa_ A~;, !=`x/$#ӭ":(} xr}~f++?#JT$#:+sBXDeO3Q٘0뽛 _EvR-ᷬ_ȼ>owuaig3J!QDkc8}asr܁3#6V^.pE!~|ogQ>Wiė#{ˤ7˟3H5sh_rOC}c3n-GY^ X_?#@Ap%jG@PO.߽\%-|6f#tؓoXԿeEԄ7SFd4߼- ݓ8cļծ\ )v_&A[SX:=_|y1[9$`^Jk b O|k_eo3C; CX*e\eV_Z]%3LS2ztv"b 6Dw%(OW:u}hx1ܶ>Rü%_>2,mWr?NVGEOC_1Z7Fӣ-hg7|8t oB?5jx}?/ݹ܅?8Kjv:lt2|ې/ Vn7%7kc>\%k#n*Ru0|!p+ȿ>8 =hOҽ߾ܰߗtrw<_iV"?sػuNhm^&=.,KZ#@DQP_mԱ݀oO І ]V H9eKS,(rb;V@oXuAdvc^f8/+rx Z߁eIeLGYl3e2f,Fsvc/kaGL=L0qC’u\EyOZ0nUN5#Crk^,[)`-r*b$kj- HzLdRB֔Pxh!u1$ړo<Θ: Y1B:\@{q|X_ӡCwwa>{6>jݪq'y3o"?::Qq!%{rfa0m&R:zsvخF3fyo9[uf``ߛㅔ%/%s{2>BٺPy i3 e\/ԎU3 \'\>*!}4e~h*[ cOMC*1 IDATlCml?} ڕιJ?h PI aBkYHzJpMK1@3䭅oS8vwrsc8[q.-~A/ɿۋ&io ɾze\Q+tg{/Wu]tE[[tyPG*AU^<ؑ|EW.0[uF24l{㹥~Ro_O^}djL=@>mcELQo{S|8M0lk!6^7Ir"]!oN,&6iK'I^/Q@.p{9[̵rG[ʼ7K7-ڣoiu@J]ސS ^3b :%+Η c7eklsɀ hV,v2 O*x t21?Ck$c0Z_`MB@N6d٘g>K<lm`o>r h^\\qSa?BsI ;PibVY>0ј40eɧ. .A8G8nE +&>3X蔃H)b*t֝Șo/3؀-x)@k" HoYyH4px6k3>elbl=ZX^~C`F[u|!񴴾ɺuA;O4є]C^Xsc[qS@RG ;_FrwO E^mY༵@ \/ (5g%"&j'˂ Yֱ]޸J(0%d -S^0"K;|_fBg!3[*Vy%2L=v>Hn+;l;LWT[|?agڷh9;"5Av2ctKb녇~cc1ZDgT#lIпjȼnb|c}WZ&e>Zf*I۪K<vCf@<Q| s@9B( #ᷣ7ķGi~vSnj ʚ0`˚4ށKC|4mXOćr wh0N+7ƝFi1XgAhp 4w̾F4KWݶj0)k} *7 WOrlϺodA_8}x+"`%cE+ZWjs6dxy@׎};wfxEelI}g"_Qo`PL_^: 6f_N"<{-E&?/>qģ 56 <&K(c`)Xwr.UziVz`r9hM$x@=(mKrRyRMf ')]sˮ]0_.<0=Bm6pV^o?-[\̿,*doU;[O B'@xm~] -i+LO|+r9oڙLQOT硴' P|_%n׮]4\s릳vo&8g![bB`b Qz> il.A$ m[I4E3N: DV|*9R[x-̾zfbôTi d30;8K Vz߱CPwrƸL;zB? ;?BktmI@w@YɩDaz~GtԑEז|:u(e~nʹeؽDńx./9!0ui+2 m^hcKYfX?nϑumm,̥|H`Ii#~mQ/`eFd b|ӳ)3{&"։%"ɷ8|pGa ps[uKȐUo!W&g.If||hGs'3gu ΑUgq\2`ߡÚϝܬ}'aptco?2 ǠқqyH'x"^l@L#=3z'.C2 .C5Fk@C[UOAvgU@I1Yx4g`܃d(΅E^`[j\?VauXh)n oņK^c3Oʚ`9S6Y=,4_raX'X] C&!8dx~EX"Fw_.NG܉[ #۟ o殘Dn35أc?Y>7tshp-tMm4he!qOqyz{Uȓm;t@2>K)$WKI&(kk?r>΍R=E7Z냀_B2x2 k_.Y0ebpI>5yЀ?󉁞_/<0olCI{տ NZdwӂ_pNv3걼_`,v]q12#m*C`E78n>.>Mb@,O/$p[c T`]eӦRPdW=V@ʺvHKᣓ uAaև oW;Z]>'}Nx]., 池9 Nk,wm6Cz mgs-uf1 2 yK&{6Y")/ѽmG$Z6NM1迒4A>G?ؔ8oorE_=9<ʶF0kmz)O`۪Ꮴ0{$mQs`JV/;A[}Kp0]ݜE$;v?Tʲ<蟬]Qv&81 CDgr$si~>K0>vE (|X_٠7&'oc澫s*A.d??a•&=BK]g6'L'>bOM 0PNv`$`sǜ#AcigIں>hyLcw|$vk ML/߉B?>&BN"k?3Я\|نrG  d`Z% qϮAl:#N{,ܑٛfLO,-wg8,+?}XdcZ6]#>Sc+zoH ?Kؤr1Ҕ\;"hd=9|""i'NT-բ'nͱ@{Tm ͒'IK#dgLG+؆cR=~c J[8G&8ChҜv?Q{=4i9L姶Kyq&IA~,N:k& quv ^@81JI.w)cH{'wq7wjx91̫;syytHpT]WK1щmHwqQQ6}qI):Y|SuFW⪶5M{VZL,C)w;_vt5kvɠqlc(^Es8p8lZv23MzyQs"tt&b,Nޥo:3J5RRLGwHU5t|s{̱ؤ ,[ӮILLpa?&ZF[ij<`gɑavk2CwՑm',UI>ღwT bU<f S,;O1ei;.9ǍtDooz3`Gި/.sV=Js/#E3z#q+`*|:Qi&~,vDW%xq -]/A֬w)RPI|Q?Xɭu:&5IdpXȡm0+w0aR&Ե'悙׎M7њq\/W`sd|^R:ј9i!<{Aw'γ>EDCM,ڍ1qЀ5a,B ^b NXΧG2C׽jK?|>&l汲c%SC-30ٝi ;E%2[:]-ٓ_2۸Q?k*+?whwR|;o^acll}u?l_|}%i׷jwOwwҤ?lw&HZ!$?)k;Έ *ؖZL:TҘGBW=E'lw56ʮ6?ѰLW%-kyay<~%=h~ڍz̉?o2=`̍Oge2¯#G0R6sC%ǿ˻HL;K ) (OLg(ڑ/yqo4J!e9ưsWqj&Z rrmOm?uKkcznqL8޼徭_kGl.TQ_uoOύ/iFdݚӻ&}sZjG.69n 7Dx 27!Q"p)dxs#8xǦ #˃@ 'zAg~ha^?+emq -o/_"W֚MpF5$I]. 6q7J9^}4E\%a¥߹ꅸ`wm IDATH}ƿ/$>jWɝ<9mC/z =֮x[V7jL֤6d }zR{?x;<{8D%CV^,rOa7~ t֯^tZlb~k6ڒaxkmA)>oSLV1!a?"ȯOyC/vH)=c;5}\ov;cEz|$(]_r.LZlOeH#7G^*=LcEZoVyu826^LD|`u \ \#p_`Z[WFXT'%E+-_9pwd]Usl3>sF"p){\݄׿(]{Pqӎe6Zh2_Ns;>zלer.YDP[L& I^_/ S%w( 3>GludH?7&jCA⩅MPYOYWdO}v\tgJ|zŵ- XiSHl:JA&yͻT_p~qǒ2ϏB?3/p&|ϲSwTl;rC;)Y4mҬlR#),y~mɧmSivO.Kcwef|KʡX⭢7$t"]w3?I\AIiT2jEb%$apDn(ťnߤvWьYݾow/z+[yؔfkS<ںո6r=_.yE(}:YJ̱$QeoĈR$lkǛI[& &5cNxљ3;qr.H*+J k7m9>+lL/o|)H#NSWwēke]g6<1{6[Ð#xp}E`bKQ17ٸUfh 1;6f6Fl\4>Hؑ$Rzfк_/`6ζSՓ!F{!y/mcr<;>+)dQu޲Iai]_TqRj㒗XߐEQʾO.Lw*J?R!K}3˿ :?(.X3l IGN"r &12wrD HK'[t+]OFĤK _` F;l3*L Cz{Ȥ3:Ig.|;OŘ~gYjwe2 4yٟ'v7:8X CVȉudfֻdq:e{j]HY^}z!h#Ѓ^K*ox]%)prL?H5Jʲ/v4}L(po<6j.6_Yyrslau=ڎe<֏Vmһ;pra#Xs?<(˼埁^ncst3p%ۿ[r.o*sx<zb>uu,vfkk-Ι#hau w3tl5E:=L9Ϛ'ّԙ]8n{Mǰ 4Qgl#m*=ZNeИ)7icCk QP~gx6u@K]>)-(McuBosud28 ;[Te v=frl1lFbInrtS<}7btv50(;_j]tehVDS ?!DL 5*f]~}9=)zQg6Ft{i_ZNBw\6VJ˷]nm7MuV[>ډ|ؼ nI,q~Erl{# +NDA2?8'ɲšMD*TA):S6wEMܑ.gϓg.CY?cr==Si/%_x]۷GyOY y!$9ĎbfhOXP6f F$鷀zC=IFײZGCcNDezgCGp x§wp%?-0pⰇcbx]tOcl6zzNUOڀ֒9S1!~Kʣ'c|J`GgMHft۱-;9n#rʗ%.ϕ$XaG2&|v̞%B[6XƵW"i ||Tn]`ml\Gx-osɐEzD0RG?#a,֩vs?kuI\):Mz70=:nd ȑdv:Ysm{>~#W yq4wr .2Y2fZ-+ys=EސvOy˶W|})\<)}a>hNk|cHCĿc]ۉ^A8.r!bHC9KN[-.^sl9^Y٧7mdcE|V$.:g(?u;a .7=NJ1wږųؚo߸0 CQi;HhNڈKs#( ',W `ʧgǡYSʿ5Ѹ^=/ïv7~Gň~ZO-[׊?mhY:=oQenýc+#]M9y?0)߽gE9ʸ]>(O->{#K;0=-ǡ#$(ecCHB,(ifղ$g CfLD"<An`le靿΍c}| e=gV9 D Ė-u$8l+= f8ײ;U=T7)Kz1:!)dA:үS޵BzH*^drVԉ;nN%`T.mI28zYC?EsO:jcg qL1X,4٬BOWg91Džz} =>/IU$R B$2o-|_|y͇=OyYh o,pJns:sT``f޺wkIGtǷ'^NQ\=7 a@E):r_kLSЖ>& @ow܎^@o&C uÚnLt\nTdEWV g2͛DI|ݣ8Z6 ߶=Fyg /cE~>/WRcx/S&~"(19A'dOu`O,5Ha3;|`rU<ۗ"J\ ЁWr & h\y='!IL𩕙٪ Lwm=vˊo.F7/v]Ty;$N 9_tzފU-,zfOIچJvx.|_(^, OjNuҕ.r4)| i{ @nTUdo9 1!LK,RDŽjTwJQZof_|Q{4cK{Wu¸|R߮qWk'26DXd6qWN8ѯ/^i#S]J,SX).pӨ.$u$ g,>K688wB"bEz# + lT'h,่Śǿ vr'W]2oۣ}qgQ #=9X"pMOۄTfE?tǑ[1[3o*Ob,ģ0"pIԐ{Dn:!3KWBIfՀh`k7RWd+odM'#6VӟI8iQq`ܤ>Q*]CIpyWCf~MkOGK<ʺxYQNa-pSkZ/r2+_0yA^9߅ѸGXvX>Xu혽ԫ'aoE.<.6}ڇ64/i!Hk ^Z='鲺[ 5ў~5LEJ*樫vڟ7'͙\-kq%\}KZ9"YljA,ÔVd\3g#-k/!&B+B]Z6Q3`mY/5><}3%G.||+|,+O9-(abZ׈}U}S֟3ZDܦ׼o}(uYac1<~?>O;SmtEK "ES;GB#,v;c4?蹎~>'>S'*]=Z OglݱMRw|._+o+O[|yrf떈E]F_Ss(+a{r#ko{ /Ǭ eWsm13)d!X9.DH'-$Leݒ< 7]*?ףQ쯺:A)’eZ~bZ&m,-BqyQͲ>f-i „xli|\XAq5UJ(INV%7w4L'0XA'# ~AC;qg'a<+/|BOHpƅTGK\;k.Sm-qh?qO+OB"-?fQQ5۹bx8i:-BIe S7BuDskWrOLb z.)wGCgiEm?eo}H}Cϯ IDAT8yf Vu8.Y$ӹoI,ޛfR +҃Ws1$3\VXI(tEOu=$*|8RXb(l \? z"&&Bs5'V=Wứ\}w; CGݙu|2FXӘ |-&LeyCx_0=R|"b_#T2S|E\/^'"6w8{r:)j{]]E*/7u72|(|щ]Fs6OY:樍=Q/1sE#p|/ηz7?B֥:OLœJ%Qށ`F R]wB,tti"XN._YԘ Y3!YHltB8h}2\Y1td5i*#=vwwAwuߠ/SP ?볪{Y>ŕh d:pU}H=T}qY8bsv,Ja|-@xmsĶN¥FcG)&Wxz4`^-V_"vM_espP\u`|-}$w|{cB?6:'٥6Sc uۇš5]q#Ģtttѭ[I6󉏭] ke]~ea]^er1y]c6^׆^Yiu>/'窏qz_\}1E=\z.){G|EYُ$xԖco62C02eFf9+˵)?x)=a^KHR<ZWvfV,qt47[.=GS-}U]=|-QV"MÒf{ca q;+ӴC ح6kc r_vu )5,++o3.2&b#΁Bm<{]O YO=*^f%WUL]{my/R@k鬌ޏ`?ʺ&8YrvӌG՞,NH3.g`]VO{Y[lC\╷ߝxz(JNo`c@o?tj_ ]Rr{[ ʷ*FMwr`~ ßN,n?~^m4 v/ =u,L q?-ێֵ?Y_s: Y¦ oWLt)5%O0 dw l #~J'/7G| eP;./.Z1ۮlmOL[NݫwgK}Až0r笽'~ p,Clt;eqpEy[cl?FRo F ЎE>5QDI&G \2ByJC[1Ů[hS=m+.bòӳ9#/Mu-y}hGZτ\]فyB7D3]˟[&}l"q(i!^n@¹VGYWp_,Nư_ltNZ]\Lӈ vT}gd,uu}|y\xIr?L_7Uw.AO 9wJ.Ew&~DQD|]N]L$YG0Bp||CB/1<|=ғbzh[xݐ ]B( ^P4O-$1+sOd6oߢ.Bwiv$%L,? rB6`ډV]HaQl䙅id @;8`6A+,{/ uCvX`c9[6>i' ЪYKmr[c7t^Ϫ`ZcːyNU{抶,AIT|(:tq^]tI_xÓ;z'c~YaD$Yn?9al[)krV)+_9˄6 <$I;2!}z̏  ynTW\UҽnubzJ+,;o[X/nwppܡuBOYgF3χϾnO{\\lwvO_/ Oϖ8_>_وE`!;k#":eȻQ޽U=v>Yŕ]=uw*4:n||:˯ 2njtjax]7Ðョ+|BG);O#0[$P JaKDr<ʉO"Xw6ӗ>yIG]-xMUȲݩU\4oKbptuesҙ=ws&&/o%4]mP&S2"u='nUj3IhM]Zdv$ ձx)b =cζ!?&]mw>_ jYwEqhao<Oc}|okTе y|s;8`bH$t4YϤ\a"<΍Qtet c9Rҁc[gsEXZőxTy?g9?qRg}T2 i״ߋv뗈u1u^?+o.{'@upi_Y\E2vi 6o]n@ QVqT4ء{Ɋ<  VfugdeJӆ=mgXLQ'O4~?OÜӋT^nBc:t o F\N#gCݽ/A&@IiGO)M>ϲs1O,z ~}2 ʷ{7U\X =t 4 ްS A#kK3+wQvWۯx"[>=Ra8-md옌'Ey3 / |- M&Ѕd5^7i;|%~\`_>1bF- xd}T##FGkWi{WEy{4?ڑVȁS.aϛ3_QspYsss6ghNN'£eic*k4~)~1x{:C? n# Gofk+crY9aw:Ћ[XkL)p8zqФNQ%Kǵd>Z:!")3YufE+{g7S`+/ ʹ5e7j.]λW+ˁknJ^<;?QڑMmFJW8wpSbrEʿ̏m|xVwp{.K.e>o~n5.eJuf¯̭-i3?u87yladzowt;6t>ٓۑބh7nE5o/st~JEڜ_G@xQc<? {ȴwr5?d4gq;]N?UXuy_nUXIEL̟LqВߙ29[-x?S~hcSa۶Ǩоw3ggOq$v386^J˞o)>of,pp{^vkh5 r(:sg [(#ȑ[%"I>kY {O^ɦ5=06BR YVZxd:Y/8ݻt ]˴G.O'4C<ω*k?ؖ]F=y`7O"NH6닾C=-zVvXҾd@wOp9:&6GHl H9y2$Hp j2\wu\~S~KwK6$̫ YM9- VÚn mgm^ÿcsY?D>&ֳ1%x2=!L ? _fm˯"kcW}{4se"8S;m=^/z㬏 2Maa ]gl&'~֋qmƢybx$<}"pgJ[꣡E9:Y<ĶtE /R{elX盇x~BƸwחtGWH\v^=7|خ4^~9LN8qx頠d\ ؚ !;U bt` ]I ~-w]6te1+p` l<< 8v/]OӲVmwJe\ n3//).%+b wLcg]heiʰ8P`}X 7= p#f8b8f>1F}#lbe/b ЄO6] Fv&ju? yLITB,0eT5M<01l\bJdy&tq7Dfb'|Y8Ԏ$mAԇb.],v1R<\L<)[ʏat:=3_,ec 6tKU7M.4&6}wwnU,keeܵ@{ig˝w83V53=>Y۲n;?N٫_IOq²,aGa')X%&!.Ey`(> ?RČ}c0Ƀm=$;ٗL|I EVkPrB)C686v&Ёs!/J5uJ W;zeEd*^:ZG%7t-r<ѷ)=l7`B#⥷bV;U=cliwa=\E` qHJ'n- bĘ,F"oX`|Su ȕo-oqc\V|ސrt蛺4O͕mMҲ$ 8#2C6K%x^>cçb?lj3/Q#29"Q7 &(r0Vϥx0PsD`sy+^ Glt^', j^m8 YW5B݌s;u{fn}I?UmU20$L k}#Z.ךm̕o=tfsJ{MZŜIəóbNq}`"W =?{M}>A>AF 1/$N]w@z+й/Mwv!iÏpz_~׹inL0 ;Ц*TlNbSgXE;v;P|{vp罾zGh&7R[RMP U!)I /oѯArf %!LrkæNUdtD'ZOy{#MlOa|%V7{2gN"0v6d9ƀ@ + ֻ+;cQFsܐ݆-Sa>)2ܞ iK_Y*֚ɺ< *y&>ߩMCvƟG Dz~UwSv }}o 1_V--_}:j{L?z\2 :ޑ\;]<%EskG09z@1 /g lrٯˌl>i>(uv/B"y(zjB@kZá:[je_4}^Ie#u.ĖMi0bq7 +;V]st+{t.p1YoߋHv7E8]Z }"[tXZcy9CSa拈GiETیq_;%}Z@mZuO3 OZF}%c \D!ylL'=篻H=],D[)P$S9%K KGG>֋]'cQYlf [ljtv,q$V]̟ȳqF WU7jut1A|Yx!v m,&_6DUMy1(~'u7<^ʶj1Ζ>`Ec[)E=Oek'ϗ1QQY&c"v$8v\O~,ΎSõ&DŽZ}JN`JSv 8ꮏ.yё}f[$86G v ร\>˪C-pa+=?pWSwy~/s=wog!%$AkX " IL±I]bR0 qY{6O^2Qo҉ U!3/FwDXT#kUaUxU? jKd߬c%3.;VJ4VN^`d`wR8v}OSvzu~|X /Ua xkob>Yٿ6wpF-דp e09,wN8.5n?Od"gn"jBƪp6LA"S䱖5ңϜ@m޶#8r?hOWb둏~tx q!=~Fٲ[\f$%2I2\kRTGSu">>+[Q >UzY6L';]\vNCl瑯퉸%clzL7͓^:OF?~;~RybO>O-vlJy |b ;&nGwKHܽ{1UFPร\]LE+F/s_G@ )H'*w&#f}$gKQ${ʊF)Ap W~)}WdM1$e{'S$s?c7&D n&M3u Ƅ,c* p<$fs3injxu1;a43ġ@hPyZXUwRmT>ZIWUW, ݶ!rX-[qkH̎nv >T7Goqlc:{?V|bgç9=Սii5u{NГ;U^qc}ubRנG}K}{;0fΛȞHk8uSxvg%ĭ1q[ mYo;w:vوo5#zK_9u lP R(ALO;/1}B0ӷ^N3a xw4d-_2 ޿ٮ5QoP' ۝]h.r=t^wF<{'hj?o6tDml18e\8>~QN+ۆ_Wus/Ozd3iKh/vIeIa5!.@GhOl$̾ 6AXM"зӷIW뉴7[zFjkI7Mmŝap/>WwӦ}sNNy8Kv[9ݜ%n:H]<ӉKfy~.e$q[WYy#Xz> &)_W9[gfrNn6qPm9w S)ߧ(;cNգmi$:Ph?3-PDtng:F}N>>O"B>=,9C{W?`q筞x+*}cy/x;W[oк͟\>' NòO?/6+QYY{) *}۔XW0$9n|{͏щ4{cCQ99$SX:ԜU-ob|KySS'W)uRIV&b܊] k\ x\h9j$~ի^/ `˘M$jO_fIWsuyk)>QϲHsVG[gf;v1n1iW7pWwOeo@+Q;{H@]|;AY6DPxR4$Σ3ÎEKزZ\_F'u'IhAd^߇ܩ}z;~5|zfE՞e}k{jsr .[Smߴ ,T{˳\snn7J=&/ {pWymB/mQo:^f'2ad>GM lbD'V|3m`O4Rl|R|}[k ^w'Ω_\dx"oY|@^T^#q43uǎWE.`"O1KaXpn Vy:Akkȿeà v1[zʋ/q|g -֙Ob[r5J"Gt{:ѯn^^3ZLޓ1)/Kۈ2A NO,x":''ͿeJ?᷆UEECѽ@=CǦ.N|!K7;x"U9WZi^ӿ7Bk;C]cgsrI߱dvaדe<&6uGjBJMQh)fCnK&kC'&_tZkq~W5.zx"_8+rVK'"c57v=v&/SЛHzy,VC_< c"eL?}kGO[]hLfvX̜f˯Dzg|Ns^PzGc?,T=Sʳ?U/+yD_|WVŬwo -/NHbJ$ \^, _<X%?ftMd7v4FgzVٕզ fYuwz*yo =@F@XMLɑɽUtgbwD;(+XC} ]`XnZ',FSvO~q2/|s۽/Y#==`ؽN9'm1`UDՙٯueq-òHj* ]^{w(GȽ)Eq*nKU3Z)yPJkhygp t6ﻭ3ɤpYKy|_wzC gE/(RX QM2sic\ZF⋮%+>ՕMMƨ0>@b.(\=3|oj/H"|;~ڲG =?C<^)ő->;xY]Onڐ-}5uJ'zt)??S~COs/7|uxD^8- LO KI;Oz:.KàI7^~J u(iXO7]y OiUXB{bqFNR,"{daU$'r\ţzۯ^-Y;5^ u1y?<<Ʋ 9 :.l9|Vb~q`B^40 #=|@yc}N/|Rݢbo򩾄PioZn9mLb:DE+_]BIcp#@yC|ɾ L:|;u&NYhXsd`>L ji5U/WdbnʝK4z1֐ٶ6=Ĉ|9X>7 }>]؋>J={#;u9ݬ~ѹTcٳgBMX$g3DKXPdxgJ'y C —*+-uJ1;W"GS:XT[D1Sq8 Nw?tб/[@~ U?)_u_>HGm86wZdT;_xٮrg1owgSyɄt3j_I/Riw=o.j7@cv剚XE;wNj)"+2;E-mF3a{A5rv6uw5b2m0nurS;k-:tN5΅Et|\ⵗQ 2nas]BfIW LwYԷ.B,_ & y96Cgqa֭tʝ6N`czN`1牭`7ْNCf[B}w3:yUNҼĵ#wcf))viΩC|;;Ď`g>^u{AdEYaMn}]w2d_rN7b#fkgtqi!NgX thCK9?,K IDATbMxSG/I&>G(SPjed;{sLu{|wKqGw{hl;1da=p* 00e'h&]~/YhSq_<']\9n&(?W b#b}g/f}$ׇwnU;-{EtnD$V(= XT&gp$ 0)sE#6 W ȝHum|=3% ~b ²;%lûjs_vLt|&wrG!#U& kD7Ѧ+YNNZd+} &x¯l?|}ya7^<s3{eF;^O*`1{(BcRz/h'JV)hUr]TzmOP:ȞDp=1s1 Dl zB1r%"=Y._\6VfouAEm㏢cիZpnǔ,w󱤃ϵї-{x?[rCWMNæmkc!ECRh 1#O|'vl0 ]d%N[Ib28g)KTOz] 'oޑ2 IqM{0:Tj5=ӎ>W"{ϾXf‘/*'ܞ;>'f{ȅ]/Z=V, e{?dv *3{'B‚2Mt#volB8 qΎF9(@%=Фϱ1/h|`*zH/V OQ#5汅ՠ $8<Ů[{MT bNщf'D\B<~,6G$Ɉ(9gfFi~{4d\>sw+$ gS$gޯֈPuy{UuꚁtupOGf ^dzM|Ui}?h?:K0?;YvNvIButwN؄NZK,sIx9l7}G ?Yح&xnA13䋕8;|"1`6daNQFIɋ>*WUl}K]ܞŕ2 V5>*'KwZof^L9"ldL5_ȏvx2=#-Է7.rao{9 C~G8Cп~@`p8SX;N;tkTng'hAUmmxM}C,~7@ 99éϊD2 ,/"Xw-^jˈf+ZߏMaR"\c8@<ֈ h]dy3*ё6 :NtbY㼧sue']w&O~up#:ϳ"!i.)XsT_r!Ӡxc0¦?[%Y߉iïp~?˛ɣ>; WtX:ނ*6S  %|Z"@e}nl !g|?oOvz)a%*.>Gה[0(ZdK^Gsn#ˣ)L&S+JǕ q7x$Hw.nHԧJBeiYB}R6 ˮvK<1e]-=%{MkOoˢ>?W&WGQ{ݬF-ٷ`GWaINXe(1F|a3+v7Iv1zﻶ%.82^Pd/ql`/6w<"`;oκ4=:*3io>kXKDsO?Q%j:3J͉,"H 4ՖXϪE6jji](' K8v 0J^+")ސ%9sRkIw(9[#yyo1I:*6h#h&jß,pm@7[7fė6 McthG2НY/b8K[Lwމ~Cesx򩾃2wid~k=cvw RkpϦ9ǖ԰Y:W=\oD*It]-,߫!k' mS#D_cϋUykt^ZQ:w_aB|5B:ߓ貒PSnc/ӱ~.?ެާrwj5f}>}d'+ޖ1=ٻF%㨁u+zxdž~,ޭgEoGZquYk{6UX򃉲/]+܍-.n!{1+ laS'<~JSiBԏiݸ+O5 1pNN` 8PuHxp#.0zYhqēM>,J$0^âOq|sv>@CҸl*hwВOEE\ՔΎeݔ ICAI,,1G۪iԮbkxgz$!w1hANX gq 6zCX\v \V;b1&2>{n6]\g6B\aG4sh;mڭn3{>~/.IJs|t.ېd=~t|$a(IU }A?<Z!_MP{|L\WN 2]8V؎Me&sᤑ=ؖS-c86Op+ oVNx%5w)!0҉[4TMۂ[0ht !;;4;hwjCrϷsgtm`[{+-gIoǝob3<*uu{/稷4:cQ k ֌sΦt=ٻio7g4heU yI0:)J'C \پ ~۬ v69k`"a̶Li0sL].*UqT2l J}3%F=oHirZrϱE1 . eL \K18:>|hlZwYѕTLt'$u/ +g!ʻ>ivgC;+v>@W61yZ+LRy< մO|b q*b[fKxKZdR.v6t[;&EdX/]jun1c*+C:xK㠒ۅI/ "_+ yxy=-Oא}Q}:M ^mMllwl|~By_µ< O_4u2ew˝~ Ƭ=u?=m#ksU⭁r\Mn*V 0F݃L x5dzawN&y:;9Akqe  yؚO?f d IlRa١!} Z']F$7NeaP}9mElc`&} yֆt+e|g¯V$kVT EØ[ ǫ,Z3O<-w? I|lfپ|Wvil=nsjsHt B)Gݯ OV=ӘHH5ǐ.Z6t|Ж"ΤLV},\k? xvV YKp~v;ee N?O9.:vbVoM+K ۦ}m7[τg{ot/#)s;Ln ٘9Y!xt}f(\Sy!âqZ͕Aސ+ebLO6aؔoQ<5ۆޣFw A#t >{8ReӫIkp.\`K_9eEj[h&lgly ҳŖsx / ,le[ _ NGs5hR 6,=}.ŪI'$0bS9"pS-$J+{Fnp lw6JS*ogp%+d|n?](bcLɠtC6=y^鈃ˆoJ[9%eF9zEja}v w3>+fw[Ó]ds͕]x)ES`}ض< emϟ?՞Fw6ws?V 䕅`L/8/ ݋u%u]<٤?1j`|~j1 ցcErjMVރ 6(,9-y(  ޒ67~YtիV|Јe+9Oꛌ fS>%s{) ؤ vGN׈>+c89'cXY{,Wyh #&z7jOFn[Wg҃~)"ƜڮO|O&{gxMnjl ~F\|% dlE|بf51`&iS3Bjbr ڝf?Uٙ\vO [Έ(OՖ 'i.tVb"DVqCue ծ S}b[-I4G>p*f] "`lŚɭm|>b 4d|DŽֵ?Nl*ܾRǫurN!l&>{qA@fSNTVq*s@"1/wo`\JjwuΪ= vZƽ3Ƈ)]D:RSLQ-ڸ[wo*7diO[[OIڳvۑ){y&?BnR{ :V6Kb[x<>}_Kj`G7|P#t*Zן1t] m{^btN IDATykΙHWpNs@r"['˕rOmi.;X ?^^cvVN^8K؟lrHZڹ0L 29+ 6lAgx<3xh҇17x7Ӡ=_-=h_3{jlEZT+sJj!V>rg*7j;'6b#Od?U/;C&Omj&&"n{A'9/AiOyv~e ;'[򁞝Ke śօT3>ԜƏqsD?H 4rMS]/U3R'uvf)0~>L1FT2}  (Zz+ۻ&Nsc,$n`\Ψ`4JW]@11UAg1.F X\*^sϝBɝ/O6?ap4"fdG`AM䝾$0/ Kr3%W?WL26AL%B;f3;$Wbn<.,JE]%HٹժZb;ο͞{m[yЊrÂY"pv$X.cG3_=cZFL ̥N]91a߾K~_&2=r"[1!z !{7n迵hPC;_2Cۅ` d[Yr^N-fN [ wjgXĄMa)&9qdzL:Й ?Th,icsq?'~m[],Rar qjXbu~adS,{ȟsiH=PEե9ȁΧ0 ^' E/x ^>V9KB6ؖEN#k>Sk飨ˈbwyb;od\ EwU@.fڱ)#E(>ՋrEh!?da vV-}1 N_biK}}ӢL dle+#"X8Kپ(}\1+cmmJBϿ+ֿ,SMX;&Ӿlom=zTX|llRsXK 9%~] _:a g9AesϋHGWGeh+#-I%MYB8] In|i֫9z:0I]);?S\sY Lu*,(e1_T#.0@MEwvTui2O7︧ULxsTz5ih v+tb4 jlWjI z,1VqZX\/ ",xdA>u~#-*?GcVmM[ydD^ Ƣn1Oi5܌`q\N^lTz2S8 H#)2ʙ_F1y93)pVʕ6c.D{<`jjn?wbtC.n :3ܖ/rו4Xt|jK[N90^b̻9+?۟y|/UwۭSbm# jMaOs俤 %w9܁{<)X;wr 5%:^Q >6V7yXfm'l2:lWh*Lj^[Ҫ멜l%HXic;闎g}QLh,ŊBm<Wo: REbw9̺ᷖͭػ޶͕Ї**AL y%coinkgZq5^-^} b,@-qe1bbNXrI&£ex}` W1s{}fyv_&Db[Ե@#WGz+-{yaaai,KWy;9]oh FO+\z&0KVB[]mlmtguz{A.ʗ#dUи\nckafceEu3=ܨʯd~rm*t2@a.ݎgIv&+2 pΝG%]Os{JT2u' Qϵ&'`ƪW=TdlcZkSzV?<ʢ%S=*Ѧހ=1cGg;6{9ٽ}iSa,~b$E m XnUf>AB2zCַC$"wb}xEIXHLc][>xGT֯ͽ"#=){جKc5qK@}Y{|9Tvep\x +umaoq F27n =. h Pᩘ_+`jذh7+ck6R@պYa-ʊ|^Obߘ¹Տt;e?Ŗ԰hhx C+'?+>4n-6[O> +V$NT_2=!X@b Ctߚ>"_F p7G\/Ɨ niG!Eg>NfKPL9εK#A%~a5 ڤϲ_~LOKvu|%TA6!é6V2 ٭>>9&X-pЗ泜Bt{1щ5H˺.G);+5>?LϹSguǛz>hOLߍJc8bL\Bǂh۽NٿK] J-hQ7dW-1 LWW?8kwXM^0wuz9;MЛmw?c+WW)$8*3}dH9-L(u^)c.sc?y7i<.j׋B89Y\qֺjk ]aym#>N\F"v}'4) ~.%4pJpf8#@}lls&&|'cZڸdke'']uZKh>pO?9?X_LkjaXa¶be}&6ؖr{3_ZV)\s67sёH7_8,ql](؇H&FI$tBeڹ>U{s2^Bnbs*fLV6@ˎU3_4lBetbg{X;vް4Zjɸ .[gUCұ{N𖥈n=_Ú޹>j|^rfb]-+4u,1߭N0q￧xm!qZg5Ы2M׿j @X<Fec LgsvEhbma.o CFDZݛŘ\VhYRa%/^BgCĘ8K˱ t-T:kVq+gq[+/O/ #hmF\BW)Db,.~,^Xvzl0>߷ЍWc}:$Of96UVn'ՁI8fkr{y)rD"R?z >jx?ߘBy^JR\*­իpRycsҜ$flMLb8䱼!Xa&ʁեLUP-?aI?8ҦMsߥv*5AbuҦ݆$^+L'aNK|ъ&1M:%2]?_ 4Rr#ZHKV+A|bbp{IߌE>7bvT,ydŤ]r7buitT.1u!^̭ džLq;WdlkLbspF3i~|<;kwSKez ;<61#ʧQIK]233|1"tbp"b)`г+ IDAT09y+JѠ{-+CEcQ1:.s^%l=WL aDrǪjٯ,v'hb\VԶ'CB>xH,3-^Т/l4nmsCݫ8 !DRL $NT58ٙxN~G2",sbI3 *xΖ܃\$7(y μn 4z!G8+Ě׸l[ƓӶB$+brV+-d.Fy7Kako| O1;-'zӼdyWf"1v\'9?B917?8Ϙ4i]tyNZ#D 32ɘ醦ڏ<؅Uב!2O|!^gc챻AԜ|-fm#Cct1p_x:ngz>W}b s.V鿛s_Z>zgF_g/?N ~.y=-MYصa.'9 _ ldWyZ |a|2@Y,:dJi;xɟs'@ΫY 7]_7cٹ\ND屖Qx+d#LjrX}a U VX;n?ES(uDϩ%zar]OnOMs<?io}莾 1I.1&09)ϧ.I}J^+?d< &!&y^-jBrZnbj{{y-a0ݘ8uWuuJ-.wZr1 g HU_{Ah4jGu}\HXccl](-E*Ίsd%uRʔyjA#uz].Ns XscMم>\dua9gϐ 8h^wJ})Ozjw_,O*싶3~J ޔ+p8W*wXq-λ8k;XUQ-Cr/.Aw]ϕBh{ٟK29'G??nT5V ?_ԍ/y_zלu,wr[qG='~ $+6o_A|`5FRfik Y [&lFVζxZتZa(d.Fײոɒ8Զ2Tg G>䡝"PedbH+asl )OBrf:vd܌mƉkǔ hcCٓ-S. >I9s,W,֏1!dgvɹYDZ@t0?sz|>E=|I|]}|g-S~ʙJ|J_UA;,.iqx.\*²]}ڿ{u^?fe=ͤZ޾d,"یMفLnő\}X,r»qu&ogc xȩ+;;Xς=4?ju}4Vm>On{>m.wCPJҬ?P4>8_?E];_Rq,lɻ\᫢Vf~^z/䓘,PuMed q8nki!}ԣ椟Jj4LϏb0(rky9?x7[gc[rq^"3i]ϞW"@0 3}"?t`[E+bpQVZ͖MVYJsR' c} |_k6U_VЗ^|F~[' + 0sM4#VXG[O"vY~]['r}}L)H9*t|&&UO,%I`ŨLsС4ai4D_:3Y|1O8 :/aβO1+҆AU\т/?XN9_?O`7ؘ}z>ڽBrі\iqEa* 0 )w %O ^2|'ӘeLY\;/7.x^h;h OO8u6MΛx7 ߩECۅ}laZe&>11&Xvq}P٤燺vzq Yⷖ+'1֊zN~/ቸ,7Lcgi3J+갊$qt$ԗEnxvOOgEW"8v(2|Ԑ!p1w"v_!lfE&~wE?Pu.;U~8u(̈xg"ؑ< V–O鏟ガb̀-R6[!<ȳ#M:lbn&}Rlևusn_D؎dp3LRI?aFy^݇߉$ Y q _$lL;0k^#/EٖK26OZ2zl+ccŸy峒\+vWrYAj:'~ļjq@ dqbq҇g;syO 'ft$c"fo*] :.>%϶v*> (u& x "nbuYҭ"p' ;VfnSmx쇴xW,Hɹ,Nj~f+,ՠG?B}Q (/5LWT1)<{sqs%bFzHB)MuS1A덳sT׌J<|+^nOB͖Lg?enU\IWJ`?m {n;<טXVĜ|;zEy/?_fz%Z@#+^_4/{n,/ğ&Zt%sv Ɨ&& ;h3qWWG߳Ǥ|!e }lO埆쳉tڑ[ȿz3KOciرi-ow|W0Z.ΉBS\W0r,D8/]ji6^dOV"N 6QZU?'u<%=nG{?-﬍c x6ujm`ɹ_I R@܏xS+h+caefB!bvEknqRɢ8i9i'?{_/u>%sG_B t'wN&[⫰%0:)zI(% /G1[=/O({~rݰ}jyp4Yi[[>M54d>Crc frL[-[NmNߕĦmwn&&70Juw±7Ys*~v-&uöV.=s]|}񳲹~l vPS?"~RvZlstS f{-AYku|!}S(:L[{m|nV]> ?&QBy̽=ـoc5(lC |qŊ^}~Sk)zՍg{n_e4nDs]W0ws11)KW25D#n|uV=]ܗ4E2f$815v6}?R쎬 |)K ْC%j`îhGqWϿ[B Gȹs\ũΊ"左t~B{ :h'q7mg =o޾n"Hs_L|saEʲK'k&m++bY.2[:|sC]/ÿ|wO0}~MXoh:ܒQDvAgxgOZ^0z7HW,C{X $5umG,,dz |BWrBgoҦV+sX,ml``(9} =5mmD3GP=ŖAHnFUj_O:2f1zBgF -Ǩ#/`RLVo]Ź u^o2Ml1뭩Y\8ly=jcn _.9 X('&+z2GQP1^z0 I-\W8lc$N2u|[p ¿=$ƭ,_l :_?D"zs1 [onRGTG27֞~Fr;moo ]qLp$870/b:hy)삽wva`oNg߯G(w3*Fh:铟 ~|Z>>{wǙu{xa[6T5{-}[UlQlO.˦ob݉zw}o5sMNfwjC_]aZto s6x5^l枭/؜cd9/Mk֞v@5]9S(PM% _]ۊ??\)\^նߴZZ+7gJc^V5x3a5 9K\Sqd@m>b0{V%^&n7Y$W\qP!EIֲc1/r-f@M\g&Нi!aeaU3ݵNyxyVLj3Xe>hI/-A]ڞ~O$&?:/1ªܰ8~,LsxV,okQG4OiL>m4~X`&$9Tn 9~y}X#$LZ;`)Xs28j+3,Lx@s}#n`j:!3YmM;]oX`%#ڱKw^<C)ӱ3;!:Z8ƺ~>d0q\ :|iӲiɾѢ8ʱ=9 (6m>! Wӑ_Kg[F^ |ermxʟrc|m)n0$s_pG_mNj7y]?"K 7- Ev΋^L F uS4#`2){'x~sPn軄+!td{n)x阁UWt25^[ɈVh0M`wr5:hG7-UF峲 Y; إc4~@v}7qN&g/Ѡ٠І8,I sN0BfW_fM=rI@E 3?ZŘB+rw K=2?S LZcpr(P#K2w &|ӓ>߭|N8 ;sWS]tJC7ꬠ稷 f>:6ku~%]7+w؝4x V'x_ʦyd[ q;ol%1nV,O>iUqi3%S1pN!V(lmWܿ*St?=e}܎3{c~8ktv+EBN{+li?HV=흨euEʏl=4|_ U!،PE<вϿ!H&bj2-R{0N.\KW {3(8mpw0ί}ŏ0X_/g\Dw=3}3x]_չ;> ?pIX\G7. +jIf8)r{%%qbVӅ킲5+"yOƨ?薨}]j#P| Pne+ )R?y:Bpbjn.j>ƦT8m3cX8]WB.$Aqe6!%8MpLmُ@6!b !cc/4y掋y4C-W l:`ҡ)~ol]f]`W,W/]XT:7?G9[ܚ:~+?,ONGeO]Q垭2YdDA dd,`9*v->sGk&_ya»Ʃ,Fwh7v,]DEI,b޴#hGuNF8?D` G(.#|Ր%$EDyQwCKǪtaxG26߮N+u\y V0QcQK~j^]>_aS2yw"^UF f[x֜oniXE>~(k@;_} z2U6BKq2H֓1ö&zmAٶ9jYxM~1v=Vڇ}YS/LOc>ph ͜]U+nmРL@iӆvA:;D%3,OCwBOyCWl /?SO; ̕L6}-2Ju(nܱ0\oBp7MCΚAtxЭ6]s~kj ?_/3n,tM/(Ҹ@?qO?_y>pWho_m=H$WR )(a'Gx MJ劦e큕lz{]v|fL w!]5fK2 ܖPN +>-2EP+b 6Z|p`|Yk,peȌ]ݰ%4Iba%A۵۠sw3 = @C/ϳ'SO2>Pq `F=Y0[c\Y|f[qBwZŋ++ ';4hP."g8YvԹY;!.fJ=7Jrw~wKۑ?$GxIcMWWֶ5y(Kdtqz7-ԦUĻvG1{0]?Hcmݯ~Ms/ia<)q aa? 1)ldɻ<}u5zc9OeFX?Dަ,7Εռ^/&;&4nk[D?PGe[ {~PN/ys_0Lu/$ ȳ|,9__BC^B;/|ipx a~<\[E;q$?ׯPЋ~0DZSqdד_ U OeG+~; y((\sJhTKn(fQ>7|i.NK8A[oC* 7UgZ:i{~E|{xU':ՊEtv/Gfvܦ?OVVAZc5ID<8&QQ3~O" {< 6cQV}&4t_/bΎ_V *A|Gv,"d3R3&z^ҳeIJX%4e>.%5tvb*~skga`.$&qC kÖY/ ]?|+0/{-Ir)%$8s?lnI[DJ|;"nx:L 1F' 4+mrI!5qo*p0.rǵ3="N8, 8/V܅<Ĝ1d }L%XwL o4_{z|M/>^1\AB>rYZd3h7)}=n3H3bruk!74^\ې˞5O1}Y@L^NQ{f_?G^VV}ԧkMNϙDn1Mo;`-7qFgm9 !=f\ی|;L$O;Ynm|-w6cWRN_3aMG?Okx#McucaA/En5AOr[d___߇/ B{6*wK\[v#V[F&%'ض0$MzŘշ\2.l`>PLX@4x>/d_bm# ;*>d-sg lvs;+/^y/XaD} [H[oBI}mq/806,- ӂ(OD/d[Z-{4,ͧVg\~ obkdg @y؛?o/M ϸƁ5{yfLm[*O,u' m͢dPݎ\azcw~fwv w:<s@jl_nUE{Q< ͐f4P}Om@Lm8wwhwlڑjo5fu -dq({xÄ.z8q|{mK,{[77q &wcB);}w v,RKwqW Ƴ8B1wYs˦9i9h@kW/gQ۰7Gi|io??l\s!x˓mn -h//dWr{m0/&yb1П/\@^ }sҞ!yľy_Z7 \/&+oLbS|Ogүg(&;xޤЧ)uS}ѽ JJF8q^1-q=n9w396[,.}N!ųl$wߒĐn =rx χ_^LۺPtvagRcaF_ OcTR{KrłB0̚^Uo7pgs˸hVeT~aDQxR`8`u, gGE'ae{G0S~]įc@b4 }}׵C$YdU>[AX6o~`wv}j<.G\v|lLF]}(pRYc&e)#ڌ]'ЄY )|v!%g?ܖdĴj5`m8kh$vb/7Yq$פp;R(XBVx BQMsN`B *0:x#4rIx!m]C$mh'R*ŽkQ*ëIPd_y. ;}ᔽ΢Mך>oNb\S>ngFB2ܝnCn{ B^&K$SyxkV]%Oß]]^~v'>砿yWb.ůySΞNWm[rcwlB ,gZb/<6H4INF!1žp/kUD5b5?]KaU_;$=З>[V UͲY0L`,{Qh^&6 :OĈv▻F:ؐbe(:Cǒc"Fĵm&gpP+|kpZe`ZĢ3t\ nhpe+ĈEuz!+<["nQ^?|<ͿrF/8>#2+ _tڼ|ʞ\6aNI'S38=d-λ*\J/L\bSbB+Wf'b2..]gPbpE7<naP V[>dKb\i#g1L(nBV]~f>Θ&ү+q(~<l.v29pU,yfwco!ž3wd?{MZ/s雍eo:{Ɲps㽠ڔ'sjoɹ훎BCgs [=uٳu$} ^^@uߟ& 鲸k&|~(+h[9 !eWyKkr\ ):_$+/X˘YYz5儁lcA9wdq1 zYW2M9xx0CN`fBIb[S_Tm1+ 75 >xkQn#9w} P\v|޻wc'8I\|j;Aoh28ee|Ž[1sWߞ̕{UvSt+ Gjhq|2/ ?_ b1>5g/pֶkxx;0=ގ;yR_{䯮6Nd|[y6-t =϶?4\.^h**CY{ow[h =]ֽeåz#:z[3׶c|m{\ǿjpC1_x}{i7U:c@qݖb=w>G߻䈾&Ajhw~o,Bc(7#Y>%sWٱiޯaWVA+vxqb-X^[kGZ"1no m^a@C W~l;gE 0| B ܋5 84.g0b 0}ZP'?l34|^^,:&[.A_蘭-|GRdE p&6Mej OaNYt A*/܉\xelhvft/+lڐ7ϓSʔ-$d}ѳmU.h4&W[Bw?\FS,V-m}4 [|\{OT9e45 +ݏi籟k)]Y-nιg>ϏJv<]Dݐfߑ+~Zm*HlbVOi쇯{|<$B9;{YzU bO#/^s},5>BWY 6δ:k]O@|a%c&^˳Ga;{ ϐ-y\6kMB3=SXdWiE&3/(sL` sO&D}̇VcUÁCYgq\4q.u_-px}Y}lm:}0O] *Gw,oQlh:<.m|տ(pJ>C+ING%Nx\:\„~~zjOLuV7ζG~Is?c`u?,Õ{}S 3VK5ZH}8Ew=|տ2lzVm;-0d6c^=taT߭s ,m(oBF>umI :c9mEchcpe{3׽"(R%c~/nW!yqa>='ȰlKOA⟀z>m}: 3b xؼPME#?.xQ>OdB ~e휏q/7$[>Et"ҀU^>_?1T>4~:= +Ur^H6N?ΣL')Ԣ#'3} (0P=ϼ?(PFy6bYGhz* /~%0>u|񷧉1~G݄yo\Κ$Kg5 0Ld\3?jSH|6/;`8/XBUԥh'b OpLsTB xO7;Ap潎v>[ƀ#sƀٙ-w}6%AgmKۀFpsWd/R ˜qb)69HQRkgZsЋM?"ILΣC7O_Xp8}yz)/v ⽾/s-Wt}D|P|IsJ7u|dX8Rۑ#=X)]ݼ-]g劥Biei{EV៷FIg#3?^2Hܵr}^R>L %c'jAd;C3ضƵ8?S\]j =VN}1uf"EbqW"&Y]5'{~wjkGnUGr˟]x=Ӄ]39f0}u tWqtio<bxs9fae 8/ [WϾ]V-Q(_'Je=v q Ouض+ȃI/?#蓓l|9,_ҊܗwIoN*~ouM,Msj>]i11aEXV3doTdcLf j;1_/o6t±Ė}ܑ9q@vӳz +(pIOZwB Ny(pɀ#'ڗw}a;K'pfc<~)qdr-ǷbEl3ũ6?s`WLYc޶WF}@eXo{W "}Ok髽F/wnM~skg]rX2|΍gv2|~0zi:G݋Isa_N>ry[IG~gcvSCb|ĖɭVbÁ@\"y~/fP}EHfk|^KDI j4X/,8ľПl5*zGcbIoՄn  ϡ}:A >k,ϡlwMhk5n`"$ђ3OJzpzz^$N0*zۅf.ٕà0|Ɵ@*`+:./5lxZ%8Aխ`:;Fq?;&\)]:Z#.KV? lG3gcz|<\iwO%XXmGd3ǯɺ壷ZmMgǿ}U<׹r.nweͲ< ,.C{:v^C~^tp]s B>] <|!b-K dfڹ _0B ` _l o'/${u$T3u3j3ΉCRdkD_46y^ :qa-/⿵%4}ʶ566}0GJZM6h -Z\b2nzCu,,gvyxng:ɞ6w+ޣg~d+z%3S+&L  չY=P,<\+sqC3 z)VN%GLlԭ(Jb1×ex ζM?/.:eEUnm'x#0xnm.Tŭs8ַ%E*|fth|קoc)dg!d~pUG3N""פ yMݳ}wOn%i tW}]_/%t~̩CwE|n 殛c42tgWl({rvNsFp][ߋmls{|Ɍ2{+k%,5Fl7wh"6#_l#g; 5x't_6jL^(eyn||\^LFC0O˹3XxĝE,五p`aRvn}O17fu„MpJlk'ςٱ]cIjua֖TW퉫N_RPʹy01 P3}sz/-يe|Ta29}u:Qg)k}^4x6|a[LB"#a̛s׳|ۣc[`Hȿ• yLŠ/̰zU L\wn:)8Y ̄~X_Uxnb3IrJR } -IhAM0S,anPvhh%āT:wPOLݲ$Dյ_ٻkGwUGhjRj1d8\$ݮ3j|c+zcOf_?B|)ݱ>v$dOIŞUoۖ&=W8i|֪sN]EȮnyX%\mݗp}19]GNa|.Z3qVCuEb2;>>Ko1D1vUwAa~ukQI^Bэ󡷴rlUvLq!t峫wz:;m3AtU#.ݹKݍ!EBwZ7턽{h$mT/XTl₝Ĭ/gjQXIwWa*M )U]ɬydp*(L"~PwGUR><ZF?4tmzHE1w xgX ۧ2JR~xne=ޕbM5|O-ՙhsɒ^݈Cq#MyWO嶎9Ww˝.N]&yҴ+D0ycm][_ 9 :K lnF>#TlZd [ :;HDpɬc+Ymٸ+~ƥe]_^fLe/RW%Loα(LTU 8D؄yt#򪤧Qҳ㛥_Q ea,&WrxS S6 8i8߸6bLo!Oa)U?e , 3Y?95;S۵9gy+vz<tCyMӢZZ Nkp,t5%ƊX ]Stb׵k*mV/ &mUa-vl*Qօo1), GGEa}~i>*xTUl0ɓli1SבO$wθ^FuxEG9bnVm<ʟ0qd|~ ȑ2X;~]"__;yee:姦*xk%ϽOjr$.o-+W%{;c CKH?nˇGP֨w hv PlB.a%xLjHpk@_wV"^> >Q:ąFWG8* `A76:-?ՐE>f]ó fum(3I!sPќz0ewH>'H u) CVViC9ڐ,JUqbeCw#e*=L>ӗG]u!:ǖGm{ e%ٴ|Sn; .wZ>lcx痕n{I;wӳbNe.Be  0Jw|U^[Wt`~X8ebpL:IzGmTq_ V/*>ЕcjLzg}uZ;4&k؂$Ldz uJ9Xhb# ?X|jio7/71ň[I@-<3Hݮ͉]&0W(ŏ]|3<ڿ_W҉IW|lϡv6R;y#įv%[{=nrpff#~qUI+G֏.9IvG?gwߋky=]99^sQ3ĥP4ITI]btZO;yxtŏ:ަ'a'r2 iO#g Zф,$rX?x]$gÎi@[:yjԢp=VA_T<8]_qۄc71jGrTξc==3۰Sٕ@#˹`e>C'.ycp*WOʛa-ilm8zc)bOE2y^.[WՙLpwvמIos8 6Xha%!MN4 x0@䩆*m2%~u[zwq<ݷHJ;/?Zˬ[M:q L (|nx'Idy/cmI] 75~; Fe? gz}/vE! tcpW]Ll,~HطjC22Z3"$9&u#f=rre#i*d=oU$)#J[gFXr]z,֐7 Id= H!d^H۝2A8İ[&|+$;a Z:xbZ] BmcfmluhKM־X4S*ҶEzQNycxqZ"'rgsm:RfarV~KolsL\"d|dϬ*Z'uz.'x* d:-u7ݲ{?qgR< IDATdˎ:LpeJ>,͛\QǝWvT=<ZW\On`a7,/γ '4HN+DcWk`߇`V~"%%+cLoeb7LR>cQrx)$_M9zJ-]?]hT!_+H^MMohLx^+IJG\k961EfKLVcc[ H7'l15c#Ō~*6Mn.]ǿ;!K[4;ԙ46>2 3`㹞U,,A"ЙΦ O Z`v^+VG>=2[3`sS?E64upI`S%pX$\b*ch%najj[iYvѺfG_~M`Py4t޷.R&hY-DџO2brCZMT14ضOuW/`|&_3?DܶD ]=ZYLeD؜-ڗa!>.<{r5/g;evҽlΝBNS1CJB'7QE0k2LndJ~RnϹ]b:5i&BCS~II856._X{TѶN'YQG֍u,5~ڄ*:lY;*u;x ~`/܉'L=KҎճ̔g`w-/,ۢ}"0, xt`e蔉lF4<^V]>?_ȒYl,elY~Zo& `u滘-2n8ff; hk̕| Q_ ~!jJt6icôUu^c׋pIV6&Ϗ4.)Q=k@]GsēČmLr,> w~4E"]<##?AG}6>1g봏Y>9Ic?u!J$|#(GlW>O+ #e_s{ g\rR,|෫~^WucJTij(\AX-:4 ,xٲږ6kv;ؾ]7drIl\~On̛-K0aןk낗|'Bﬣߑ~pmL7>W`%e%eΚqWr.w/Dlr߷ko+VS佲Њ&0??IXUXk|p\?3jUwm}_]{\t_ všPv,oڊyFzY9KX",3^)o [= (] 1wٿYZп|с\%)K]'f-zPv):I|zH\՞boJ~WŦvHkz޾(hvԸ?!Uۊ&o GdX&A>c}Cc:༟)`|b2`0[]Ȏ1Y_-oظ{{W '&sbn9(h ]nG bޕя7En2!h&vvS ݼ]e X:,~ցI`5 yɳc]Ya4)hܑ&vyT{n{KHWZ cp U{?]*>m5 aXy]K&&BC=jyꃵOvx]$6+^A7UFarz}f :<$v/ؽG<%%?ANa8cC)|ۂ sscNY2v?k#W^|k^V~gYo?r~2q^%_=u7ݕطl~fxM+oe`BĻǂ5@zq ]WCooWWlR',JJ5?bMƚWS ᝲ3ؽU3z> dl3ӛ&h=R`{Lx ͧ#Pwt3htأ48 Kx}G*Q~=H<߲t`,]mēgsNcbOϼ/9o(y.%x'6KwV̕'z,-Q h9&^T1jބv?DsxQCE;1XcڑHѾiԿ~a4uʇ_}鳩],wL6]H˭:Srx]Zi sJ&#ዱ^/bi`<{o+u5a[+Q|=-\ ]=>_s=+w5O|O^wۡ-mΗvl0_(voyyvܓ~r+f-Gk 叺3f.K l|"׷WvfD}~ E:J>Iu>7ck&w/pޱβ +Y0 J^Fnp YBQǯ )xrXׯ^q46oOsUSwfv}i'9">$橣]S7ى+U#iłmvp;y9^SO3ЂmTW):6].b˵13# 6da3~O.n+0M㤾v_VB'  l"SUY|F9 %,Fݑ;&d\{w3y-~-ҷwsk%XB2pVfXQ: _,}~^bzLN:l5X_ s}($xo UG~#&zsVFަ\ س}OO$7䎩t08oߴ)A=e'h㕿Xc>ѽhfz)>%}gr>ۏS/ νw%')buSx 9iY~l;ZvoZ 9|汀PɷSz(Kd&'Ev)JyTBoX#XUTAkkj37/5&&X,Wls# ,Rc~ng'!ΰ_ 1Lc>v'ALוzUo1O'jv]Z8j:Mt+lS |K`;޿?Na;ugzc$qByoޅ! $vDB$z쿁zj(t(:)Е?j3gu^I/aG r& vbWfA#ꅊ.}8P .ڳNJ~kRiTnmN,00?2;{%6fqn8![b!F*SoCLd(( ^F'aDbC $ ,M}{X(5ᵟ%McL0x^D/N+1_TFkpCx2+^;lߩ,oh ^dIR4X^}|h5ocld b bæJ'26: $&_~؟Cmgy@ccm7~yq'$q>QɐW^KyPXOp\ ㎳bGU\$lq֭+JE?~;<oyC"%[zagB^gћy.ӟN1ȩ?%Oy퐚 +HK3>vXɿ#SFcNWkoc͟[_/?:Rzch+u'I" D ;]u,ěܹJUN&\hߥ._5,Dܪn/(WbBx7bqx<^YL GAdMkeJ檋:;@zPVxVؼ=#:Vw [>mt ~o30OJ* 0U;ܿz XFpՔi P8r3+utj2o;wq9 '+9l_"KVKʗ 37. {K΅R";8'Sqp,![[<˷m>֪ѠeVƋcK-i:]\*{>r2 tA(J`A{t{e7oV]ǂOzC:Ă[}Ȼ1(?cʔؤlS<'*G1_NO󻣪E5^DZYZ&Cb†^9?L鐩|c1O:PРd⑹=ݷf.yԂ Bfwrʦfy5}v'/M0N]zncS65h b$MOe#ǵ.=m߼SQCΕQkyv`Q环ƙИq|Nj:Q 1S/{bV/w.咧'7[4]2[8KoJocC.nwa%Ǫ3vlr㗋ٱ}[>|2O}C-YrpJo/Ozv|l>|=Rly¦,E'1E6}.' La`F0.mzM`3s[v봸R”/Ͷӿ 5BX N y2)vJy*;fwM ƞn`9v.~Pxv7k #G,CV_9 K|5Vtñ;JðlFSgV4e62m)g>`s\ѱlj7s3ٮb*aix`Vqǧ9앲&xp53ʐI5OSrKI-m}ҝykYH4ϋ'ؘoY*%OlQ%ktbXyc~2|jc .UB SOTM)̀G9IyL06ﶭ[wJ5@J{ŽhO`Z\7Tf>[0<3/̝:JLo=$H,nO`#k}5K&z ݲFF[}9sQ$X: yڇ1tvDu`k[?(6XО:Aǖ|6u5q 6[~v*U G$ǂ㇛(B!WYtՠx SB<&4m-dzIL/Lꚁe?Oԉ@qb1?hMVzI:)ߌv6tr^sݛxS8K(.GlFG5g'~QlM1X=@#~O&2';CG}}Jx[}BvdoJSʂIh`isEC~F'.E]u|^GDв32_&̑L >"w|2gȳw2iV#esbo.НQ>]p+)6᜽O ܐqVA鋉t)a ;Ʃ1Jg naKCucFl[8gn;GN~c4;o=~gߞ۞㹩Do&r9fow^0<|~I\Peߩ{YLۍϋX#Y̹L/a/&]8h3r3ޔyEk%`Qd";~&@L*e5rL: LgxtC.:8wv+K~FMr>nl4:-Y"X~#09Yb LuAȝ#5|BhѻSCEǕVciNdݟR t\[ z'[Do^c>["kd9 >9d"&MyǧwKf5م r0v] yҡ5Ϸ >*66>= Yc]CZSgfO.|-\CXԨBiG=@U mt+D=12JA|r|22?닺glLa7hxa4sSOdcS_LxHtlgT^aaѧMщڹc+t zc O1n%p;%n6Ɠo;%߰_XoљtqLٙw;/zvҹQAqd\nO~ٿICQv&vh`w P}ug+XMm+Daj(&!Txpc[S[wV<78bJxl22n=9<$uPb Z#K2A[ ߈N_ͨ{Ȗ>mU@# O+ʧN^a~D2K =G :Ʒ*v!1eEšb1QHinjS쿞k߰}b/{R{d 1 IDATl%RSș*_kqp\ֳR=~:ߜm6'=a:*vp>l8{I\elHۮV }7jhw߱؟.gfwŪR]}KegΉV3b{z36Ptתԥ;BV_HJXgrˉgS\kuoAMܻvQ˹̒Y~Fwæ{Rǧc-_cܲ怜Qzfg'3Ǵ(ޟ/=2F|X2'8lt?\lo{qzY2^o~CZ)*;\I;Y\ cT90K]n`QƑMCbdkGmaڳA;Gg#!+6l&%hLd$e iHCfE @l.*3]q!ޮbx7;XQjl$%"G(Ε$˔f|A<:o6XIg}%~K^F ~Kp]ёmNah"7#Ge6Mhzhb/UϽ?h8C$ (>/ <4,@eĀ^ji5LB^H;tx5m:3+vvrY+&zLT i5[b&euwp\vu%Bxq1t l|bT@sF\^T_c4ؚxv0lhid"&  ͆m?v G_F2 X` _;XvQf c-M8#o]Y71!Ԟcd( \Q|:7;/ZY+9-|aoY\5taәr?Y"( \nCq [K~oCO%BC>nN2>j7pH&Uq3txw,ia &׎3A̭lxHੂP5 > j'ԅ}";/Yb8-#ZDv1o&} abd:mbԬGU|`x@"$&Hк;<ZIy$B~qMͽį]t2ZAj{r{Z- X=#!l!ӺxKbz5;maE^+ iv$ʱtk;E7Z:RMC>9~\ׇ6zK:X2ª..%*? 6 ёM{NG..B{n&deȶ#I;k(CH cGEΎZgTW%gɛ~da ؔ>B$eǭ["9榎O7:{E;\Bn`c$c wJbm zg?:m|Im!vi6YMqW6į! Y!k}TJSxgvxiNq@kc?Z$Ui(lj&v IwXBl/'-ZluD{Kž-y k)񚁻c>ĪV Z^@Y-9Frm1#TQIȣ2OR! 좍kCȒqڙ@mjugEt{yK `a'= cThL8q?ԹᲹV~u%FmC@)Otقۺ2z#/^o˻ͮoؑkp1m*Wƈ\s{{9XkIݶVc l!3ێrm7/SS~ΑߤvU1Lz!6>>`s~f<}>dǺJqڮ2u)lR'ݬA/(p 7 51+O}؞T5nC:jGWЩ%s:5rb)GvhM:\,PՄU<]2R.p{s _uؒSR•/SСQBOv|L|+9QӺS}A [xv>S㛭&lmgy/T/Y+ǬXa.*;m vݤ}@?tw ;K!~+$Ѿڹ˒,x ?F^>wmih(W'k8+8:p Y=j5:e}kyb(k O_n?lB86ͳ㿨(] 0e["BX}d=qC-4NozVy½+6ؑ}꿲,L|?~2'W;)7Y5ḞS˞sotn"g ޵ByϿZV;&>'Z W ?cX1 i}' W ecKD65ngSn)C ڷa:Fَ&0ȎG .WN PŋW"O)%̷G~pKBIA *y&yLE~t>~;A53kBdڔ%饏]yOpZսebTcbv @WM%u76]̷%L'_L*۶$NאWYߓ5lܑxV.JSC:ss^Y"(1땞uzL"]#F&b&w XGNKEgAh $Yp OP_@;&u~Sߪkxm*jl3dIފxzȝsh)} ^K>F8㨰N@bM}}c[ vCKxqm6D0.U}; Bxk!_bA_L96%hĴ u.yWIw쬥I1n2 J۝,z5,P-ٱ(d#Mܕ+:r䠕WL&I>I'~s(hmZ&_N"jsp1:BW'yg N>H *˝N1X]fB#13K41A^A8Ay7noVp0h=LN,c!Ԙl9/4r60oY)xZ]ÂG5'_Oˇ!`j Xww!ݪ͊Vi76^H&]9V?.YXs~4OlH@ R_rؒ;y[޿[e~O~S7t=VY[+낌8)"?yǗ]h$tELw ջg>}gP_ 02Wm -^@g4{ҢF~z^2`ݹLS _ֿlw! d \L.|N `,\F[z &QVptpdr52P>`uvzך`F &g#IzKf=-8 IZ 3pXȝ֨J_y3^gzl}$/c喱5)*!1`"X:ƄagyZQ'ˎ_߷u=dzzg~S`c`lZ/>%rHa)ҧy֔ob.gcӥ1Ƹ&b&wEc McS|Rߺ6 MWX;vM-?;f2[Vlw臵K:Jq벞ӖwҋqZs):(a!O8iPD>xoJnz,O0wL2H$2\cOM,+( 8*#E[ Fs#i8^ަm~he%0 Ovr7^#6FM(zls],Y~:&ߍt6ywuVW󛬔|/g#qFqTu-c4# !՛T+Ni?F|a`um$r覱 Hf}ݬ a.y?+!Nr>ZŢC>1>~=M]ПU96n3ޮ k5vb~G[WV:4 1ci"6,w"ݲ֑;%ı no,EtG[2xR /cLMZw_cۮA\V֘瘇]y~}){(<ckg}t|gk-?(t֬Ʊcnۨ<@Ta6u2|k̮xm/ުIq4`kǹCٵ[ Rl]>PTm+:אJ ~lFc H8iB[Yz/RIH' Cݵ0k v* LRtLfC5v-'␲=تu6_f9Yow`(llr5fYc{bhʲ$wbc# 4~Jteeq&:8Yiճb)pV <YT۾x ScŞ=Xoḥ! %j^cηqvO>3=彆͛ӧ#=䱵+'5x7l|6N( kNjCv32n8(_."6 :넡vlޚ#&䱒8S8O۬Pkl7#G@4ߏA޽9,Z'tO;ЏwJ'^Շ~,2eB T᏿64fÿCv~@{dNSl"+ܴƩ͕oƒ0qD+iR!jnWdqc?fSvݠ:)/ܖH?r3<%b49 \.M e|e8`BZ9f'g!_cia,JwJ(tΏv:(qBl9󏽗n/ >Bڨvm^82(w7x32s΃ ִ?5<+lx4е׷ F(&]nPvׂYɱ ~nvٳ4a9#1ꁻ6.眾w|2oGj>'#O_wb5Od5z/8W(T1y2"ee }A.ypd?mܗş-񖌭ص68yR] :̷S8sƸ~].˝mGN6uw~d̅U_ G;k wj(Lke1:aTcaPf+ ,5:m'/^"à@UwO':ŋ<YyI`@,j?>rܷA^>iKlgoPχ;&CJ$I`+}h{6|8Ӹ܄^# Iy գb):ǵi]\T[GH<#ԃBI̐?q}UYk9>| ^qs=^lbxRXdw y B{W,.w B4D=k*fWcʓ Kp'Ug~=< Ti(doɐx\n1U$ԑ%?/[}ru{yR,-N)_s"ӟٙ:rA}@MOd0ڧn,Yz#xEgKri^f.csO礑1kCUԖGDcu^ ]<EoTEL;ZeĘs?lnƳE"H&>8bR-ӵ;p\p?kftul(&;_迤4l3|H؋~vƮ6 IDATheZV=1㲒awJ~alnX:A11z:g Ѹ(Wۄ|0mw^x;!-A:a5Ih;c&xL8 f'mXsv31n:vGzÌ~'1vY|} ?y,ނF|݋1)o?qmT`ǜb{\>i]PPQq M9@0Hd`|x_2 ?I }F :X\L.gn[$pS~\Kt'qddV4?'H:HJǀ "b*_0 SϏfH_uNWﯗr|7Dvܔ$8|Yōʓyrc{weC92|l[8fwsױZ6ˮ_.tEï?X3>)d=Gķc 6K1& /殩uٗ˿ # J"Xx\};0H }Db;Z#gZڒHROK]T~5yY4lWMh0TxV_92TW' 6"oDAKlFK=Ύ8F{xe4RN^lcرY-g$Mcf+ƪhKEkdz{Dv4_D^ -\o3ߕiKSCkk̑>3ȇ:qw>/񌼈Yo$!A}f1xy.M4 - xC! +?VG>Wpǧ H@j)vp]wKxdrtΰL3+&zR&F\aX9בrEtb&"l}c++ouNE o|Ƕ5dg⿀ewM/;c[rn,-\8M?ukӦrޗ>o/9Ƥ>&\$,rחoC#>J7Íս[8 "0g%ݱA62J"Yo_2a26E*>7e!Tk6v"̹A`A"z2xg$+խw2k0RTs?Uİ2#mrU#*Y[Y?x1ˀY韻_m]IPʏ ;h^hc?Ykmvy~aJ ?bnqw1bt:1mql_GxD]#F+GރdN3Y&-=P+6I1xoySk$.dEjqp=Ӊ[Sm87 OVxؒ|ΖNjćZa4^#1x]kCvv}%;(J_c"ҷ:ڮ>Y+qTISLV2_?T 73|;i=-= LtZC ôɓӓc庲S&s?C7b:-K#~~UrYρ}#9B(0ڟaZ~f.M<ԧeS|g-ynI'I^yCoJ|X]/^Hz'1*tϾlAz"ZfW)>Pv6KS &ܰA&OPF9EgT+Sϔӆ,N7/~]Uݝ@D;1Noz|PHx_׽}c#K"N̚'vVe'DZ-qE^Lz-b\=~19xWڋގ`&\ǐ A;6ClX3ŌQƶanDSH2ċmk]d|60v 2On3zCKws=.cD6PUꙆ_3/ݹ+d&-0qCIE$%NhކNcL.)-bJ<¶^&˱ݳITi?I4ӥʼn47[Y2|Gq$Qnحю $$WДA洮n踆Z&_*8ߍc3m]u_RD6>MDMr;jJ۪},9I`6/kWǙ(c&ێ wzSg+c+z9&'&'C85Mn]3Vo]9Xy*qXo}w6 d{ndktEHP&Zm68 *>HU ]n]-6՝.q,o&mٗagt·+&(|[]lrv.)2י?vRHp2+28I=V PAn].3K4\CIpqи}g  FݳP,W_#;:XKik\3qUjv v,*m "׏y7(h-@AN=ie_)]Uv2S}s]d`=.N3_qvzٝiYbƜ%("|O[tQNӭ=Offmvm0\HظXjlے.veOKUq(cAcʎZgB>XZs} w>} Ve <7vky~Rnm6&_ә^w7㇯jNߣ_Ѹӷiz:&<{{Hw-Ee[ n ֵٲKMevi9yij{#g~l>8JLo^l%PV\k%\S0GIzw&OKHb*ZixZ.&>7͝|ń]E۹SXZ~V,/%EG!2uNv` u"vPf@VGFF`{Wwg<K$Wtt#sDi=D4IJ#+۝O3k<8=/Y[ x9=E}920]^6.b;4/X{?hn'CV~}sGWJA-, 7k|3nl.a1gOJ]s0;s <==’R`_|-@fl~IVBeS.bzNDhF;n".XX5 ō3c543H_1Ί2]L}MgefFu1d:\Ix8!SnIhc0=_m qn{G,5nk}ܷG7elӻ폊ǕX6eܯ~sK7tG==l;œy/~ ,\R")|9Sn=O<LwM\\)̎ui+@,*?HM9 έ8Q&h@/RdnE'4@'IN [̇4|gx1~}t7&,3":m^jd6\_&m (9`v$'fHN{Aw ;y?giv_g`c0bw SwOli#g%yxXWd`2Z< tv(lGKl[:Թ{_1i3o'1 CS^cKHߥʠ&2n(͘~Yw.L'ceer3=ə:O"&|Nl:0e] ;:7&'5׶8<ߕy^ggmrGx..V 7uc/|LN}7^C 9bz6w. !J]eCDd7aSl҂!:&Qg׃FHJHYB+PIJzST!\%$ he6̭Z7[N Sa3W <c Ob^l ^IU6-DpZo{}8T Vu&w{-^o~uJ;ʊ{$R:r!g!CsqJ"-r2n?CȮNjhAG\w=˔O0U lNڡIW%u۠=fvkVmF G߁msp,A=X ^CrZ|w>]uNx|:j@H@8f,5O~cM:[2t=lf-)ҙj'q>a0_}^()_{BBll o^B$?Dg63ʌ }E,w45dtv)bV]'d2G%|@3MB.$ eL.2#OgM?βH<XSzb+,w]LAr63nb%NsD]η=A4 ~E~Vٷ w wE?^ж?~fxfu̲:!M0n-/GȀ̏N]aAG rXߝtu43nϋO,>c _KǾKP_.eIB^* Փ"`c|I>CkLG窖F`1GbQ=>n1L}7 -n5~!3 L8FTe?jhَ\(lycAޯʙ8=T<7qdصes8fcW>榎+=le_\a1%_oWF@\0fY}TN̓ }xybq7Ucrn'}3f| 2AmM{o⇅iJIMcxR qu Mʜ&>&wIZE~6%e6*;@EEa[$ܙ&>; VI ~E;! ϛ ONN}j,_B2@>QՁ}Ķb u,4 1ʄ$1qV&|k+ۋ@7 w6K`v#&qۄ6AAKvk>7Wt<[z$ݻYhBY19v A囟9柟ߓUʴ8N?g¡f m:|]zkA*#Paix3ILj#}W(em daX-g!# Rm[bh_5k? Λ=~_JaGdu4]qb6Hsmfm7۔L!.Lq<(c{;֚nߒf uӈZs<;IOꝝy,;-z7=LM\o;wd ~~-{7ϧ~6ovu f:8ncK^=$aP;fbZ3Jo**YHBP|pNqM,ۏ ɎaʃLJ{XGv#cc/6TM'Tχ~)P<|WG={M[`6?WUtQ-&V2-OsdBk8Bv) ѽCznEOXPI>ScaKn'e Zӿ&~.q4iՉ_)/8VY ,DF .cܝ{ m¶Qm15M$*`IV^af2 Z˫E"SL3oi dUeOU/goȯuJt8Џ P^LV>Hu-tE)3p3r\ŋ+'Ka2Vi>#PXiaZŐAR46?2(>Z*)΀rwDG~a{E[$/ϷOߒCL:x/x?k:].!sQ@B IDAT!+cs{r.sm˚=~É+k^?w^jb_`ͯ-_S|L֑`AS: &)xydHN.w +^ݮIK\yUG2ν)g0Cw2":imα>FBݦ )Q3 qO Eؑ[ "iUql\p({Z<%紫E7ӥ2+M꟱y1(\3v7NA.~4t͈1u-ҷ/͉?He8h_:ik)]ƛ_ xnm?16[/ XeL IۜXubK]N}s>SԆ7)0O'sh616~q<.`|L1 ew.:X5iVse[;C 14>?8nn蛻@p-}#hv|09QO{Zvo_<-,l,G2N,eωa%e@㊞ٕ 91h<LO 1^);S*!m?5u3JWG$ط2[Vk_m;-)6 ֝,͒~X?1El#1)h9AFNP黅ɤwݫB1A|>vRL4$Qn^WX-d`[ت|6vm./'VCX&.o2۫h?/; l ;^']uWth"|y#b˹se>g˞7e1 na_Ejm⪃/XFIBoL^}`: [6|W˔Lp3?y[ƕMl ~U>D78~6yu'3>_uߊv),@^^<~^mJuL4&L3Y>_$>oi{\pEs<&ЌsV=1UB< Mi8jbR VJk\6zfŞKY`\ĉթHFNNW^'XZ?B8lXu^̴"3oqq{ŲDagNsoM3׵3טTcYqrɦ=96?-O[c?[^ker}Ͻ"XH](9H)yIl`\ JJX ]@?߷{PBnj<.E'JǑW_G Kox nxDbG:!CVo4`Uw]Xh>B[ Wg P߁w!]gYWDqK[-{vZ=pJ R#ϜcKdhOW!P\KCkW z%UrqH72Ƣ_qݺ[,~~cf;y4>\]x1wG&;xTドU _+sb|Ba;џ=Q]i%*~IRjƵ󒦾n-V/uU2.H+W/餌9IFg{υ_nղż#!čgll232NLJ/U;Ǎo ]\,zsDTbxړ}ˁNPWzWGϵ,YKyм#||WIPY"^;ݷc!o]UG׭2C[XuvK=}g(}ɦrm'mP7m$sؚġ/Sgry_(;\`Sf \ m,⯯8w@ЋAWG_ ^wgUG' ##v3Қ4KF;W?>]Z5,ެDw=S{Ur#=owY"=d6$t~ #ԓvR@c7#_TCѺ=y41UfEdݵoW{ !?vv &ѥ~h:_mI]ĿKoi8zFl{~ hKq򕣎 yy~C_N,- [.u]>SmoT!ӱ3NdȲNpxr*<َ5{]^^?MPUʧqg'}s0al=sHMG/;Q? |YvٻA $ &8߹̄BwKl9&\9Sj3Y)Oׇw^i_(|~ؒ7-ubZfF5a[A+v }@_R^wcҳc=t'iԮuDٕƵ|@7xy,$̇_K1lO[Kߙ<0Pbz`7#a4;Um6) T/LBJ&d=.-F?XL6>Hvq`c~'cG7- W?ư1.ٽru҆ 7Gиtdg3eO&u>77|S;zhh;]&˫y$|w3A&S2)u&VnL=k&a<c )9S h@$_S91h,>~|7H^'ޘwߣPv9\+lt~%]k y<M/&p^UYs5>\CqQ>OFcH"wR!j,u]zn!h|I4)ϖJ7bƣv5-"u(Vϳ~.1GCHRd#8hU&~ZG>Jئh5^azP1b8@r`t>(mm^c^1 h- 1Z>+Bc.m!'gփ<oyX㱉+3>Щߧ,^ڗ?T03ӑP뻛krUly$]ZTz ?\~ET5RO6b .;Ot%Ly0l7'7X%.+x]?=&ౌz&gwL;3< "'y1>!Mt?s|Ƙ>^;#7÷_Y10}1ٻocM%GyQX9멝R(4q;i`a0E8zPhnc?<^'_Q:,W|5>k|bѣDRqv c Tc9wmx_q>'bKWq5'Iv93t_>e>HY';~β&A=֖<)`ш,{]4O;g[L3O߿n`AuҖw6` ANb]]IzӉwC1رnZAۼo[%޳M]LWs֦i3c܅ c3Xfq`طFc%cړ]Ov(Wfn$m]L?oI^K2 8ؤ~6у_Gm**?2{6>+ 6Fq_+FyQ9;h[9/KޮŝF_yTd[@b_nG/k}bMddu3~vƞ{|g8U7FzQj:7zI'rO"v5/@=yXokPmD9O.XcmVabh>ʗjy |}Uc0ҴEz;?abII} 6b [Aj-$ |젝~v'1 3}B;x%>7Ag&$cWVgձWx=3E:{D0w}v}Tֳ+0Vqeޣ95n _|f3KUS(㭺)N8nHm#wM MK._ cY̘ZH4ef#FKW/5R]N D]_߸%qy SFo{8$=Z꺜U5ۚ+>u`^{}kM.y998eϼ5!=\w#oΖiJſ;DpUSzZPqA(.YKb@uOij+Ԙujo8FY9KI_E~KurOuRw}L$Zohqkw¼ AP~E7I\1I!`y|0ZMG&#~ޡTĨgSY'wUS܉wٲXO ٳM=g(q7=X[7ǍLxxl>#r({uC~ȩj.F< @wo2\)G>`@\gp-&[~>ѣ)RNtWOA7SUɧbP~=nGXs3.ω)B!CE._ç~bQz-; >[Kk\Z[]ڡĸ'=ܝ'2z+ wӦRWli8h'!kRw=ɮ_9ّMңnXtr^|(,ƫuuMq CGl^|)VgX{/iN'{ơdmMCyɟI*l x$!+2+vMmʓqATkSؘᘣSX) %]6Y]ɴc,8Œmio#_,dKr7#ѧ|bZҎ0]Lxz_T,)9+m}.x"N>>zÏ4_iS˳F^ s'xヺ[zHWD˨ٚ{sӹe#^{aDAOЖXl;{ ~4|;'7l-T^ UZrۡyT't4FC@9$dGd.> SBXάK}>&OٮYWݬm˽/Qf'/KZ]o31iX$"QW=9 o=r0=<feW Vd‘ic^ x&{ؤi[ĝ'p%0x&m@?z3[8Y>}ؿ[/f;1"ݣnl3M>Wm @vt!2og>W kM@Q{0$<αN|:b#~ٸ޷V>zs! +T3?cE~ac9,K"^kxuU^B]?ǧb"vJw}p/l4IQ#ы31=5A~quzX&7"EgkM,#7 pv'c TkA9^د;U\n*yfp02}ɣeXn;>ua(#g?u9m>l ?#} 57ߙJjo+RNZy]@>8~=\27ep$Ί"%z🹈lCC꼕7z^"X0gsܴ=,ТV/al܁#n9oEG-.̝_Y%cb;Y3ȞmZN2$nb98\SM(½tƸlx8Dt6AʗH˱Gc[_N/\,l|(RggNLz\cs7t%jvbt~\ W߮#i;A}^~{k?^\$ׯMFCWl]gEȬYQ;['OdyCƞ:9JzwCbOj"a=y^ZH]^ش&T&n8xBáiW8m=#眀΋4Q̯+r|t }Cu[N1Z&+&wgs(BIۻ , ] d ĕ/.pCyMr,4|۸izTV6ᘁD/d/zm,iCɕv5nSPYd죆7*6>anm? B ٻ v6N,uߧH(L}+K`:4C~A4t"l`](O y,W} C}qcxǖe8&0?1%cr$sWtlAyow5hkڵ|J5JGz6VKbjoEp\;abՎ0+NKx7eU&ys1ҕO z1&.״oRu.1t X6*FiXSѨDNw7Tÿ;J%C%L?)8zam:5NV)BRڣc3kx9'g9K>0R[ "e+'1;-gOtOmVvXk8.k2~b.o%` [zϕ˶Moh}CUF^Jk>৸4 YqPZlSY/oG $3<}n:Ƭy.Qgd)9mʎ0tgl\9Z2>+HQlo!IoPlW^e_mI d| )(IyPw +9ld!sяoOGasX> Cǹ+% 尡 *Mv?P`㺸μPU8Ԙa&az]";-;hƭTE?Z a5Fz=G3[sGে7ʼX."Qo/Yb`G? N\; Kc9Y)?Dzr@bOVKh7/?)!ώĖ%m۴.M&\0<M`8wx4N9Gݒ5#FِM!!eѸXKNܽ혞ÀX%/u;y=La;06z1Y" kwGl{?Q>,_vu6.}GYϞVf$oK怚wڻM ,,6sV)7sj'|nXch.6c~|oņA!*|;b7ֈ޳ƲolCU beogY3M zI9Э&5":}Yɰ &#`a]؞/y*sV0_i͞`~7]sҹ,Oض:]DWGŒVutYm2<|}Go}ƒ۰*㿂+z^߳C/>xN'QVU4~.!ഞ5az*}z|2TsyN/cَΩ$Džq\~%yTv҄1$a!D0$[4hَI"խ|nGy Dr!t|p07 Жcu}ٕ'77-K␎'/lJ?CV{$t:iPL_IҢ|[Dg4ezz5w ̋C+Zԛ]{u.me}L2{mߝߗ C6vU~ؿ=qбB lcӷ<&ӥqǗ7ף~QwGf%hě(,NcZbɪR*2ImksEhذ P^:LW1n%Z+Zkc$̢%K 'yZcIǴsK8{]U[=;O"cO.jcV̩{:y1n1^ uȲAtM함*O[}~E{X9Ym[*n3kQ載;ۊ14.+47̺uy{Q2m]?nnJw[~x짎̎/nR??[ -R |Lwa`b?flOf QÕ;Rl nYKղ9zH%9~Bh5^strkhN%M>Cuek]/]ѷw)~z3uZ?ipv=eJ%'彽)s^ fe|%wL3aFaL /3::Gwo;v|VVNse?觡 XKx=:z9)"R0!iagN I#3ً͉v)fa[ֲֽG%㺼Pp_-Ըdil)qB<㋝hkC.'D }ѵ,st6?0M \&kȑ٪[7݆vMSj}L!s'񽢖~#Hksx3dy~7[@WXxrꚤsN$~'/ڨ,u7~8Eaw :; ĈilB8d.u>q@?mWۚfkK?c,$3m0%:{&5t4$Q7{.*{0uخZG$P2sV0N F_Y>/E eF%꧶nUI넼uKsA?,f}Je[E7Fk9?qFz}([$"t$Lj Zx:z"_ޑ1In/tRN>ۧbInPkS41MDR'ʢtXVsъ_tKU땱t .VC'><\ht|$3#G6ZgH928)9#=;{/NBun_n ?Z5&|:yD׽Y&ct4? wcn]C>@1mcnۍó^=gQ^* ) ?V&G~jVǿu%Xg>ևȒ77wlrA CO` [ۈ~@ң~.pr^cxntC?B{y艼TW!6/2V1+x~ 4Umnd8RU?'Ae_  gN6zKdO K_s7i%ǂ1v#1(mvrM:z&vώ>p}7e?67hɛ,v_m۶i}\F |ݡJ?}72`{ZYV^wHnV_]6یh֕:xQ(B$<b1ZiAqKX4͗b`VW]ܔ[q6k{}۾6I}JQ쾁=i]DSҝƁ83\qMtDNJ|DK喳V\F&Uյgv./˝fZ< mIuW]yNe2ٳs*ĊI"yy>Jķ3XOG8Q H.zT+%Ͳ =+oK0o7=yq6q:sFaA DI~j`4@y?aqɗcG `oݸh|׀7K~;zO/BvvK~oB ݢGI,6txxNoflcmƣgȧI_ >o%07ѣ ?J |˱8^ґįn;%jvAmL&~ o]%m }"} ==dǰ]|6[l۞[ä5jrCc17OV|,8+{noE97zB]>:NM1V{D›<]y[38^Og򉜹62(Mu320>=͜+GI`L:}`hb{XvuO''xu}fk|,>眚ʃq]@ 3 kcIFtÓcx]+#jWYkc~O Jv]DzF1k}V{KW{R,ٶn_M:+)_ ,`VmB_(LP%m0aH>m Kcʞҥp㤫s,Kqݸr?$#l2ӦwwҢ]<[xoFDG$"C-jD.m{i GP&.*X5@&"n[YuWoi@wk;G@&NAW9W^J.뢕ϽcqlF; $;3::ȡ~y7"N GcEZmk8,5SvN跬hhJS5O/3HY]Rm:-ิCǖ[:ҧ39i:y'?҉=Ye> p;]DN_̢b[HRic$N zɤApB@ӡD.^.lY/ ï_jj>,U\٦.8-a "0dgk+ϼV5/oR68g^*;.#)$m4emW)uL_GRߖXҘ[9ǸZ<# ]{1d^ppQx5n?RH>-;i孒W< !+~>ʺFD]hɈWܵ*cYC$\ӣQdopss£Nթm;?q%ex?|i!h/>(`?m` 8CڬBQn_"sxcS75{}e'"I6 t<+о8񋸈얲 $K|{=6xW_;w~1;U'^6C3/ h亻I4xuog;T>%bBG3 ~4:r^Vc%c:^cy4^;GovǼbi`W/0w2] fW8\+o> q?TkN3z=,JVlϊkV h c)cݺH{X99 N+'<#. r!I|H^GNuOv!G?scy$k R&˲^so5,/-Uct^͸nB ݗCoľ_[XG߲J?44Q;ECVn'2A+]osޱZ\0 y܄ [/$k2Nq͇v'2n/r[0f"W$f$ԦrH6 sC[0Faa(?nzt /}XFN3Rg{qP4f I\!Fhohl|rI O _]~Rb$-+Ln$.g3ÓFyyw?d0a~5o.y^U`TUONbba);K;m㿴 $v?-Ɣ˘EJA` {C>Mg~沋fGK8Z@f|P*8>JmvlM'cYTQ=;O[5*ɳNb|=Y)c~/вCŮV{WKZV;Xͬl<Y#ktq|꘻7^> +q+V8r>9VR K>z[\J'H/n IDATw/\KJFJ/iѐNG7+P/|`G5թa[A g'xzM] ˬ>gzP Kf[凫;J&cyP$mOٽ4u.]_cX^d=pyr_2R?$Y9^ߚGdUUwSV7Bb21 \C$PvP!WLҚU38D ?{7]f1{nȞ6myq1/.ckf}dVA|bߧL+ve~]x\&U˶D2MU[}bǢτ"Qz* 1(v+&ûEO.~{0iYhnc6OB2*m/*B~a,RWJu"x_W_6O0E(w2ڳ/L(λ` + p(0uUQ}GJR<+DDmUK-Aƣ7mf|QǺu]h Z,~ǎX_>tRo|୐'͘:̯/W(4nBYe!sk0b]뭵ԩRv2wEr2yrkNC #F״nB $1Q I?ƸD{P!k's.F+$pƴ&m?x9 YU{?,}MvgE^[y+vEFdӇ>6Sgߨt=:I񷱉j=NgF{ O1m?jjxϭ|n”%`c+w;x G|r.O!>z6+l7|f;J{z>`<,<JV}W8'B3:81<_4FWy= ,t y]<ͮG ό]1P[Ͷy%܊xEx1UsY7|DX&Krv.m&DaCwITe Ri~w݊Qk~ەk$ =km&v?/+L.vplwc"_!T{>\_):Uب=' _QzIZ<}חwúXo)?,f ̶#Z"/.dY;FߟPJ02-lqKJ< |vDZ>1@/C'eK 8z~̹.w0 Y/m.a**QdLehwMep|gTL;2:%#:h#Q1C|ĎopCEHpW9vKǀ.Y̟7{냁~HϬvu[5lX}vjW5[*>0 cy98,< 1Je#(x"NbVJlnZtwőwTTנm. xrԳ7mdR8Ip筰!=t4wK#DP yѿ)1?máp u(_(L ;}/> }HTXl&-xrUQ|{KbExzTɌ-r5S9di9S:#-ԝ:pd(1ۄT;P|kQBc\m] z2:UFӊI?@Y6<Ԙi}V*Fǖ+;ۭx\3z! JʼnˤJ.@.F/9Q=%*]3m%'iݡ.^ر\1̀&ԏAAJ/XoTchJ@b"6\2y|޿#~Z_S7O꽴zM^Twg,|WԳxJ~Sžm_>xO ]}_'\B؎n[@l˸AHz`Ǻl/އY&1yKXMeF;h_'!%u4IbkubI"۰v*ق_S7|ZalU8ucL]r py!b[ӧ` q})+(]NR(+x%xWdZӸ7wg={Ia}$뷗6ߪY2w(*&}qL'~&>E~#ػ{ ֘^vh;Lw\p#C&WzuՅ`DQ¶ٗj&|xO'OfE*ox$ؑhBGx4*Oxd,/KBs跣ynJM$`[|1\':pbh+}7xCno8k(+1my^>sTK* $K|Tp%u5^K3>Y's]ظ;.*xkȩغ?7p1P'Wu%7UNcNcF}]]>_lOD#ˑs(0q>{ jl. tW;g5<_߀I"[#րcP 'pa9JJ{x_sÓ!IcL~#lo6̽DG69+\Iu5x6Qb& ;Nۊgda/%9fY-f72c݉-&~oY^]O@n 7=r+v-1vjo^G2Li0=Cx#'#N'o,nMp,IE|$vmTy:zHb׭SxwgjQwߢ!?/΂+Amі'W ]%?em~0a_]j4K8 8i*v60NaM;l#>cb>9;};|mr(}6sr3cbr㠗_Hv0K"SL\[ġqߊO <;sŋe10 w̶NSP|}Bi0aKhAE1ZmP`+D?GW}&wU.DދCM,_@??e9DgGV,oal< $׉` vK߶l>. Ob*p|qeQQ19K_x ?G;o@t󃑠PcJIEz4wF'#j4hvVz2 l. .i"W3d>j eϽÊK 6! KZc>X} ՙrm8ωR9܅hpY"2Ie$8CUJZ5n7HXfhU:đh?'0(eE; KZ躛}uMj71]8r;m~c bxs˿=5^|ׯb$POB{ۘS]y2~yV.._wOc˴Jwnuaj׬^K0܊nD3Qc} 2B 'v2e͎L|5.MUygawb󰚋w"yOym/7[=h#cg49O#S6WǢq[B& #Ll_W 9+Ch*auQW2GTuV|[={ZvvGfw_^|R޲?nzC(,Jޖf8? GOƽ,9>obJ;n/ =k?$]ּczXhC<@=[29 HJr*=GSJ ld~`~qP*?9W*jh&םXO]*|p6ނDU\Rg-Y*ܱ^miM8_IBk#"ɽ滩xmmƑZ˓ uLk~򒴒V%d\0\{Oүp'p6qf@`W?L7?qoʏu#9>e2<,So9:\я=̱20>lz;fgM۰"󹜓|U'D F|Ɓ}ޮ,>?g?=s#jJr*s@uzyjfa .>-ӗ}7+sw Z /*;9iqoIY\jdW7lʬdT1ՍG(㱫xt>*_ &>]^ O\ X!o,)xv4ge!mN;wGU{π.̆t] }J:K>#I XZ hxW[ aߥ.#\.r]ц,]Sϡ&~{%:xC'"YXJⷑ䦴!>OM%W'm~oE- 0A&N=?4N$>hd._̑^X|#1ҕֻA71ގVY#EaQ]ïh=lwKt᫸mpND+>PR|@֕e .Nf4%Y?Wp_zU l7z;{ɲA;<4?;P9Ń6+/Q%yA}z"oa]'/Y- w(xuݜlt8t> y=&QO{YRc v(E!^[_v|SOߙ?vK>^íCu[m~{<  ~EI;zlUGXGNIJ,GqQGS>gf0v'7wDp`AUI&RI+/=+7Mg8ЯWC$a>cݱl/ˀYBO %hH-8k6④|=v\/ῒMkK=vkq.$-mfG'KDo?6Iujwt y/y;]Mqi}ˮ:1|zt$HxFm2UuL ܤ2]y0pDAvִN9ʥxm,:/1{gGCd! ;6p.N_ PFV>>ޗOvncJebSUYU9KSr^Tk}UUΧVixc8biz,2Fxz1xF& 2;0@"B8|]S\˓w]-%~'חV~ ɘ-ǎg_;7~u+:9OdGRyC/EQݭAW+|#&2Bjw`gДEŽc_vɣ+ Py20SW qσځ:Cէ7Xa8TW*]Q =NjǍ5&ڔ?켱|nZ?KydbuuL_ ˣwD0;^MӃ؆2:c[swߠx̷]5.Q]ÎAE|L{dbv,i&\m3kV IDATlUl,"@u$6]nuɮҭȉ0rJ}@w`"OÃ/[^?}tve7gQ晉kN@sߺo@W|sTq;+r3:mJeL+ٙ-[k1ow31W(kt^ VQq#bYu޼]@#*\]͵qMmx@qlMc(=⫕S:Y8j#Lb1qj縜g:OQj15L״]uh/踓|"U<v䷄!{//&dra_%ϊoG?6=7`Ivtnzf^ޛ-?l͗AT_.Y^Ru}p3I<o˕My;?-;.oLpvޝI?:F島5[p''a{-uPa};7pa16!Gj|k祉imnpW44u? 'ι*J}Jѹ mv{C|^e82g/m,A*þ0N@k\F5g~]cu,o?@4ly%&:Xlr `EE;yiw|o 2$m뉞"k>4#lGg/e4`~TZ>"QfʵF|TPzfSv%1Åbd˪L e#αHb|6 uWm  6]o֜_vkW@A?0n;\st.,Kv/K\x-`s֥eU+/(}Oq׳l.MsPCRae?,-JWbty[-@9:xEm.QyS+=vE{ h⻂~AB_Saї}M &==+Na2BwvYFf z )sWRy[-UEmouU5'yyxNlGq_q嶠K|cK{q [QDjW3]&Vf_<[jXU]V#+0e7^Wߓeϭ}=#]> *aB߲ ;F(.d_Q-#- 6|@|} І_gr'. )s̿[Xh&CLj$Ѵ# hpĵғ@~v+]³Z$[Fwa_-G K}$%a]N2+ӑa Kv\,+fMd-H<<60pYvݾ07yJTf4}7 !m:0x. 8+4n~".BFjuۓOvk!0Ie͆[2 f$f7k@9z1dt9Yrο%yni#FGsE^P~[2*<@Vp|;g_#iޗ=c2 V#C@~sydk]~9-٬ۿ ' ~j1 8eI_p۪g? !~Dd#I{IBv݆BϿgB_d$[A $n뚏{,}>}~ƖKhe~U<ô6O0ϵ<42 a~N~c/58h- PD.*KkLeޚ9oc @;`eBZQuatIA?~lSKR#NWIJ;L0-[>^2܏Y[/{o:Ey .&.GKw-ex7 "e:wсQfTMc+  Ѡ bfpL\YuƩ4(tHXߑd%vp}4bq}L'Q[‰,^_e1%UJsi &`+a 8鮞)z}7vy~*͖>2)[Y?3#23}ohQkN@ۚv]X>~?,ڗS/O]-!$! A:10}OUȏ+oUKc6/N- 6_:#l[7}aZB}^;w]N7pX4V8LV;[}cެtglglX>nf'c::(6sW5Qd՟:%:t8qJBzyʼn] ).b*e YPL0F' ܥxVV;u0}R/l̒Mv|[v}gWPϨ>@فXC;a]}pL9yB&$">v vZOZ:WO:ÌPiOe٧t VQL?gG*5z8GB'K#;&m1@!݉sb _ޙc|l1+}Ď˕~slO~yQoo -lWIucUOGNG~Oɑ#2}&B6b.<7]&_25]"fV|u>gU@m0{+Mv&@C\w){>jARҩTt4^J+*v:y=]}lW^krWtp חy7O^AWNq2Ft,u|m wWu?.'d9oٲ'{!(:yuw*ow}Z7 ^PioOqKfj V#\߷ 4r@ُw m2G"ӺBX,Md d>m%Gs7< ?0ċf?VG0z|ELU3ȳ,,AUz~ڥHDh7m.&L=|{s>D%\KV<]]L&U6b;19$uv"jPY$2ݻ "` Ovw0{mhm34wge!=ƈXN3MEo.XpwJhe"ZE%LcY+&\?Ӝ :5ۺuKZ$?11C=*vMH.4Œ,GHV }Z2>%ir%떹!Wpvd+5 % *zQL`zxvw dI܅㋍Τ[r,dkCJC^{;N/tmABY)~?_@lWu gOm}fgޖl~KwK-[qR^WQ_(~0N/ >*RFD0<fX G, + ml5lh=;.CIܹLvB(bo{k:,i ̯Be)`o7m_ƃaj۹WW҇! /.'m%iNv[>@Fuv !(įMϻUUm돝:^Z[}!mo7~]ɣ}.~C;U֥"k}"u&UU&nyDvE,C8us*ЖcWf.{hc<ŧі^ 7O4l3'V1I i;yr'/ؤ( ltk<ꞚdFI}L8o0%iJR7ÐqgzOoEBp;5գZ/sNnM&y1< oާ>o<yovRLts~""Ӳ "X'PybiBV<51m] +6&3_&Ob瞎Dd~*AEl>cěe].^^T0y]r|}O:u82[b|qٽ_ })tH<`\RgUApqW9jQ3#Vf_$nvD(a>֎ZO# SsΜ]]XYy?c_{֟VN\”J e!\~?R⾴xn=T1HPrW_aY% D 5%lƾ!+u3%X>읥<Ηťp1[VN|bvcGB.gAi/? td3k񒝷^S⧩| A-L*+|ll>hwzchh=1%޵v1Ӊ*+}>bzN6HS {!ddTE;xlf)o˘xc9εrZR|gs|ħ>֜q8|9,Vf-;_5;Y9'>XWo32-;L?'RoQZCvb:O4|^~Q%/{k_+JNJ"8U>1߿6lc:pwo;GCr>6w<ݍtx<ĝwV:,ѐCb`Ζ=<^zf ]ܴePt לe  &1fI(:H@$:]/=&6tG+}`uI"9.XBwP{:+;GȎ3 'HXW48^!1hűᕝ%_G3/2sF5+E:{دqrǴ;^ؙe~ҡD NIV"w`]vFuαBPsI=+eUmUٙ|tcX_b䜰xamV+'sޘ+l?lX9s~.]OHta{)&)d>CD y [hƈ/-,n´ I# OI\zx6B{vJ+ag R^X/-e,{VƾqQ4g68B7fjwbp1)|v4Mg꨼l1^c#]olGHHrוc66~⊑l=$ d%U0TVPtQY=?8Eҡx(EYL>c5je썙I3̰~q"$&[_;uo&ˊSeN~ԉ od< )Rq34?z<6}k_TۀL$d;3-/ɰ)fzAI?l5ޥy.W Kr4d NXޑy-m+V3Q6nٲ脷|k¿N~b 7G"c3#|1F:7Uˊ)漡u;ceva v8DB ,֦orDK<ͥJHt+/ ڰ~j9ash~6?as07N;.Y"$9 4|fDc/&Z-֮͒/Oc; ?AYjJ%î_k]1S?~K%C3Ss'𭻖 >1h/XҜr6#>-6"@ lTfY룿G&W0#& ;wbsIX>^k=~Jm"8)-c/ u4 bCcfe#L9IIõ O[k._ QԦkw+QTFD=YNaW:bXXzc 立,U " Kdv>z7X;Vw7l1=rHv?~mt ugź;rEZ6KtsnylBɪM,ݾ gc}VNM =_[+2EE/J;+/-tC >?Mz2x(̍,4dq.x<3~`r_|Gnc`A;e6Ho%#i=^}S;ֹAڏ-SgV ;nw|)Vڈ۬F0ﱰ_; ڟ #g>9 M]}>[2gkrٱ8;wU/#QPjⷑ9lpjp$3Ͱ|N OjB 7D_PCz!nľ61 3c3m?I?ExZ1yWtޡ\<5wJ;c| [z,jW}9ڐ-^bb<*ݧeI*&xk b*0Vz!*i!}d]à >xW"]\>l>}x<Mau] 5^y=ZeIYv]#{%ݼmŀ"9 tyj!`\HLɌqsZꀨ6?ҕ2,M~RU{|qyoZgϿ'w_vLC ]S.eCt/BG;> }>F:dC|21Pӿl6m'Lvv7k|4)]Va>˄1/$f+*w^[eEА-دoZh0_гD衾#cGe.5hӛO.-[o\ho3IiLDDt"L%WsP'h ҃'kol[- wG3<;,}s| N:DXw]>9x履Џj\Tc'Gk.bn1T|aK8Q/> |`S]EY~w*~O}گve۪DO/L>ט|Kc &î>UygѐvV~eGU1:1Ii+~ tsjj>O's]e1V8GY9BPXk kefjw  RKt)Bz@@<ٟ'@j1,G<|B;XnTB; AY *I?/ڳc{}PcտONdߡWbE0LvZ =}W7SPve#c)<7lUվ^tVƎ"T6yM-Sf4@|p5YBM.vwn)&}r9)L͑i!{LTzQ"(_6Bo-=׷@WJʟ_'`@z0PsMVe=4e։`"|L7+<{;&eg#]8fAM.MauC\anG[nvHJ]r AaV6R/F~h7cuCO'Jm-/;< ="IIr߽EZU#:?vZc4ž"fFZA[^e ln[׈=<wr'*125IXS_P:! pwػ%Iu^#_7tZ2LdGszHr<|*AA,={x-N*e4XʸaŪmYڨkڹQ7|ő](-{צd;c[qVQkv3>8y{m+VrN0"Ԗ+GpL2}l`2z=g1/Tc%(y b)nsm^}3Zw蚭>庾}gŻebG:}fWWu`r%E=K} /%*Jw4-'fe':M5KH$02p!XFKh `.8$j'Җ8mLv%N|ǽ3(K.bHua ;4Xj>fVvߍN8o4c|ʂEK.?kg s3X %/4=q?sz2.ry{jӚۅY'u_3 ع|įϿRNkjgABe56ǏtEc q*ƪ6u_"j5ӐZ7 څ e1㍉08YE96}[=riLXc;̕_h[לпu= wY;ǛX0mceEZ"[_xX]_nS oWlv0McW(}[y;_<39dB} ĀLwTsż ᥋aAjӞW1.IWRdj=6뫋\Z5~gmOroK. >Ƣza{5Z%¾X֜uYhU1}}bnܫqv m]g lɳ1,ut59?K0*YcwST}qsS,[5 X[^RCP(1sLb9w[h^8:39;`#$)>E~ϔN_MC:UjDn;LOof,o*}f1UкXb8SM-}1qqǧKckcb7~ZC&Ε>7n^pym^J>l<]?7b/xeVă9I5_{c:H@70_ k۲DNwHU"g~\Oʂ`FtoO,.}4 ,Pt[ҳn ^%RRKD1TtCd1[vwK^4f-ģrm٫vM3F{g>{Ʀԇ8ڹ]$^]^? Z]T82Ln@G~?sQ sj.!'J4 jOQXl wS'tȾp1ạ 8n_Bƹ,v%pfl%y}6*vxyOGݥ63_@[DܽVB1񛺍Ab'MhɁon `ٲ: PEs],^~0I k1Լ]X h\gVɂ{Y:b t?0HmLnGZ>t3[@Er8smWxx2«Ir@lfۇ.7lRV@+`py >#r Ldݖu ˀ.ٺ2YG+Y \s8Gn_R/>M?n+\aLw&h_;ʵ*߆U']M@?JF׶LWpE#@{sdAJW97/8A\RL0f~ޣZUCEwG5=ys//>k{oY]O]KyҒ\^N,XMZ)E뵒p }Q9::r wqs,pZ=Ʀbv"1-l~1VMvy8)Yb 7GO_gSTrX-Ar"Խ}nX٘&|LHlvʣi|Xw~+B2p+ǢĩA | VLiZĵ:X8T_xw#c-~|s.8?vP<<2x!EfF=~+W6}86Q×ڍv.|My.y G E4Iqs/ ?[5*}'N) u:˄ƪNDr|N|NƇG[iύ-_خKN#@6clPֱ~XMF|#2?u:={P{&oPQoi+: !?w Il3>eH8п/v~*6o/ S>F9[.۫P{sý2W^zTv;:}3W+Ϲ9(&;X(ŗ@Ob/^wgoQ):p]`1@kbo>Vؕ|o@k8Ir/5]C lobL׽>1,M-(gp$kM\p]V_޴Rޟl`#^Fvnh_&g[W5EC w1dl_c.b(ÇL0uO[`.uӰ<&.xql@_{U~Gz2}LWt^=|s%qV6+-|m1~LGEO-8pa-w*f|ێcM[ :C]'A~%4~F䆈umnsDBEXn~ghgkX"az;K 0c+̆4y?$*۱so ;,?כb2(IUo`|T ȂW/ 8CX:F_@EIMbGzv%ۈeXiۺyig.>\uFwAo %ǻlē &TwL`4bBs~tUzτݫt+lۅ`di:ܵWCϓ>+xi/ʷ7~݂ͬCNHyRMyɂ]LoX7/O.;!]ڦUFqlu ho] d?l|!,'ݢ-}`Q|Z.K[B~6{:4C~9ye4f /{B7?|BxeK6jzV; /`V8eI׈# n#9Id_it*VzN ,F.Lņ橏ƽ}Y$f 5]ʒԇ ژ_[w@ w zqw7z0rؕM ]E W n2JC[=i 1m*!,3LEj\@%tVmm:nx-9@.?c3@vDw䳩}Ϫ]M,%|ll jdL #bgHz]9(mgЧec: FӓK pܣ_- EƗ,N/a ^Xt-6썽 d0zg&mPϳa|"1Jes~ۦ^UsNUWշ'r5>?V>_t/|kٮ.;7ڪǣX=̣=zM4qcsPm1ڮ bi2񙝴]a);1<_wqzm1Nn6)>N?N 7'ebXB-˅W#uAZY"r>>i;mC`[O(MM8> yP84bf^'ƋxmszPkN?WmklSc4D-(#}5tTڎʃ8H;)3b1[T:gͩ1CN,׉~c3}.Ll$^ӱx pׯ858 'X~=Plt G׻o!Q)=3ռ?x"[9dvZ|7Cj7p0ꈰ8Xə?\ُ~jʟb4~Q5t7)_K KҽxdNo^?xȦ?0E/xue5׎!üwɥ8`Jr{cIz͡$a5;c ,y0rīKyIpmq{ĨK>>b;q_twڞlA=8btxӇ?.фf`QV)!4^.[YJ L캝6vW-<Ǧyv >RٌiFRadB\;$n<_liαk͖ss\ަ1at <[xD BrñDe>?,G![>E_۾[Mv6[ /ٗoѮ1b,XisBՆƃ1GY9yFm012iyjF,0N@s Xcla"T;y\!!߰h~LWHg8!V9Csb^4}VFVpB|wtv3٠x(I78&? Ono`XpFlϷt_c߿nihj{@{cusw/u}+0v)]Obc;֢Rө7T9?ĔO_INdSs8u8hbiڒ5Ά06.+}|{,vl;c!jCyI(FE-2Xh{2`R5ω c4"2pTYJ# ZzzQ#P,Dd󏪜}&_$*(N@11 8\ Ѥ3Ɨ&7V6T1:1C)[rtg*ىAUXLW=eJl&ƚNG:}v\ŏNX< N^+?vc]59cIdzȧ!p#]5#kDq}Fuq>܉Y^=aEo{uГF=Q<Ȭں\A?/9>kЃOƨQVw]& Qvg&^?.G;^K5Y^'B0Nٗ=>,wt_UkIl2I,}:o(s9F9m)l)87bm/ڈ-Xɛ̫ A.¯}3®tNO0]E YƨOe\)Y.]+ϲ Mx1>(DGG'߲ i)&t6r}3bW:pO_e6 ޥULM:e⾻ |ge eH^e𚽌?mIu&[2jç%<3:JK>p8\TpLkNU_oq~cm#ѕ)sY"myri_7=k(zƯ>\g'赳5²~[MUqz4%䜗XI)ddk~c\ %%7턥 t\ nŠ to:{!8gƻCܶ2{y!X̣Qmj0|f8#쫉imQKyy# 9/YrG {! s+!a:eQݻa;Xt6&pi_Q^lZbf5qD: 79h]ZtJAB׶MpQ;ү}Hud]F>X7m?P}W/w-La#eIle|6&\BDŽc 0l؞.h 5lِ٢^1EHaϙp.}o⯧>č#lOv-xrހƩ_.m:w{`,k{߉1{LƑhb?أΈcEKEbvT_/X/D}:탻@x,G[GprH?xe(C-v^r]V/qm-ݥ?I` 2O m dk $ǫ ST?+߱ymu«X&>*!h{9L> ҕqOÚ$Y zv!arݹ]N:J=яSlhۮ;ڸx*,~JG\$ǛY+.]iQh8N`7?pb Yxkt:w}{bЗ%_ّ[Ӂgnb<&IDގ`M*#XwuP>MgGC1amlӪ6m߃+~Ď K!zY8?ל~7 $rnlا;%ǎ$ e_"ξ48LTW%>1ԻcA$0Y~8ޱKDQe}'`rQXٯgϺႵ`_džƮ30>7m7X˱3oGV ݟs/ Goɼ4m:˭ڎGǝ TRb}uGc3&J%6$D$)wWZH0!rm=F&/b.wl|ڡdw_gFߝ k^  q#oXKiΑx·p6v@^U'?ZEWG>vTemSs_$Is_X[]T浖siA4Y秙|&_ Յ`7//O&uAh_9ܢ<_17mb~yXICCR6񳒶\r53R Ne#;/آ'N=~Y9+} T|ow,ck1k`ʂ8Ћd,)x2E;ؿ 1x~m!I<"OB:$ƼQ)yްsAoniԳ)L\o Y(Mik,Fx=!E 1r߭ u, y^2G{Hn+a\Y'b Wy6<9*_Y$U|_*=?Ttt0s©@nƕ8߂{0]׺x̲k[xqلIͯ`Dr}Tk)GX=͝IJϷ*UخҪPҍ;^,YvUoHrE.ePWƣ|!O ,8'1L!e_{U $-[|5vf|<^w8`Җ/W?FzKO!L/`)}al Nr XU8 xoC_/hbXTM 0]pZs<6ݻQyp8lk}~7ѧR 0{lXheO?~Q70l6C՜I].}wws(-?6ڊFHtd+zGQt,VG& 1^DMd3-+I-9>aN!E=K3Iz@Wυ_;.?*˪] W\o/6Pq^inz7kL•ŋJ:NTMJ8m`cndYE|qWC].,˅DG?$-lzx=N}闺gv^uFU}|O$V* ʘpWh*NNxzKn}ᾎ!w xBcܥtgVeW1E:z(q CڿCclzeEa}jQݠ I^P[e8:8UѲ,@sYg$l,7/p$. ݾVĺ |&ʘrpw1mwst.ޚ\7ם_5]=T:̿CO炫62cΣTS_mj/{㵖O۷ޯBK._Ci몸W',4 ypI''9v(o._M?q?ol`>۟uz|r]v8d\G>W`ޖEf&x)ɣ6<&bN(z0Ype*ַEmm\{D4~H&xa?ҵk"髩fIϠnn0EYk{74;]cf[jQGTՙs{l:w`)_=8~d(fQծc;^mՄc=4W*s~/.8uo0]3:(꯵cB:{s286;} ]ˮ7n!dOm߰;5?,eb_vȖۡyT&棻a}jƁMwHt-sA>qs$Mk=܏M IDAT[(ru&i#\e[4t0նEgӣ$rKd>OSk\JL Dl]w*qz0E1@X+;˞:cgUoy:cS ,*0d_ E az R&+ex UWQR}[WWQ6ИTGm9ԯZ?QHn.ܧsg~Fn}!T,G9.'_/~AA:m|NI9t!X|ڛ}>|97q층o`L(A&%œ þ55oK{͍Zǧ^:9^ᬚ.۔].lF~o[uų)ؓ钹9xyZ):rGF^[|qS(zUS^g +# $|fJG~77OVW4dFA^}"l*8GolVd?/ װmӞJ?u#m>هh/+;W@GS &x\Y uRڬ/e n.xS7šu_m,<~~[':1/q{1\˅ ӯ}uf܊-{=;Bߎ0+rӪͺ\~)j7~AA(M2<ƻ켋?*KIf ׄ T{g19ևo7G6|NG8\wamۆ_9>l85 !?P1(wxqS;1z-+[gb,fƀ-AD$VWLS͑^q#*ygP[8l9 !ټdb%!_}&};;S4{l/8ᴣ-/)md[X6o4DΤu5S e3щ_3,lXs F~;>7זf^l4Y~7ñ{6vufu,qv}8]?uJLb Y{OW51BHk˟?lfd/?Nq<"@M^Ce6iۼK)_93zM x~_$Cx' |k%T~wOC; t Uޛ?kKU'U8SΏ;[167b-Vpu;X Zܕƥ]d ^֟F4\4E}|bRsyS‡Nlv7s]ypMP^qco 9ʙs.blS۷\煮RQ\w(gzx[gB &=]x/l~tʷ7:lK5ubGÑCC3Nϓ%R[]N? n FBTr;Po _e۰|y>{8^ǎ7Ehj-L>8V>@U6/.ݳپ {6-JW}=V?}VzOl{w8Z,sv΂O%=Y.4oɞ:wNI/ggziס:u-.axqUXfQM͓%]S{Q*~?&~a ҍ=jZ(L"dDl[X$fevP2r9v#;v\C@oklt.XRBS=_- ۑXqD{YWqur m/){=@=[LY1]#N\6$M8^ꎈx4 ou< du׈redViQXunYP@//ɶBɦB?P\ap2,ǣeuF涎~Ƌ3qf=4UjJ`4_6Xnsw;~fcTAz`sc! \[5Kt&謌LGħvs1^%>^3 Ъw];ߌXﰛ}'ݍ}RIUϭW#}֎×$?[YkyzCY;u9:!N @>E;ޙ+1;N1bR}=+htֱƫŨގ5gS:R'0M_M0B]TSzH/u26Ho݆[?o`J1ٲӕ"fX>1}^3/1嵫1y0RΎO.{FG0_#>ⳡ]P7{vQ>cc useE">QY%>CSrD( FD؟V Ɠҋ#䓘U>6gJE^.c+|a\ݥ&I2J^%ФwG{s,lYlWWAU` CZRٲ>僿-Y(.Ts>|b)Moc=>Iހ+"FEz*5bQk齁Uu^"3&j@*EM~Zixurot઩7ݍQ n/N'eW)>o֥/h!X 9Mo;sInRs#{6.{y5`^[3Z]7(c;xYxUp>7/K:Us3QyKzttצ=,p.+ۯCLJK9 )qJhaFf]06^]N_aJF2b;%ڡ.^ǭ(%mYܨsפ>Ke&TG']Ýx)oDC ڴگ, ڙȴ_/y}bp^{1$*cYiUo=[=>4=Vżwt\v:\(z2/1۲_[d\xFي\(0s,̇c 'SE=;$ [Z9Ucd߹?GwcoiRϫ+& %-.;@DW Q&hKg,?&۾&]6:MVeyDu(XV ٻs3wswiV]t0j[pzp%QN2qGvzl۩]crcQ V@)N_p:tgqxLxj]'K;; ~7KOQ,k߰Xzys,6AYZѿv?ۮ2H7Kwc&k %\e f` . b߾^?oge Ķ[24uLC:KԢ*P^ҸĻN=/vVto`7}MzU;\c6VAx#|{<[a_b|aJb#2Gf騿cXl\c}Ev Ke}}VK.>}-:'|$B+|a;O&BA߯SѤv%+vOgx;q4!]Pfz9۴ R󩑴uPb^'fNtcd[MtJ\xD18VL4f7d${^֦azy_;7nޞůt6Fq+Ugy /BFXZ;#38v}8t<#9ƜB36,n`yq݃/폘'kטO: Zl18U^] ng{3<]}sZjVuŀ{.?o#j_Zqx^HXQGYUx.gJ\I_ԐoEfqNj:$}l{-k]6N7n^MܓIY,x Mʫ`:65?0\Ⱦ_luJx|.^l>||7L^=>g'rKP_"M͜piO{ç=>g<|NQ)|CAdy_ o؛ؠ~|s` gX^C&߇p&@ i=};d;ۛékM׌|//GGa)>Hc~~NnF<. 3EfBMKE8F1 !i(vi$dvdK,P)36fnB;s[r7+[`ol6N-JOQe5AWk+ό2 DUѩ |;U/P' crl&y^72Hp7m76 Tw\G z\5<乼jp}p;wNj֏h,<j!]ݫXjs9}}:'|w95O=T|+N}wB6i7sփ yRw}Db1\ 9 t}>I;M^zNf7wN(87J#&䢏.,LJO>#*cAs/7PXKa`y!_#7^gmR8ExٮW'|Hd|Fs3؇qـg~ M᷄ݴމyw?P N~n 񅿇4_K_h<ž[{3CρC~Qu7vimTDx$'t./2ƞurC>.U; ¨nd"_ށ)7Xb,p]Wx l?~Wlbi3Pr7ue7xLw'cFS9봓`f;Fx6YT*4)_=O0=|徴HpLuxDB>ן~6q LJX}vVڬ;mIK0-X49x头+*"YsnwǢđ3 ;oṉ<φ`xmBIS(/ZfO~YE ^-}' sPi{|@_wF^zx`OU.ˈ ʷð9ܬdsDL^}2tKVp|P?So[*e73zݴ@]˾,tv4]㓴L6g^5y^0A*mY(DI/\뗘N#yp ~#",4~nj".KQ M~w۶i|RezqMx]MuHX10?8˶}}G~go>p.3^[ԅLLjv ˯7,t,+Ґ .S" ݫ 7:>{Yg_ >3Ϙ5;\{toc2_%&~^û/*.T@-ʨ_kSe\(=i IDATvck2:y v:Y˃d Ī[%>sxr;Ź\M/o.S] Omn!ʖX b.Zγ6s*ui~ŷԛ={^nx7|w^7hOԞWq,*`'ϓ 9?`ex3bCPQ $nܬdPWqKÝGXoO{>|sI{bKcc#k=2{U'#nDUsUrXxhHx0k\{NM}/³5˼;&PL?g%0͸/:zO }.:Ӣ(U~#fo2? oQe σ1U m&e3z>jSQ%X<وQ\_m >@ iܧ[N޳#dqj.w[.x/zh*&ߦ>Oo8n ǧ(IG{^gÉ9O1!ˠI1q.vXfW1,֋3yl6٘oĨO݀:r^׸+)#Wս~(N`.v&_ #k`>0*}C\T$#M`G%%ۦNʾncf5ΐn_mjl?h|Z{uwB>Az{"dsRYc ~t`s{e< O ~$|mxCsZ=qDs,`,my3MK9qY㭴:q <=dxj:nø;d?w) Ф>DPjxHMuxN>U:vZxVGɘU*S._<bm/=b*aCʐj?w]{X8K@$ r̯@`JV=^y}GNd^n N7IE%Swr=Go}a1:Qw!oiJtrnss 6P>9_-|Bj[vl'_oJST-r| &d ȸz>k}@|.ѺOpKsǗMQ5=olEǦmcb#KtxsߐB(n ĎmgwSc v|_;)n7Î_ St{y4ss?Ѐ5e`ګN.3jz3fs`a"/c ZA4Cn8O{K,m \?4?9\ OnD!J\#+;}d\=_.zZ[^ξ{D*U Iu;aU,RwD KĪ;yq;>%ʖn,cqV4.dܥc@{.8(ŃvOXB-E>^a#dJ{Tv<]]XtId}1^ASRKZIT+A -;\toOuW |mCUۮ"BUh'3~Ƨ*Lׄ,*/`W9X zo]gmEclɑV>Zמ]\w_^u?=}Nݔb[> Ml(r~gң[.c&U.Z =+'rUQd}iy;Uxk&LΓ!4 ~/"C;δ[횅;%^WL@ !#>@c墒Ogeg:(.^RލFc*z$/|b{a a?7Z+dz14~ ^~}#8ۼU<ҮoaA׺Ҵ=af6>ض5yUېxXeygWB+c_Z v+&5+Tgw|7~N_yuesIu Pb;iv.N2}0_m:bZ?Y#9_cut/T%!/=\w⣴~KFh_U~g>6Y[{K;qIOs tթ 옝!UG:RBΉ%N g[\hw*'6>pvcʜY{+M0vShrU1Y)!oa-׆i0EX"NA=wcly*Hp/% sg)U'bm[f-h}XÑzFKOWR" vla%בv*NN |0&·c'ާ[xsv_u @>zj-@Vp<3[Fxܖ!gd3E_ yDz{o_RUO9^KVs5;sG蛨|mH7l6ƢoJ}A n7,!V?>1N)c &aR'&8Z;zQUf83l9NX/d}(Lv]#qOrcb=ʑي {ҡH;/*e$ L3!l'q<ﷁPEb9 W4}1)P16Zͯ8"S,}^}aO߬77A1;`=qe6.U|Jjiu$ci[x ;/gg'(q1gh_|@1+W3xE|bJ(ٱB}wҎw,c5)|Q%d},VͱJ-(F]@o[\K%V}/:g!w=j! ) ':ɔ@9wxW]M0DT ` Dy -a( ]_Q@g41a)2mbcosW z֙<(Ylo3{k.n{7T߱u5=.R磩]?}0>ē TY2gx0")r|,ԴjUayd-F]KlމE~$?!Fݲy c%grL 7L?[3|EQ&U*.,c}7ʻVԫ>_%wXVc[yZ2Q-N08N0mʎ߶I67Oq|6yKivd_ lt@߹hA®;H`tequ\gK"򬮻 lw,3@7&82$2_ϐ8,%CLI75_oc8o!'o[/Lk۸mg/>ٴ`!6;>Mn+1\,;>\8=nQ46);Ǯߺs}0nQôk<oQylk@9h3b<֝y^H o&+=[;}}W|`}TT1b{G]HroyyJ ˉr _3NQF+OW=̏ *'ˎY'KtO@b8i5m7/DK8V;=l#<0)`\]x1?fhOn}db6-,V.:Wcs-+=( qD'|G ֲXfh0g\KwWg]$_q`ǐ#'!/aHZ7j S!"OO0]\OۚIޓAvQ] *O(E*b5e'曼v{1}❼]&f(XV81m hu 4w˥s$k%4g;Ljh,47lq\t39]y =|zY32kܸ)RbGJR~'UB+E9yBL,2>WIk, dHMgbL dwSK(u#ZON07pTi0F/\[8δsOp]xqGi2ǎ$|my&Й~8mkǚd.LN|S"gKW.ZS+",03q'9] 5+C΢:vKϟ3vn#09fGPl V{?Ryu[RgR8 ]_*wCa)QЃTJZ%Vb8czc08>cOt֕dlx5v %_>ORdxqUoȘE3ɗF qa5O>8?3{HIx}VX뺞3!QUo$\ w)MDos<U.8qQ&@ xSm+"'g쩿ՅLO3lw#vA0|_?1`1  avk=a:^Vaf|M'Auq%Է~'}x"l<[]˻.+ХR7ʹ"$'+Ek6g^0&3,ĉ$=]!ge@ =%\𩝻㝯\/Kc*b{.?=G抧?+xJM0ErëI\1[\~4i ހͯ6;mkK\G:C%Z懶S{(uf6(^՞į~ͧ@aHWş #n7o^)9TxnM•KYv{:?lV9v%[=iz5nȇ Dz7@@~R[o@Ps=</V19ITċ:U=T&$We9JcTCVxzzBdvɬpU*N~sWa䷥Eg~R|(Z:_ۨpd뫼x hTÆel[r6![4O=w]z ۓ>s<#zTz-7ooWKt[Wu'Iy֜s# ! L`m_1.S[q=q*Ц7A䢅e _lֶtlmk9|ryG fնbyYo"-$t61*P:nFk"dRNl/&_lj-y]sof۾KrgCcU"S/Iw BoftafP$q9YsLw&Y=l|2$G<3TV RM߲Qyko!4{ـ_gB g-4qX&Kg]ݖd>^>UjT08f2+(Z{SϳOYkKALf~Oo#c_>d#љy09E @/u uמ5W;NwS؞?D IDATo5~C1W"7ߎP"*+mq..џCAmgQ=Rpd̰]cnaҧvfU` M,87s }R ]b WNQa9 P dˋ"Hplh_c*Y!/`JMUG#YVJب.OK^Guzrsz?е#c0]o⯽$z>Aۺo%M;tUdjFoa8_1Bn|>O$AajcP[g61sDL:{WNWdNqn"c Pf.+0] Qu\.R~rg_ J-WϪeב3|4N5mUM]?ke55S}.R(U.ڌib[_!Pcݯq朑V˵*pI-Գ\-񹙞6>?yo{JXӀzvUW@ s[E t D!7SVS3"f0˰o*a!"57rroߣni(g\Ԯ_ۖpha>@Fښa2IϠ 8#(V|. $>(ZCS]52IXf ȉþ~ϮikvE}u{l۲/7F϶q ζ?bJy>*Җo\K&ɑecgYOļqU.Y޸UWjW}7`DuHg)Q19X[pOvU>;VDA]&뺃۪:8|I?lhǎadŪ-}OW?b8ۭcǻ:_otƈy}Vg. W Y8)EkϢȻw@OazocG&d{_o!;蛱[9׌YjHaT̾ogZ\OUȂmë1;˶7yrH~L]|PzΝESb*㯮10ϸYTڀPa!0 \jۉg#@Q3xqn'BX:B(V_)Q[-Jf6OS\Xyi}>ƠaGkF: ۉ8}Bv(X _uK{gEZ*km7 _c1,-EY 682}KS+AU{fNjό''!~/ۣ}j< Z S7SS__,F_qğa+nJPÅ_>bpkmg}E|KܨYH&<~/Wb Д9Gadz˟f1V-֫rF?b OME<*A&=+zrw~UMq_sTrTuUlĶ:uB;5vl!˹K,=>LΛ$3͝-v[}d8Ǘ\8>.m>1j3ɛ?uaLTDKK]c]{TGz]'p<۷z/"f@~ڿ~/7 {ZN_i=N{Ф:"B~Z>jIU .9q )b6);'䂬n: T$sq_ކƆ(:Rz㱾?lx(~1.lF|nng/m|Qď.ig4lEئ;O2)^XELOKjI%NÕ,Թ>ky~ykg0G|2g?fע]l ޹ qx%/SƮ=]R]џ#N];_Q@ ^ݙq&k^LYs!^ ䷢.]:UrVx *,V?.xz!`OV'xpU!N }.-̲kN8=e?szϭ{p?GwҟOnz?Zkב'tг7 շԺ\D*.}.sC#;Qrh,WEwu ԋk7'` -oASe!|ͫNo&GCBoez5GG坖ae'v6 "/okVXUa<.[[xk0 gVp v.-"Fm L>и|X*zVdVVu+G/OfBˋԛl%!BB10{b n3dVm5[ŵ~@f3E- j4Կld29Ux\+>UG3ևpuM㰾 |_PNZly>Mm} pWZW-v7qRQV6W&N1#\ `q꧜X\Eޓ=oI?>靾m_ ~+|/]A շכ0eb1%7ğ!ϣ;GsMʓL]F/y'Lt#x;\oSwkɯ_ޣ k=Ee_YJ<-FSߐ|яhp'|1jrkd+KDMawS>rEM]]Vdi`cZ]y)Xl_sEoKϊOϊ5 ^2 6CF~#1Bg96h_EnFn  2yKuzYsJ; CAAӖ-;l$ohcJ\ݰ&8~+ ybT~eA93o(&◴x}b}o".U$~Pkm^׾8&72#trnUpG Q:4ZYi3~p"L-Zd啽@D_ zEigcy֨LVKeewكpT;H z'ьIjUSww>kW{t~w۬Bi;^$[<$diXns*yd`s6(j"/eq `.q*aip`*}`:&r1k̰hw!/u7:0YTVG7xze̦Ox4ůΔ WWڢr ؟=mnv"۰7+S:'n+/T,Vt%UcZGyYk9L$ UI%IvREڶw/z[E8YدSk۴mGU;Utg6Bv&(cEgt4%'{8VwEt kt~;:;?8%hQ}VOr !\Qilg E{͖WD;{6_Ӿ-Xx83bI ^~pO|ž++*Eq8/#sQ^krj4}vT|k[|Wohߟ6&wAW~p#un'<<ھ0tGҁnAC,ύ"kyӟ3f<$ӎ=S~nF?Q 0~fݹP;d~p&6;>j+isg?,n'ikpiiEfYJavoq)z-#6c.E03>wKW%ȬE Myo4‰a8sp_`9-HOf1WGn&*}w^ )?iD"d_P2,l6O#mCAfd_C5[kE-xކv>r27!^:*O6~qlN|1eeYKn,H1WCќ57o$X`:O6X?.{P[{vm𱼪w'ڠy^J-m40m(KKd-j}u\7ulz8:;QC=x;(:e]c/ W{_M=/ a`$\xm7W^ : ' [괾Oxͯ7+~%s~?͒ ' =pt G-c]Z`m`:Sf_PW{}4~0|0 ء7er-M޾6ٽܿS1ŽCo| k/ZlѲ?- OCl2ϰ v*e:5=ӴM%Z J?]ǃ3=wJ?}n ݽK|SbDʭ^UF']K4>?U҄!9MʳL.m'ƒ9v'T.?9 %x3I}j#X_N $w>Fظ}`4i]DBl]g TxRlK{9'pwηcqLƆ\;MZ_|Mp t{RޙWP90z^Gxljo?g#9,v^6lߎM!x埻b(/(\ǰ_~c1ɏKP>hObߠxlc{e"p7 XpWHgP^jE\|BV_ڈݜ%e[Ut:@I?k<#5aɀ^ȃxPn7,|[/)_]/O'q􅘞:ZxTPkk}W3 mݘ?\שc ˯>E<6/۳>e!6 wXxYn;H7{1wtLa~8PTO@g:(0q4J23%зR蛴پ /syY}0#x#Tג{˯/^sklKGz3 r7*nn|GR4ٲNf?p\/83}T1d\1)fRަ($xe_o+YrBZqoV4ھPt<M6bDŦr[Ȭڪ;T)WNv5wb&W*/{'ͫ}j/()7?^OX975lѸ<v3Sϫ+}cm]9o!|I]1C@ }^|\`m3𹺛, %l` |'Zzsh`GfW)*vnI&GI9:F!?]ys=hq1u_Cg@)܎KDfˍzיxKOCXd/ߞ=H(;@g ;81}(i.ȿ͓'#Bbeg.2H2/n6l%}⫅l8M pbDž܎gWG8=fxerȧhڶ$B2?7ȕcK/5]['<U乌ۇ#OG2)kHFߚc_e?4݃lmGߊ|#[yi ݒ1 Ʒ)C5c[I-j11aFwdox`i kr8G=1NJOqw6Q{?sgsFlrVtYS(Sbx&e<$m5_+t[;4A|6LvDΛ1¡AII4VjE16C٠rM=JC?OWp]&?B«S@i+Aa'q}\u+UyUVѧc~]/y"w*غp${Vt.t܉ŅySYgMoc!H_L?I<794n{f}ڒ=kq`f/{>m08._3+v*(02oJg>S>No϶1<֛(`cFkylYCpu)ڶckOdt)SyfFj#R{2v?:_Yći6#3g$y[ézrsx)$G6ˠ=D͎߯O'_%M?W Pi_`|b ^ !B~VI8lM翹#ǫ:B$*ԛ[KOmp1_ٰ $n]Zpl&?_2i8[x6?&ACcdLy,QcQK| ndd[1Nʐ252xlBQQT֒i۔eQ2^=Q;k7ƉcdΠ-hrl^O' ko5bӨ ]jߴ"~c WqmW1~#372޲Xx6'ᬮAD >UXvLC62ݜ7_ߎL'opKvڥzv|(y6T0v;w~H~HblUN=P>r3S`g>ҲdsF{C:ϛu}8an^|3j ]F;ON|a0n2swxϣ- 16p[:Q~cmmfvc{XP|⷇9?t`FNl:o 4cK*8 >^?եWʴ᜼^A^yZ~ߞ=2~O+2'N` :ОTֹ{[lcWGؗU~>; gMa-5u9 eeYEͬ V0<@D:"8߷C<"-7M99`t?V .:]]ͥQwPtPSAɶ:Ub mΓC9H!ҞtP#ozo]g8]#㣕ꁍ{ã-f;L8Y͐0et{q"yL0~W#M}%m9ئT pھEvx;XoZXk/Wm{^۬JHr?R+#@?9W]2/.SkxT ]?u]'"n Nw= d2kHx*,8'T'Hy)ܟ5\y{15dW0C[īzN^)=-N=A ^y ~Z"lo D(L//ϡ[I{⓻!O2BE N&oc ?^bi/,D.L r"rN>G>ߍ7[{P݉<2lY5\Bq%lB׷ʐhv~amGGOQg>mO$d]9̘O+PCGEowx=5.=36F{ 7F"xa \C\!o6Vhr0af~KuEY ƦgebE3B&mTmrMza|jٮΘ\0w}SZ#y`_֛&@vn&s!`حq;!(os8d:ЙSxֻ[Be^l ~5Y܂=˾el kWCWSkWź[Ih'Msڷm~55;{@mBmmհzahUB(oP\l7 ?z*#I[tRªng>G,8j6~ܤG;?23> k<%# nh7yi]-#?A鏄HÎVy*h- _Mbס1.^{,e2iVI㰅Gd1~s)Ѝ)TTX[~r)UvLAZ{sy,VsyX_?W1WdNTyTCB U;d˜~vǦ"L?=xowc(_iUqp].qwIH_wo>ˉXNOBb_HPd+_hv͗y2wk὏19F%!Ej #1,q@Vھ΋іKʁ@c6zێ/0o-^g7 )7>*%*ّXjQ,sVJp=_K>Vdל'=Y:^ 1^#u.i̩؆?aZ 0ǘg-6f]{?-}}.ݳv,@ 1s|hOƆvd\m0ۜXYMKnĞ8V|8x lP}|t[14X&mYE|H-rH ZT" EAܱ2/!/-?!k^kO۝ S{_,fW/ڒÉ穿?+u@6{v2AG|j8?G@WlmrԣH[@Ue>ua4 ɔ oLrz<‹I'{g㺘eU8ԕۡdk*9`ɰN+%bn2G~̄G3Z?¦"SÂN2,O{mڃ\tvYzPL@)@TV᪵=+7S(S^Qg,I>=kxp"^>'O^[͚=Ya{ZJ:¿C|u)X7;Y >0ؚairHM^i__'u:]WN%=ǧң->:@h.}`vL񍭸t^xUH}>}a֩_֎KyC M]q 탷CLaVo;Mp6(v`кnCGuu1\;@b{9Vq w 6:mǂpNc *xAC xׁį϶!=;}-L&y+z!N|ye|ZLBN 6^SӆںtVo_yLvins'S-[éoy0vy5-8P8he23L_?Um qk[ QÓy;W56}a8FӼI]pl1VsLpd2]mO FIV_o+-NNi3ʣ(#Fm._!J[>9bۿ~_zOЍu$FER}q݁ZDdɪ Y%JCdIO˲!4km=:?D!+]ߙ]z[IIܶ?z[R;oe!m*^ :%uD27O1Ʌv<YtƺclN1>dơ>/`\ƿsڟ6Osm9XZ7.Cde~EzX4hÚ=J pJ3; &nZw J(SE/Ӫn-ᰯP}{W$:&ɫXw%, YPb˛pR֨GygW]ˉ&Z@Eml?G_/Woy~@d>XSi{{-b&]kG9WݽQ{fPt5@<:%c~LHHS$?a#o_am[O?(9QHHeA^lA@ >C$tn̟cr{ 2۽2^ُ,m_}tTmVU7"‚rm !Zn@D4C㸱Op>)#x ξ'< lD.oNvhS[)oW>~jnj?Ԓ'I]FGW;8_ek78˂*ój=`'_[쐳:XRջ U3z#~Y8M%FhP}?@4o_~pw~ۧz;ol89cg'sl Co~6CGgJtG!(zFX6/&'r5ˌg[>25k4߀˗yv;6X/!шPFn~+͏KXEL d.g{ڷxJ#aDOT* ;lYJy)- IB |9[-[GIC?4z2.tUqD劼V- y'׻7Z@׿k_IPӜÉHDp_wo#k#Q41btWwpJetw'*Ê<ɐQ%-J2'yD OdX}T*/j ެ]z(ϒxCsL@ 9 ޤ_v7~0 ؠ#/P;$ىNFZRWoKjhVJ'ڴ6͛CQ.@A[Uqeg-;%<7ROt*%ki\:=C.GğB|vQ1 !}*Y};6^-dY^Й[>K'#1x(D:`me=_%u;=䓝H $Yx+Uh>02ӽU wNB<\NdOO<|4cn1_JOpȂ-ϥ3#b-P-b9 # 62tHFkrޕC#iډvv_X})c.ickXx`MvqPS{8qS4a:1$$?(G _9&A5D0άMހ3Os\#6|-iI=^+,xcHd!z?%(DviZb?Y??tY1Ŀu|b>Gh=ѷAono7cM>pllD._T&Z'@SY2D=TJ4C?1Blޮ:D6nj &}׽>ـWIxnm IDAT(ZU}﹆և!XJ㧱'Yܵ%χy6摊_y;A MQɇ/jwtj<^b9\f}лjnC95[cl?|G}O27\Jh]1} ij]~vYmCNVW-lߡB:fyZ5)O7]).S>/4ħsf~ZfIc-ֈe`U<_lMrՑb'l*21仇J>qtD9~Ocb3-P9TIjuP` ݟ7[սtv/p篬/Gםgcc˷!i۸MC&>fB 0Ou6Eay?uݯWi2Gx8"d,D Ecl'eN2؛0'q}&Wxb{j[dGPfF'NOƧĺVW@?9=ɱ-su {h=&m#+{f'mҡu<ΞM\úOQiTʋo \$h>PTD}5靔;##R^6hz&bjO|X+K6|5$mjY6s(XW!(v5],ޑ.sզ"ŧA+|]UD[H0YqF'*zDy:eW: ;ʰ"'1Ux'iןx7q rmw|zb+/ä538/{M3jY<Ɩ3|&f|nL[mb;n^N*bgcb"c ۊUF'|[7EvcrFpjtv ٺhL-Sوoqpn4"9=%?t{RWl=r*f-efj?nT (it?ٓQ133ֆ<+Y,KxuMIAtnWx {9ی1*Ա?"y9C:zR?f~lQ)hJSή_UL In}h!)y~%|Ci^}uH -eoU<1ϧdMztOs l7V L23v9Gw?MNhXQ8WWML085wě`@e^ m3~Oׇ^ku~89ŒB,4_νSy~]wf|oٵ  .l[:դnk,:^m4TE |N{\]^|z LWV{n0< #ο?B_҈Й_GQ}sO(֊3o2}rمF/0/֓f$.mOfOY[j0 b"nbuT|„cIm6\iz63'w `/W۞1DIHޫ>NʆD{5ٓ|t>ΓkD:+T$qo's(?Md'}vJ'8$Y~@ OCI{.Od/jyd\l/~OSʼKW C=in`A"wog-꾎9ByE~L&#i z_95̷Е|N{H1ɧebe >Rybk~z.t!N]yq|ޟa:~Kd~6#{w2RZ~7S }Pqq?6-fkKsDxl7U]c1*ɧq4Վi֜ԃcW ,5lO4y 4s^i՟HQu_HPr[=UzrL BUaѯ]mXzʧ\$,xWVHT6-9>b<Z%ںl.Wv{l8󱓐!&5/7@Oi=ae87z13=xΞ|LvÄ NU"2}6i\;|FcaNIVom2zv¨OJ:P cK=^w">6=oiN;ȟoڕNX@]H!%{bJWY֎sNK !Ĥ3<F+r^stKzr?Kd؟e񆉧Z50VR=\ vɰd`Y}3@5|V82D[?;t~6VzM(m]{&;e3$]GyfGٷVyY(vKʚazpNڀdx3oq!|ں-uT2!FGVs2u5}Fxm4^>?-}!&ߊ~{ =tP|B} )yU!+ERƍچ_ÜFS%:#SVy+T?t&` &Zvs^n#˘JգYl f,5޸Dťv;qGNJVS\ hno?s,+Am9Q[5̡Xr}tlmRfԝuN~΋Wi KfˏktZg5(Ԛs牫=ҊJeu+|x<yںyO$r8=ͫywx=bJ/c_[qاM'L~St<AcCt}߄Ƈ໸h\[a:*lduSgy|j >9I؏zCr[ |qOZ"0ҷuo[ DNNcA:ر{皭 Ӣ997ay{ IDOIFO^ur?vpE!@%Q|t4d 'sh8~\ ոﲎLoGIYkt>NU^#r(;nU_ 0rF93XD:2^bnECK36_"|>TSJZ:+6xr9 %e"+ `QF` &- ɞ 9 \:L[<;4-=/|vzdqe8^aAH_Ud%>9=i,Bq+OE,Km 8RX] 9Clg8e{go Sδ!ܿDϾWLkxv[SR77oB{Ew͖AvhL=9뺀~L_i1;}apFuvԇöQhJ ?ܕU!8 JS V=z le/Ru*| HKimh#5%x;GM}3WUӉ9{f~ztbiēn'J&uUۣ&װ:59FRFc˜+>k d2VWeXMxe+slzw(dc>NTFV*W_7>E Պ̆ǒ Yr Fq_^f:_ed>G#W:Go6̝)n}a (zqi FtdA 1hl}魾|MaݭYpcZsD t]X~X$a u{۳޽~ӾًA[~%<8Vn {Q!zc>(UiF6,.N؝㖧yW=~H3ݠk9g+D<#W=xK"=J_d@ڧc3yBU6V.ms.'TCNU[S?G5/6OcueƁ2̯t{an6}{K̷3|1Hy qoUҘ|~ĒjAB+S?h'džL0Ae>Ҳ,MKM Gʐ|ju~dϤ2:t^ U/g<"~_jxp9?8pCMs![ -PE[z.Y%&}{\K7;I2H#u')] ,K,o5{;|&F } 9'GhA>#ֽ!|,o'&,1E\Z1==Ξ+^˃G}O葝dpʙJ[/ mnl$>n]}s-X9R>۰Cְ \IP=oEfN^[F L:Tr 2-5 skL{>%ݖ&ǦN}re;QSEJ =b S˪v%YTyf{e6K톢Aջwl2zA{A:~>Kɯ>sEW*:bBڝpVh2]wYboJg\'Ne2 ,n َq`U4g."3=U<~㕵'*C^/ߨcd!]zLeⳋ<=GK؃~ĸm{'t>>_lk!DnB; tbO{iaV[kWPVE&{􆨔@j{o@C27jwloߧiϧ=~Eպ3فд/ʮʝ9^"'fU8~!!Q=F}Ϫ,[YA_le{>@jO vU-wT=2Ag?OTGeȣ_#,ldLN9y~"C|,N$Ȓ6氻'`oW./ӹC}-nziҽSYx \; &2֨r5 &S5rrsS%(rLiHU2VF Z'Wd2sY<]#@NLD`Z9X'-_:V[ƼdΧN["WvMO ߈ESs#|eܥD3}ډ#of1Qʶ5I{ʫ6g}Ұ&<ƻw>_͔n6\À×{ߟ޵ŒA X6n'ss^JZҽt]gENؾZ3d7*/Ƿ8G%<¶QաF<+X9U[^9|w?gv<^BQS5Ibn5=ݕ]bF^H:=?sk IDAT^k& (;UxD+$EWTUNd޻@ONYt{C ?^x9ϴ ڠ&WtXMG|+X[X|ƕ+|gX[)YD, d$i;4v3lO &OU,,8# \R˲3:VyHUWe=ItL56^s"k?wkX^08NG )oL~Xh[ ( 5P?!^=eJǒmw#&xv}lG,wr%י¶,ɺ guߤ멐fDGPXa [@oOyfۢ9)ҽ/\60{ZWlt'B/໓M.5 N,;m bd7L'i'\ ϶GނM~T6EvH;n;: mWexit&pï`;8PĆRtJ2#-߯5,DF[lI{!1/6)-n"Zvh$;JmS(]X;.Ƽ(ab 6U"PoeEh=+b$>x)>BX/ o6.7`Ɩwi`'2Uê5w ϡyGfdԴ.nfˑ )I+w3Z|r:yY8_CB_"eO-2YwwpuGVI #Qf0&OM!oDbJ뛹IOM[mE4,y kr2EZd,YVrZ‹˂q=瞜![q&j,V;3D^؛ENIG?Q] f]A$ҿM8hŪną3I?9CUf?m^ƨDgsSIC4v9^ٖ}.Xy;f=/_F_6aO&tuc>\xwI?=ԺqC;dsާ㎍druDHcU|w;ѓ"T*bj"OX}OΧPnܓgaz:fz;(X?Cx{L&F?IӛazwB4ȭڪYOy1 g# t%/ͯ8n**< lx #0 ኬ:tzqFvC:`6ae%l66X@"1s;$ݥ҆{!6UxXz+WR M,`lHMmaYmtdi@v4L y4+KKVFaj~v]Ϛrk8>v[]vGj;We=VJ %0Xw#XOkx&M> ;㶉$k14?Ԗl:2bmp<ٽ$L'LS(nOswm C [\>>/јq'?N.T8;{u!&_igJ9o&|F[ uۿ8lJ$yT{|(DN^ηο$Μ})zsq ֆʑg`d+O #[^{Z ,.dfd2X v)l+U{m9U7V#~{=  㥻}rsQ?P*%Yq<-7pŔ4Kr(j,YgE3[vEh秚\ldF]G2k+qA\.$nښܶh;bm1J0]#$?r<#s!8nn60.RXfR赝&aUi;BϥNʢXrsKh;6\G'l?5wXP|!bp+*KQǯ)ѷU:? kTۍxcZ}n; e][EI?5wv]'wև6iVƨ]J)}> gmIr7 |NXx??q;ۺ2g/ͬo.?-~ y|Q?Kk8?lhƜj-Iuf)@e-[XD:hHhK״#}SGluGn% Xo>4z}vg]8j|}§1`Դ=IU,/8?jo:4j37~[pӿvsI5&qHv *Ɗ &=kcxyMGUM6it-SIxVރ+,+~QȎb[mgÍ2oW!2i_xcl*_IҔ'+A·zWUu6 pv󻢫B`?9]{BK*?Ӷ!rpOƉ tCx8_37}1c=(kα,ny5-7*@vO:Loa]?mj,^~|_=+3מ޴Yalc|U;..acXٯTNN,8}+S-${eeXj >33z֣7Jkv| "*` ȚNNN,,4j^ !+kW?E#wVᒰRJZ,T ![s!,YVw8<͉O褷m`{~12Ԏm$a\1{Q.&P#[G|,ai\џ!ƹ|)"JH]ӣ* \ZnQ*`* ' ħtERy&>E]q$n#S>~:XrvY_$Β6$$_x?Ӗ'mLކqo2/GyR$o"y1d{ 3GfE_L˫gSx}ٛK/Vwӧ5rc0mlı>)=c*1M]cnq~hiuȱچwmbsc; z>(P;(౺?r}NWFr,BWS{+xҴNa; =cOꋇ4[qydzm8]'mz*oK:>M:V2S˛Yj?Y{.x_0Y;O~1v P`0VAR[Lja JD R%NwdFz 9%4n?'XDѺ՞؞BL-qxgj_6(>yWӓ.Z?V#5+$=IFMUP֜-L=j pmښ6J: %6z?A<}Ÿ *|9<ȡƮ*p#ە>UUOمml͋^ujdbebIayHy SESM"j[wوQ%.Q 8ɯauUO',m6t/,5k*pljZYej#J@YtLɑNʙMUIf>+ϓl` @Ft;. u~*|ŁΊV}"V̓ZH~UIo}2,J@k/N՟m{"# ;Fx3Y=6F 7]]T=eBGC.iGpd'XnhxG{vd5g2^.zVF5?8Nshxٱ%Sy+{Bsd9sdlڞD *J٨'{z~uPUO+~s;7(U[,KOzL*{E%f tUWw5> cɺoWPĵLWE|PN[U] TezyqAFO=pxfHQ[PORu:SW/K6e!b>Mb#Et2Iowb+p<9B>-C<7OvX7%Lq'kp+zGxR_ϑ?4Ns*P 'jOy~o~O~'=y_^k3=jn`xHcs 6*t䏮) zȖy/ g:]{z.C 2dl3-rf+vx;΂7iQYSO}1* C@avD H*W60 : V1,C[Hl3<k:áYm*c#Ɔ݄L+Ѿc[ymjR,ʀa,z2l)ۢ=:{|,/i2kTmLϒy,_[YZN; }rw _xLWv.{aJ5\:/s; 0o6PdK׊NȿX[M>ptt$gq`̶w4 Ā~ W=ƓO33_*Wf΢y|_ϓWFؓ0 CY}" چDXca(t KUH:лh=s/`=N ym0n3m Kwb6Űog3ҫXfwc}k4pijӳnI H#̶4aF ]x¹hZI ]͔-3#_q4SP\$irv|% kFgNgae|'NiڪhFQ$Qkm,<}xlRl3]9/]?L "cY 4mYkX COo)?TutKNV|uLT+I{`݋a>y%!Pk5ipG:d$!'P?u kgOӢ1?kط'z?:S/Wn+RION6~z]`CM] ڗu״.P'ۀp6hFhe?t2|i osY:;!Lh: ~M=Oޓc.矦");$bg}} rH-c"~W\qv^ :|4Aqު Uv bmi= #szm../m^k/_6MG"=K)o$߂_+8֡j!od5e"S֦;})PlʰNj1`?(/sՂ7O%m-SeVݽ(]gІ8PWqY-b ~?Me)NǓ S]DOZc AmMs;o8RӱeOO5k,x6:1bExO#!?a 0(JFgMHCuLx<~Y[qϜF~s;wؚD8m_V\ӏ'ߠĈ IDATJ UrwK81?Kvs#sIμOm<K# oLu\ϮD fŁ0 iqcTOCYmU6"9S$=J:6IOW_Jjv oe-V}>|Ֆ|f^5{aYeܔ ~%A)>1| cY>8ÿ̦I&yvDə9Q4lX&eceoV.؏i@lsƅ8 _\?>ۏd5A _n,L=m]3򧥯Q?lx@}WWև\GN~10.wobugڽNsa{M^Y[*U=k!:'?z+$Y!Uwp:=z@읞Iɝ|Q[SI>PcDNz)"‰Ĕ; iaphMl%)'Y'MɼU8h;{frѽZUq,oԏDKo/׉`+j \,:W.y<'φhW'QՀ*QWe:3KK{9VׁsG^EP82_4Q'D*L1c2s1"vo&Fty9"6cST3{N'|NKnL 7`Pu}/8 :7xII B $>ɯȁfxډ"N׋Sխ7ߡ\X~qm{5DG k 5*%pDEXLb[[Z&ؒc i6f>y_'ۤ#e1*/NO<:~%s9VG^?Xt+6c||sM?fpr.⺗"]g Whw}#h6;lqq #4wӇ8Шmyq{^y,K)]u eYK[…n"d |MMK#?u0, H"Lez h.p6h$ aqI$EQt#ڡM@sWizj]U+QL"հ2FQ qW|U ~Uf (,k[55PbȰ ,ӃwȏE _HU>/JR 2yp[Կ#NyK@ي[#~j ȧ_86cgnsb3kݷ|vqDo6`MBxԿځlW~/g fX 9 ӂ/lY>{m4;o6ϒ}P4֩q:>Dey(#=WrZʉB-Gԟ{ϠPA^sw(d_K6{+z/65wugtS)'z}&ek>ݸ4]G֜z6cJ+ioPڋ3a)aFI[  uU롱poMO6Ŭ; cmu&0vRvNoÿ,&tUWBf]9<4tiiѶcH=ԶWm/ڋ| 7LRkw %yvS@?uVdE;ѓO,cAنߣFY#q}Z隌1񣌕4K^߶+6Ka,s8S4H> jf9sL a-Ag)`z6m{A=yҭ/b[e ŮG/~ ھSf6="|C4"{rNZ_H{PKdɸc =wq!vL5ms>x~!0V^+=V?Z6 Zc7[|IUI]Ls8ğYl3`/J1 f!l@2՝RښJ]x4s.8 .R6.IUz<mdժ\tT wL%;۵m\q38i+OؐC,Q$@ͿNG/FȠ]Vg04c{}(&a~O|> t1t%Xȏ+[ VƗ宣ʓ2~'j3F`eҕ5 Wpy;ޫGY9N͛zvH$o`{5 }(9~,N5 ius}qーSRC@8Quz|M{8^k7TZxVem5jbrapY(ceFPcFT*[ç<-l+7D\ג#ަ GUOp/d'[2WeM!Xշ `AN >EO&sXNz9YRQ"7#.QW$OӕE9}5xqFZ; Wp5ݨ#YN)>ucBL: 14I,QJ;+ %C60ѽ kz*>Mאok쯱.^1`Y&l3G| _}^94Nꎛo8^:tؿ7` qq}`vi6ܥ+'c݆GoU%c G%h`WHcNae,x`*Iw޳ٟ5\81J2gX()o~׿ǻI=3 +fj7yd?Wl,Vnl?LoY++ o>\.Iv<7gx68G=[E#.rd-Ə$F1 Q1+xpY{AO2')ȱ Uߪw dV +B.kՃ<ڦ9El-KuY,iWO":lٜZ !6z a|QgpNc;9{ۙSYbUn 0>u'F>&@ii&m.{q(F 3QcO G]3}11cE񱧝N5606ۋǴ~.cz}W[VN_ <{돷4[?F_C.2wC[GPߖE)R<k*0HΓhn 's%|Gř?~҆BMlܻGt7];G>=O1{nzgcuvmrm(0,k|\[nFڱc۫ j[sق_+`b[61 %Q bS\+ig`;;ۙI7K33Հm~WihK{z}0[Շ8IuQU9)`va|#?z`2$C>q}UxОP>a`p!IZ¹Dq9Sq(IIo=GQy"E\[Y>"mi3[#CV{rC Cpd8ٽks.{{uT}fwҰo bvh>Tyu1 {-8ts(M͏ o.<>6p-# iVXNG= &UKm챬+ݹ?خ-p {./.neʦI~|Ə])m<BЙšd&HX_Kl 5t-?1ӲxI*ʊp׀/?K`+L9gPMB)_a/M`W>d+vHB0:!lCK{kY&P%V{׶d)+q/sL`IR٭n%%_ʐ%h(;RlQ'TOY> &AɉtC;em|zM{.ѫ>1MbW{]S9Opc36>X7cvW~CE`[ C?`xLn mN׿.[x[}z_MQTftMy)ј'ݷ D=2&SzgdX{kM{ȵ;=_4?>s>T+*J'@եE'l  YYSXCe)Mԋ)~yCWn,ju \PٗY`#.W3P x5LAxr/xdh:=:a*_F߹S4ݨ\&TLɥSm}׼Ŏ_AŗaD5Θg%T.%#f'o<ϤgX~gP18^mS(6Y,t?XXN@1^nQv9 N{b9i`oY=!ڍ“E83_>I|,P~<@kM?X#sGN-х$u묃>JFvZ}J}~~26rv̚vEx>N ~\ߗ}x~q3ANދ}(lSNk}TCյ?َcbTLn߹µb&KN`bvTɇO^Qlhbr/!v(>R^ EJL'4;ēJN;_e\n%I7\xc4{ٴΩw2 ~ *T#]Y'HKjkp{Q|wgVQN `'`R6희w`MdbުZ^1L+r %XG^Dȱ?4ݝdcuz)҄$9z^?OXɞh~Sp:Lx|T6{ T}xDR>P9$)vB8a5kB1x-vS5'c(H B,>/kjLs9\X@?y /uȷQx 3;_#n#CƃqES(۾GvU'BWn+k#- /sO]'=&&;^bEY\^ d׎\qFpSLMm-K}3G6"N=: &fE[[5-͞Wv_´ fL7B&}Pd0j+d4^(iDWy:"O*o(7g rذe͇6^mJvo>:ǁlanG-D@;%F7g۴^&W>#=n8}RgZ¯ҍɴ Q ?_9 ߡ GӶ֯2`aW>1tqu 4䈟 FuO 41jgܔo$kHN*b'Sni~/::8xߵ|;Y'?SE1ZXӸ|m;si>Q/~ Q;ZӔ[@ctp)'17m=s7,](=7W.L٫Wt'GS8ؾ="3T~e=ǦUaϿqFd2wc68JHTW,U n/dxӤWѵŗ]G;/EL `!חlX=EOnnr_=)_SqMVQHLom@aV1Ĺ 5ÑmTn>{fA+-Ve3b22 ynIv8@~rc\ԣ_~؟My'[75,:&[d(KDme{L>쬓Bmc38Țu:w?b?Juǫy+Vu'Y{=Fө^IOddromg^܉M?ww4$j`ZUX!_i]=l]Pmc>.k.BkM ?eSѳfk=FXRr۟' n:y#n˚:%=k۬>s~Zk'8GaBmm[>u>wsWm1g-5x#xɤ-pHboZsbzظ>GVok#bQUd5ة-v^1pʈ-7}'=ؑW$)GnX￉L/(U( =CN>H%t>NncDwLcOYg RF-w-rt.wmT#ƃ6$\l}w&2S!"[mi[X> }LH6;&DC$EGl$JGIUWn)5NU~ZNmGZ?^ՁEV*[Rةm'yT6$̀ &&,s X;_dS^4W>hk =yNY( 6bڕ9ۡb\wĊaW-`W׀|=Q},vonl,Kvx|||%.[s,ObU*,_]7d30% P3'e60*._+x<iqfcOTq&$n1H.oAK?onovSf]k8B'vn{qJi;}*_(u=k|)[Y  @+EK? nߡelktf*[O1݈KGoF< HG|x{_$/l:~3~w?Q闦YX ,\mbA>T=,4h#!PAe1יXWo'~K!{P<~ vڨMYOR @`$EfLs}q:'}E13ԅ[L?xW9IR=VlH>61B]hep"ltǼL K~uÉ;ǞzFl` y| My$gGli yQMa!7Ƭ-/ꚵ-Kkt.7}{iNJ=иckײۏ#Uu70kv>GX4qp=ou|Oy X=m] sCLjQEl~öazNvnWuzc4Orh.+οjpם%PqOBKy0yGL(?AhtA󋾳j8V5 [rpQo10iLΟ.ߘwm+TLR#*%J$ka9fݣ(n٧#BY'bxm5?H4i݆pчu.O[XCQE&>8HO\ o1~: [t/ ;J=Aj̰ F5q)2Ok3e^DGĆX-T =ầNQy&eLJ'"x-h,:3vιkՔ* [Ƭ$◤# 8< cLOChp._ZѤJ^ p7$ vF!7AjtUDVӿtv}社(7/{jμE]%˥[Ϣ$|pόC@G6R%-t*WB`SueBVJl&G[n9ugmcT•`7~(&wtCOXFgwl[ރV8zx̘gd:U3uo_`-Ƕ(ReQLy@4k5yE/kla7oIqb!bamHb^龊O66H]/6KP\7R)iZNF5=/l-oH'21@hyQvہosgWk[=EkuSwbgUۜd}!@\?֫d8*Z[u~OϮKX ;` p=ev |'ٲGᔈt zTl].ؾxݞ{$WS5uAUÊΥv5,3zlb[(]+.:jay qҽ " 7 I|Cm8šjˬꢐZYciK;-.&fW}r}{) ؓWmgBD /6nXtSyEq6 tT]`[ 1=XL~#wU2g&X[q% ~ ?s\[kd0߉p<ŧj-DWl߶IʇGi&F]2,^m=`Ǥ؏A{Gmv !^i[2F?ۘԧxc?`r(6ߢgs]mqf| ~nFOQU7Zw7Vz%~ݮ\?Gzoqf$CGb;Ne\_#帾/ >'c$WI2{MxR7=_GQ=]r۩?J[^OOAayyx{?1o4N[`J*j[74w#n#1+HG%7Q@#^Ƽ0pMT"Gfpekƭ&{x ^n?SV^ђ~9A [raƫ]߄8I~u\|._LK#7_[Lo@NM~;$3N;:[k%ak{y.Z|Q^}g]S|zNe;[]0"pxퟎl[=nY4A]4LJ*tʤѱ4])N.ձ֦Tg80[pPk;kb*^6:rl =`OKnHֳ4ℵ eEeKXv_zY[jvz-^԰P͙T9$vQսX s1|56FKܶuuF[`?ǽk/"R%N]:ɼbI72_15/C¡kz ;S>}yօlV|bBM<@?T60L*UIVϏpo4r 1y6Iɫ &ˀ8^b}>Gr\|3Z&mPzU"ؚ ^ܻD7=A#%Xl;A﵊~][G0Ol+Cf%Qo㺍H?&#pmP 1O<|2|ZMcm k~ u2_^;fp>m%]\4MK`|!B{}QT,yW'B~)^ D/%U2'#ԣamS 4^*HT`}x/k(RM2<1ҷ7U$ K].(iL6S,Ӝ롪?Kj4uFv"7i>z4nM/ʫzN H)%`2kfC'76c*sm\{2Wz&éRD<.0KN{_ki\VC'f_]|9I3&]7~϶Ol +t4/_xm /Xxm _שy -(]8XO2lU=ZW-tV|xRCTg"VРd%}lFܞƮgldzP5,iO|ؼ׿}| m0s?.vQsX4Oʄ->PܗLhmݙ!Lan V[=lPcBmaOn:G={+#шiF{YUƲodK:L9yA  3YBXofek16ı3V#Flt۴si ?<&^,d*ÏxJYԪ`:eƤav}B3_(>"&Gd@~uz#,e~nL!9/g3e}AYꁔ@VFWOк}˶3KOw6W2#uv+-|u{܈["3\D]|J{L09l' `<(V07WMً=QKE>sŞMNo.64뱁Wv[[slg$۾>ξ;j}9:s#lcJMν|.ymI6kKo}9Gm|o(ٞū^;_3m#[Azzöb:huI<{xߵ `*%8HRjZ/Om_ZE!먕[2ǤcxEq?32xQaY!rVCv }me=Vu2]7/g_ IDAT'W::9/_QFmXt3hgu/yoRH?P`gr0>D $q+ol㻣cK^iSFT~i7Tm,Nf'(NmSV%892֧⁸ԧ?\0`$uy|%ervtn>5?" D -㐐b|Oa1 MSm18`Wty~dbgg.7 l{4J[;~U|m#npX;E">p OQÂ>jCrǬۅ Z]Mz>˿#[д^}AIQ%j7yXu)dZюt[&w]nVnzc; \]wq>%'. L**x9OR\W=/{>_/(>&%)q[o,LɤifUW߅aK"m1g:z1oM6?%P66t奊{&%ŮoJi垲CGb^tOV^65)nG (æ6^!٭0-]~d; K9y0iK,^؆d'SIKؤa ^}O *eM|z#,o ь‡COE }bn[H$ Y?H4{Q51(m!B<`=H08:ӷ=TXNc<3A(op j.ydtK^~wv##uwLq|7 S}{?lz0Υhyej V*O!;Xe)_>Ix[ey,]%/'GQnԣ3nK) 1~U 4Z+S+GpS ݑyƹXUKc\X$ngڰ4T1~4G:n< Sg29TX7<6PR66M -1XKQw[N%- =i?SJ79c36juQ#\Jdþ]݉n|feY2!I_'.z^9ƞL'Ȩ,!zMbF9:ʅ~5߳= {OXZ[(f^g+Nǹ1&->ze 'ɍ?u8m`vbV?&q6@~S=샩ϞWx\|:#o>Nlzg7ae}#WUw?n>#QuU8-D9N@ݯyd,I2:KG{z3<<@ ԁƵ󽱹#.oU>v=g Fbgwmu052Ϛuae&iYSVhaFXW&]%$7;|P=WXx[>|޸> L>!A:GinDs]Wr",9̈\gci\l]ɬOX=\OIc6"?#54a-՛C˞ӗ͜ǵ rwXn(`K{J*S&@i4xT7.uպYKNc#rj=>-¤ 9~7٧lI-qdOpGS3\ F n[{(p7?5ꋚ8~<h+w'XxSDrRٖxsym4V=9F\.=c:/T2 %?d7R:+YIE"V6nӵSҰ{n,0#~I;R8~+Ӈ˵XvF .' kޣ&{_KX^SVf$HE+׺N|Hi{V׵¯wd;`z*w?I(8j޸N3M%&}ӳ*&gx61Y16hlHTi[z S~,1-b\Vc,6u",&eKrY'tm ݈N7\0;~i SR`EVZv?¸7 eEf~a ϊ=j5*)zQa3l!lJ"-/dܿfH]i }o-?!~Ekh1& VB>M ~k\aCX{])7+}ط>iع/rgH73ҡx(n&GBMňLޗQp vb7luBl16j3Zoʓ#hᰌ*=nD6~/P=m zEk^j3oYߟx/i_A7|Y>9 yKFx٫mA>]0q륯>'9.",ƙдFlއn_e|B+81#\=C7jA㙏=ORn97 \^w{U59&:VgVѦlMզ`>&fÎv4VP(ӵN]wuTw3Eoc?Ni_7[B:`Rxr]qfOl70>F%ٞ׹Oޫzrߵb Q.^EIƱ5$4lXX29 +)a :6:K߰QS0995?ժ[軐+ҪeƪgMZZGD% ؐ N'} .+:mQ+:,JYcpotA@[_e"Xr*,k۔a*[߰qmw0|S(|íU۹_n?h2i)[o$e%[ LOO7SG07jLM} łzA$S}萅♘V`%gCMhY;Sk.I];ruN4sj# }ueOD]e"S9U!@!;)8T%c}8LNs`6%:|C$4( KF4;F]"%V=$1A8N¹AJN_.;ىWCkW(^ݧ|5RfX{O+רlw?B~KԨk D*/Ӎ8Z "۪H?Q~НQ^;MhKR#OEJxQ [}}`a^ߍ]gR>f'Os5ઙ-I@E•2bY9TLV܄-^d!^jD ''89.7sVuox%I]7=CELhNP?WvK7QztHSMpb!X4i]lRX+}x%)L% 2A|m0[?W[Gbc7l'dqØT:a7xvR\Ϋ:uiDU/]:ű_XXcK|zrzdXś>y=1Ʀ,lRݺ>3;]%;t?=wv~>_;ψ ?]17=[;cb<䩆ts=eOOo2lo#~p; 4L}t9̕)%Hqg+_Z+4yZ=tpcPp,uz Okz Eet|݇;+63Lgo/*E0.Ok_ma7bIPÖqg_)A6Fg8/UV ׍qS.w/ yx+e>K=ݳл/: '#^dm3!F"q}xh?UaB7O\7?Z왏&1_.mGp;C#19q|>I^K=j3ue'㷔|ĝ(>͑9>$?23?6F/ȿ_Q+DM6QnKljyEy_y|鸋S9[aKoMuk/g8 ry@ёF7SkE]TkݟcgQ`oݘߑwx-ӽ)L YxYޑqT TM6D(!E1ٙ}+S]uŝrUP[Dzߵz ŘU_mkg}Q⯣I\mH6W$NrU&9&ܱ߱Zi%hoMF>3K_2X.Kʘ)&,f+IGQt܌E~`9;|x^ST&WΆ_9!"l|$OooGiK`e3֢zt3Ȱox :넱%xbc!i#$|6 oբ溹|Wr{Cqm}׌{);?_ XpwH}lZ'z9v_gu>d2_xz狏El#OD\ ru&ia5?Iu,6^P<ܿt^fxa,b֗c<\"XG=;(ޖ_ }zbtŚ;LDp`X1˰KR~ OczI9ռ){^U,lcu4>']&U|MߪxSoyB % ;>K1}q7\Iej1{x`S`7@ \0JIv].HX)e/-u-Ǘ&-8ePz<O"ˆofS{MD >&‰;aD濵E}Jlɉ\mBYvEq!;.JJYqB>g'"-<_817IoҺAimf2KN_Xr9x2մcPY[fu0F(3,/ Z2 o gO@ bSD 3cT?1ỉ);:d|+)5mc*k]?Y! <_ػ4ᴦp)p OɜO-P Kv"IDzPO 꺋eQ0~V֌y(ev]ڿ!1ϚM{S4eVMFJS&oPꍶuRiFP.wV5I)?֟m6(';x98}WthPu^>&NC϶PVVҼ6ke7zs<Ӝd!4g)Ogt{~>+{e/{ű?ŴlSϱx:1|'6a)cvo6jbsb|qɷ]@6>:cu:Gg-_nヾ MarxCm;w<`,6}sR(ƨo߾1vCھ\=UCɚƗVݧ׷mW}+.o+Mpz}4[㼼grdbrRJMܒ0O .ŷF83{y\L3:<5$_wTD8]3=G?G*p\&\g Uۘ@3!uur;y6ɨ]hs%x†ge1dd_ɺ2?-}L`UXN&.mQ c:I7NJK3q߰S8y !t+&/6Apºl%~7vSbuLsa#VW-8imcxb+S:|3osok6!q<O&v<&1!6eɔ5N{qWMX6\_6W08ߓ;cI6r>dr5f/_HԲtAY;T/')=QW,9ٹK?iRv@MpÐ,=oa~e;J<{-ٯ:O¦x֧:A5pIMwgkvIklXzВ {^ zkV^¥`J6 +ެӽ_L"Vƛ}W!H*UR,}?(Q v"l{LjTēDz1_k)I\Op߉VJWx'aVMz Fx2+);,W}ٽdJNXS9j sf!$uIz±sq 6[7/YO&jQ/ͥݛ|_I+?~}j4ɩBqwt8X\#WMY l .#Mvm0|k'S;O_#4 i6)',J>O+:ޤr%n{諦<{HiK;֛lϿDGt8|!"X咫,)cd7W?L0e},SQ>aeg#ab`Kަi,fYyE/!v꘱>1N>c3#Tl;]!7\] |1Oځzdb /.m齫F%7ckP٣Oԅ}FJPCKtbku?*ir._vEL wVLuoIق^!Hj|""G(LΠኋ&dSqG( U:qmnΉ5uGy6$$l-˺5ښ![&;6uIDSoV)\%BB>U*<_:X8PDi9uApm%fy1T~6:>TOeYkW#Mvg:iI"ox=r=^(_1[31}<o(O(4+*^NnӘcqzFͷM|YF$7&Y{j`ҷ;{xlr7lFuʷ"ή^"7P:^|88A([޺ׇ$gleE>oO~O 5?2jdmWUCÄv%?b {:V XnDw2;帬٠pɘ;˱*̋;|Vq)nLT{IKdq$ܴ6Aq6a >2ߑX.E$i7&[ԯL)ۓMQ)_PDDkOI*z\dW깂#ܮmsGߔc*D2a5O,uqr\$\vZ7błj 2qb!q0h,L{c]8Ns]u6ӽ>!4ǬWe4> ;@oHtu䑱Cvd%)Vx>ick=:؆|:rRz Wd.1f!T~܅uu<6b};]ۃ\Q~D ]׏Fq jM߹|:Zy*RPԼ1֞Ewv]oқm8|77\g?ָn̒9\5WFUٺYhu`Ԃ&-||$aF֟a?iNy,cyzk7x)Hqj'2݆CDO<+-$X*;]u4|)fۙD):+g]F (c\W}S ޶@޲gYiǂVU/Ep %P|!VXwgyl\aGSe9cy?k+\mߎx[H/*yuul+cHy}3;A .`b3(tl UXnP;e-t8di'3&Tc^Qk+/h7JHƸۆKOY;{48:=ck_΂3ZgXhJc$emD;U^e[t<,t~!V]_d".t`[1w5FBNWT^eՉh:I)cpVƕH$l 里x$P:@6D53/gp avg`f _2]~}\秈'hVWG~E?.,}4KS;$}/K(k&!x/ܫQ?gwaјe<.ql|U?٪tn~/3eO7އ0>s{qberٜyšf2MP")?aesS33yè܏Kj3?fd7zx=u翌ӧÆӵ>_>ޭVh_g~rnxκ?~D/IW<~8ڀv?)&vǖ qs[ǔqE3URLmaϦo,I-^鐊# Ow7_D_㤌ofo%o7NX﷽}(##||쩾$S]^S&ڞ`Mt%ݜD)*d+K|ml@씯{{ql@*|tjSro;lxDnwWi;f]B[n| 8oYx,mSĆ!%pj%ζ N}LؓWJ31%<'N0s]+>ަ}]y]:qׯt(Ɠ̾\ۂ*ӡ`!&J(cZ VGbm_uY32_1ާ|WtEt=iGߢڣ7†Q[^O~3rMe.cڐjR\tnqbo(+ۦq07glyb6iʕQuhNt< #Ą=]gʒnTV&bcn-hcAkq"Vq0RWZyzE,T{>Pg}--t٘ݳKT0GYgvYݫum8_>NW~Bq?W:W|z9;S ݴf(N\I`SyA':̑'WGGA[-27W/q7caYnG<6q^Iˠ?tm+> e=o5Io gL$P OlWUbz4,# Q-V˻Tu/-F_I+nW0M&9aH0^{SK O@/~k b ):{`A=N`4B,}G,q;:ӌrZu.9kNqm5& ޱ~}& aG΃sj#k, c~Yڭ50S4>QOw?I1_ޝHU(v-o{+gjo0vaD`X-<ًgIދo8! \O[~~Zg[ћ2 wxZLُ;=Tmjx`Q`S{(P H+,̶'Q:pw/A#2 bxT}e?/$>Y˿%}W3o)^OŴͥxF({4k℈^YD4+BL!) O>3! |N>1ǥCm~5/WYg8*فH&t@ F~-7j ۰o>,##@t%[$^!4"/k&xR|3{C-~t7!&;$F=oT|={VEBBc7y6ǺI|Vxes}Ab~3bc';(<xډz[#z`,1+{Uz\u}NI|]o<.+ex)yԟFqZϊ R77ƦlO[Ů hƒU|KY$sxxav&5<@ysQ61 N ۏ z4u&߾{c'Q$󞸟 R@?NS*^*߸OӚ|gugB QNx>ۡeϣ e RCyƨWyk|?m [IzpP==Vn*R|r r}']y1L4xbB86|#J- %o^AO ٽUOb>с P=(6!Q_LYřs=Y IDATuXBf܁SV}>?Iml7rrӝ o(~qtFn]ޗjW 2x~HN2|qӌxgh@|TG]Co`L\c7}40fxl[''emXW60_ RWhЮs+{ۻ|o(oH6vWY??GMn&K0s!oc|3 {/= k!?Xݹǝi6{28'O``>Q5ܟF2WQrFW+ڈc, GZlsdz.h n{R3ok'kH ㍒d˵x7 NoS-nD/u'` c=Xh\MYC}+jh|'ӤtgܧcJ~0߱w̷ߎӁ!q{ ͌KDsYnaRqք6h!yÍ䫙G=@#=i t;8n&WßfItn.J;ba8Ӿt?.C5b<&S#oTgl8F`@W:qè^ ΟY/Ïr66m ܎-3N)'+$w7y%m ۾_ ibk:,/W'gmWBy 鯦bSZL0;Y?k1[_%Tc_̕pBp汪ھJڰ;gWĹ"}w-[X,.LkyZJRZe ,חʳBk=t¯2\{17ֽ]uWv=SX/W*ٱ[%q-ıKAoNkqzOwҧ_'ی"v ?pW;zdZ%%ÿ.U45&Kщ)խ|Pg=UXq,C$KW-FM\&I6 p~SV!VcSux76.} 8fd 5ɖ}SNеL<.'ȧ8%ZLn%l2uɉD_*6Q]MPkoSu۠'fX{p- CFp$ʦ[^=o;g̲X| Gث}_k}6K|A{k,"A|Xѫv8If`O/K6%'YI0^蝷hqD;l_!:6z9g 7#%֥>Wmݡ|¯hO=B;}̾ ygөd}O:N0jlm|9šMCb EkmmO]ԮN!{g.+띫aNRM,2zFXa\=<@vpocS;8]]APvW;4 Od1 ;fSLK̮z"Wr Hѓz؆#/+n!37Nnsa@O|l]Qu$p@D/ QtlxVn=zކ_ yqSo aS˗Qg =aݏ?~Dߺs$XVE&M> %n\/7PTadvXbw2*i*3=.3P\@|YP?tz^c]s?}r?WȺ=U5OҊw\];9w-);'>*Ave%vNo&^,y:gY؏O_G{ q1wm3`HV!&Qڲ9+.`f8Nhd+L`7>[rcq;}ЯqcOsM~5'Ix~N7ci6>WFeY֞p\[ >3&^7Z{2}8<7OFVEN-m|hGab2jSujk3GN}p,$A6@jC~ VqUBʚ*RixH#!W_uzt;": |#JSY׉A~zd=~bʎKb-3 1S\alDnaWB[[+x?? cm)0af"9^{Ec`u$t j/(0brT ՝Q@s4uUAyW;d]>uTcU~.$ݏ٘'~\JƎu 5jve4oӯ=\>5Uz"N{7{Rnɮ]֙4LN8@mj 9_<ҲجNEo$W@S]AjBםH`.,ـӲa9=?qR^ƿZlMz'y޻ѿbf'Ǟ@dZJ65(ypʔH8 e> cvLS{lDg7"3E I_J (2=yDeKQTqϻ,;ȧ8/Cr&kwJ~$19E<1(fEKI X-nS~ɢf?y3.Ql8NӺmKz9^ۻ>v6\tHd}:'l둘br]"l]Quu5\W':8};X<'u}wo Nȴh)4=GhfSb̒,Rn}\ 9uO1mlBdM ?KR[I|Gu/%}pW5UMeiLLZ}39IF0/s.矅)O|~?OKOw6iVȐS@ף`< Q2fαH]|vLA23Ę.QK~oߞf}q:0clȏ$->j[>0f_-򘲵T_?4̿&0Otܑ:qeBY{W$+/=%aBQU5"$UP*ȇ<7 z~Xֳ`-_·wY]kwkg\uÚЩe ^l^>3Pk;g#[3mɽz9X'-\ ,HGC]b5/axx*3ҝl53|*ZSy_,ZM1ְpaluskUn!oֈusɽX'Sqaru&:(D̿o煲\i ) |36.h@6+ tX4J 1 ;@>jSG8(4X>/.4ft[AWA'>mEI) _(>KDz M}Eᯆf4?ez1&7eӖ{%;`D6(|G*phnvø Z1C~vaf6ibՀ+e ka?guo`a î|3釸)OSF![_bi5BulŸRן=z b sܟO5ca,6twyLӧkm\v٠BXcow}?d[fܚq:  H2o$or|2i -g -k;'ZOx{do4Z cqcշZKz!8[(a742{0 7KtXS;+ Uv$(U+ [u,>I>SO/nF>&<5t2bkmW$D4_67}-oTB]F/!ނy)}Wk?*zp.>&EzoVAӤm44L*gg_4Ǜ;p򨜲ehem [d%mGl/5Ts:ԹзR `Dxujf2}4նw/LAWo@Jc$z~deWځ+(Ƒ6ڻhXu Aod+7?+me'+@od؀S,t [Qz=zS+9z Smļ=',z#׷G7Ҍm3~{q1 طun^u27^'\[ȸ/[f} `}"[6eۜ_'oAq8 BJi8k7'-8dr#U֟a&nMBP}!sU0 ދwi4"Hn_.\C,2(ݴ M {hC].N*}i *{WȜoO [^/kރ,b!wl˾{y^'n<' ?DƕtN@I#1jHoncK.[}된4Y:[Qy6zݖowdmo複_A?Xv}ױ?bʏ G])5nmlewa=zQeظ/Qj;#9HKucgQ2&YZmUҷi][9CqZ;aPyTi{ FN⣂-gkah'љb?n IDATpZW`_?`Aùz|en_w |vs~>C>$K_`KcW6Dʾ3|52KZfw0\8@RԽ:/_]I3F!Q_-r\g@WafB6/[Lgg#_}OH<VGGGEè1޳֟ȾGg^<5J̀>旅-ӷ΢ v_]Ιn{qNv6mVwygk=|:Uv_4)[zXڱbkjN%)_^m6$!j/B˧XE 6ݯ ]cOϖ꘸vzt$<6n*}X&ÞqmuTM8.bJM2=~Q5ݨlp9fZWyG^Rv؂MC定̓W2;%nn{2C=F иcӑ|Jͳk&NMAzW7|7cgcķvvmqa?z>꾕6 {Zh?ahjlSk_2xD{k} G~14ďxr&dL >*bkV!"̻v$uOwd@Ojlc 1|u"d~{< .%螢CCOn,cgwFP8vĦ{-Kv$@S/F[fg?Sߐ$ |u>cwڭfuvsb'm16cN`O/ 7#Y4"_LC/4nwml[WݶC8?`RI O׺~Lp,C-VnB ~ SaDe`? RcH%H;|$6 WAƿ{\\L=Nac켌b eHGjoG?l 8:dی|Symu4\v^yC&;{p=@D?s&{\f vwx~I:cwK.5&%`;XOV+&z>o`r4/c\v,u46DIXƈakFVQ1;Ê=,z5I&F Uzٚ gEJ |X4w &tϻK~vҥ EַAXs;_c] WbpY=nDrG\Nҥc^Iq5}ߐe8i5 0H4:|P]8ح:,VMV~.mF/p: I>c;/CEp*8?6ʾ6` 0G1+&InYړx`^Koqcsަɘ׫R߼e pl%k/`PvxYN?'!CzVw]]'MSg\ʰ59ߦPWmDYjř1=r\/-Bİ}Ȥ?X4SǙECsۆHCYʪZ";}=sC3nӎ-KַcMo0ce1/E]’:8y KzY_X7ڀ3U}&K?IOn o8G$:;G}4{}6ܳ *^DU}@i/4⻑d#[n"=^+`}B_z#٫"=f~uڡɫWƱNRٚ}ɒZlnLreD3WdܰkF>}pWƑOֿKZؘ8XTMVo݌fdϬ]5_KhC7yݷkidZI+$To2ws|W1 lŃ|&I];n/KGۏ\n/o[}wpA~pĉ}Jue]|A0EgOʽ~}Ҙ%9Ec'?%?'(>K/ 5iz6;xWyCԔ!;u=%%ٚKۚYo{f'Fu)`sUtw𴒹ޝ9ߵxC+X]6'6 ~mek"_]WT`Z__\$mQd;VzVb$c|;\ڈoNQhj^yS##7(Xߟ7 :P_T|dvYdY[ (x0Kn01L*}rQ-yrb"jd걏_/݇>KY\m.ы,fqʮ[~k7 ҧh Rr TO6;Mκ&^Y%m?1p˽Jaܐ~@IV`;vA 縝Jczf.D{8l>71o~SDQN?؛>4z:bOPeܞγRr=>MKV#+t1#GŹV`o/eھkHhE' ,>qfoj%[jj-Ct1mQ6).~Dry]Kg;|TG΄⁀;;[y9"cEsuGKrǞm8Nݰj~ ?ޖc!F;KU#+Miӟ< ?q^ݱFQ4iӒ $Sl5$( vW?U$-D}R=$ek>}9XRuaԏgft*dm9JP=Z>>/os%c븝nO//?=K?v8d"cu׷'nz7 ~r3?a  Vycxy;݈kF*5 pݷjb%VɘOWx黳RFjTN +  0S3xpڍOqZiW $$դg'(hA:-{w1d }h:'Tϻß>tS? r@uuӖD}ҿLՏ$1(Phg+'E8$VC/V  o.6>gk_*Yb Ma} FM}~X&^qY6asx_~4xOL_7^]]>whpnU6.X/z2y]:]3r\MW/} 0M8e[,&d?qAtrwQAtquU*e#Uts;+Dcylw"0Jn)%ZzO<&E5IJ]>C{d6)u;:X 7lޖTI#[>Dw YqV]x/ڕΣrA(lAa|$DegBRaUmR[ղoN%~-rB:@jgI3x-ï%X՚HFT٘(q|KU 3pkIUziEI%`x`OH/{dvn-y!ʓ슝:ow䞠\G4:V!+XL{ O6Ģ}zIm6;sjruU׳cIPhZ~DXo }I`mKgr^ ?6i ;B^,gEG#[W>ɗ`xX^q6p*>;tƉҩ's)`fx[C_UyZ?#QN3K ւh[XI.4c>j }b$V &1KVTFځIVW^0B&2~#dmkQa-?+J"p\%x{ٯ/*) 1Lůwz|b߃[H= 8~e}gpXkw䛺zq\{`Y3H6DH^W:Ok5:~$O0fW88[A8 DQHjOT Rzq>3t: MN?b XTݵB[& C_,jUzXJ:g]oxyE^ç6IH?}fƷl=׳K_h>f'X^!Y"osNUWyj ]zj2նU50>A8 d%>/y-tr賄g,:Z VK.Ux.Po3^֖q?I5'^#rƱo,Ǝ{1wPky, }:=݈orN[y jB4?s=[olgk?-"LgxǹI~}) "?BM l `OL meAE;qe_8(0Ms Vm&nxc|P=K%[vl֘;#lĘ|ң)_K跣csL.<5.NXit|u`xtg&:d[&kM%~CXcկ|r%^ U8cpұ ^,۪Lo-[oU*IpiWև]Ya $Vh!|F4xM<>UϸDcT6›B_t|w2quwխb?~_]nW|w͔}uYaW, uo@h0j'lTP PQj3fp@ Mȉ`.IjpSWRj_OeHƲ,E vٺIL'A k ?V&k6TL\~cWk; qaZ/u>c^Uei3KXJ'|o[zU.c_u0W]=~,_=?7{zZm`^r7 o`^r6~{{,ΡuhR?m[8/=Q(j&&Qx!"ezNΣt\s6ҿPt9I;Ģyu*?aiz KoAxרO.oЯ9-l&Gw;U|; \m.z[/Xc7 36%'ܓs&h& ~)oz}7WMWWY &<&++Ⱦ~XϽoO}Eo☒WC_C5Xb#/QtvnC 6ƆbuMl`Cуox?[y .3h5*VY" '$Vϯ(bӋą_:@cǒ-i݆4A~Vr~|x}{a!*W];<_YsGy5 “逡o$#8)I(ZIG=eP^$:ǚFQE2u#tY t[`x0ވ IDAT.-ءx]DSk 7Էx o}F~{e/Ph@lWEi1Xm,%3pxǢm1`ݗR$Z?]ږgT'Qc]]r8l:`ߙU+b&_yTm^ `8`[zTMow×GtU:A-+?쁝UfWz(Z UZf*zX©=ߒֿ:.g p W){C$,n3U(9!uP(m ct}@c*afx@9 h ͩ* (K_|p p1i*7"۷298ugWƬ,7^Im8dgrx Je){ز9%m܎S<z-4zڂfg͍_ʾa{Mc8^T_!%2>vxxF3|??u܎F \߇3HFlL;1_l*ɲюN,kwҖ?X(Hzg;wt<1@zH'elgnH4'J K]9cԓz-X_Om~]+Xp̍y]y/c~l&l# $peRTmW lE^ۑ7)l^|5yS ]ׄ4륙B 8uz8sڢ` bhjČe3h/[CQ&cjw>t5TF`mdxc4^~#vYIAD嶬0`x_zsGۇֳц`Ezж v"L?IOۧH'.hYؿZ' uk}cӨ~z6kM].걷_V֮J^g=i7B~3Xd[''I]1kCAu8sȯyXfʓ{ho52>i/}PDlt_L&O0:7[cN)ͼ. 0T_ښ ]36qgdG?,W~)һ(?.&MȻ ׂ6GԣdWLNVU'Uհq\\V{.pzÒ͕_շv0DX<{kny-} Vm6jHg^Zߒ/tMRɤ11Cq˘,zd4N|1gju~O:h6KAdI]0O|vO}c,v8ڻ}?s OգpHtأu.cg|1ZFXZOOԟW/YkJS7mc`ѧ$r PQ{6,&W`?OlQQΩ\j7ɳ<};Ł,z?|(K*-i\wg d뺫i>z%HEV'YMn_{:&sxIGwϠP$++O~f+d `b'vxj:քC+#ڰscrmpW\T}EkAUppϠΔmzl0 ^E tqH>qk)_xS2`'^8z[`cZ?D$<OﶰOIY$N0MPX|*_\غSC7,u />4dJӄΉ;¨MЎChO~T&m,]%eix,`]dCAl0Xm!7/jJ0;D{ռ`P cն6t>D G;/ld \pn@s?w ݻ3VIV:AX|%VT-JgYC/PS_}[LJk޻|#m29wcczeulm6QХ2;/+Ɋl+0# UWS E"bѽ[h:mZ2T3szk{d ֠66cLkۣיS_:r+eoi|q&$k>4ԓ:~Y|_J|M7~ƋqtHoo#\AJ>#ԕ-:uݑu=\;6=]o'؞so!AעJ~gT*+mAR[ߦ8cv |Nlo~@|K,HM,G1TZX{]U"eFZu {R7}a;7L$SeE/X7{.htLJ,tZ:rss,O%vi l ؾ )`7>qq^d=JgNuJh\Vr1S&L`7"PW <#a3~(5)yb1m%mmwO5{HMzkS0>=`PW+-/6V窭lԪ}jV<+TXu&AgM;mo4Z^?n R€gj6~ ߲,kqiE TȤ|7x0f@X9i ׮ϕs7{]]_gba 1*&_f ,j N.%T3>$>ِ&y}7yW$'Vf{v̏u}s׷`;: hDz 3a 7܏klR:2Ͼ%3-|wĵw5j_d.)mȽm'"Jd_䗎^]F甪{O[1nq~q8kW4|r/ÔFNA+-+B1>]LvWģtEα>dG/P U-r{`K3C(,~@kT H`ɂ7tQZCg jN>?4n>[51蘋δ!>gm`Is_9 O8J1[NXC5(έXS#vJ_NxGF1j. ^^AP]߃i V+Z{_WpAѓzǾf5ކ/" Q}*g"bΉYL,@evOދt Eo/)hcpۺ6FzɯWw.ZswO5CXwVPZ !lWmKK]Қ 7z?:p6^5K4H)~?d o^e(`<qC@. \ѣ 7 m&+GaUہ晖 gM/+Yng:{GN+U/n)n) $Ih3,a0=f!5zd;V'=On9J$Qt1-ڦ] .pA'K%ي`",36<ա/SMugT:{J6߂6.9#Wq۷kq?Ik>Hj/y,U h{'>(]LpJxm)tm|O惨>_j]֎llqU)MߥX_i axe|/Etfz[&__ !X]Gv2b^wQû J^hWC҆nE's؈pT>Ûy: f:i,³%Lwܚ#Dct2& |X‹]Sy0 *zPqyoy%~ 1_1W5C^?&A}@L3(ܶW5(w {etXbpK^cr%k[Rݨ;?˓V~IfK_kl"m8޼8> a[')X\,aC5 e]婎z]F5Y-T9dS]ѣ%[;JϨ.GO)KUzy&>Gۄ"6=R[kŅq]ϠMo9s3mؾס'+ Gu&_ڊ_KzD]sy.q% \r7e=8S:Í&(7ܡFUYo$y"E2;bnUֵ־ >^by5>p}hG3,coN-l\ݯ& ~wYzI} 7ٓزm"8+A`Qe"lE"w +4er!Ww>l!\,klAБωCɎ-W&!zAdrI۱Y%sE[bITVu01Ƣ9r}wza"ad r[onK᰹u67zA{k>-ja7_e*'z 6U9P}'Y|e |F ֦D3_klOG@/O,HcRd]`!"Gг+b>CXYO|Q0'%G$蠟9{i֍vk5`o+۩z̐RYy"YݸF/9޲DSiohꍼt&E';Fz ^' \MP#RV)!Rl/.J7+_\{*2wvL;i}]Vǎ.P e̅d,O6E:*km>g"$pc)0FqD= cdl>@ UNd<ƃIiyTޗ=z,Zҩ4p24U0S+j'9,y,acoG8gs _, dx8m?y1<K~,W&PcszĶ%v16~c5kB>}(}&P=OKt^_{~ [vl3pݡ_<3&_5Ƥ!?A(=_VF,i|^gce;If+q-:^b]Hwz*acXQ[5W'`sH=w^YC'3o. (y`S{N)N+:vug$sQųZx^%Dׁ]x  lX p?5; :kS OX@\/:\n?tc&ן>?8@`s sRR":X{NyxmNih%l K1oǷF/?r u~sk4x}F&Cb>sx}[dB7{KB:˱e}HLV'u=)y&sJzZ 6<=gsQ?gLx<ynf߮s$xa2~<;%'hJY6sFcUZLzX?kc7m|T>F:sd9$[q_.Euzix-(*?^^OjO cQhHtQ{|X}t?*zVcTSZ_Q4]_E8q<S*Z[W@ߧk~j=SOgھ sD3֔Ft;pyiM*߸Z~wwn}Rv$x{mk?CvsA^EWv7 rG"^]M"DHXd#0@)t`otAeoۏ\SECJ^M^XlMCt"nI7YtK3{E<=mهiK+Oc]Ao}-پ0wsYx(c_"8emBu?\[ISW; ;FEQk_frsL%j c0̈?;[hq -[>07pE:ayӣy2F#Ɛxwa]VuKj5 6/zncLrWۖoT"{)51%󛛲 V+\I}ٲe8|=p3!q_^t>a?ErDX\hY@.E>g0< REץ |[{O+HqO/\ lU<_ |෮ ob`ןx$}~xme)l+h0WCH7/)6u|wun/!>;<[i~DT, -ネ[7u9mzz0υƦz$g䷌(M=!BuyyۦոIt*N};k`<ߓ%ۺ ~|o{Vz98/яpy!8pe [eӡޚbcv#'664dtX3砽,?߹E4}cEcNajwҹt{EKr|]ݰ.L?m@/&mڮogXO$uR18љgu> jc] YQ8:0`G?y E b |*߀+/t91Gƻ)fU·5u4ɪ\W}p1`,H V\8XɈ,ְ-/ W>#{[:YcF~뗎d~DAXrt^vz=śP7켒Ά|=XY0oHWwx6d{[?[Jdha|p&ߒ%ãW[+z6 X*[v5WY.a7zM4qF6@SFT؛p=c@Qpgx?PemCcb󥧧p *ōl?EQz(}\!z\i~J,W*YDq|=O|Z맖_E,: ;qU\w=(I7Lbd"O$@VwM uo+6 ad'|e$AlF~XGO;0i0b)dBzѤ4bLAXϼoV$֍ԅ7Ƀ0[ Y"rXۨ0 m2D{v{b;߃I 8Lhm2&OC IZh6'¢xޜ}8L|KSy !=o RՉWrUj=*6`e8+m_`gW5oUodtEgAh)ne{Xg|Cg$c!^mZ/}ľј}d|lP/a kvP}aS=cxJM=6^zܕ^zv:#1):>$"^Qc8]]WNMwۆ>K~/P3{3Cmd\-L縹IVuEhBݴa!+<݉' $z]WL͚blfZ^pX_tYI4+;?mn$ŘIA@֏,Ynz!aJ$+euY,G:?4}nNpU6~Ơȟo Rrٮ>N4^UV}m81Oԝ$1[+g|d?Y[M]/^SZ\R 8a m4f]p%_;{gm>A䫜 GMC44Wذ#{!= >NHv?Ko[h=ZĢx>}+">I I.ij:z됽w|vv]7f։2R\.}HnuB_â:@vMDO8z\t1~qǸ >`\@Yf8W2RP{\uVwxoZ+ ntyhn>=r:]O@}`\;T"*xrF \LWwly!kѷeJmafl"R}˿$PU>VY?DQI HOK/&N?uhzy#LGI$=;6NN z=ѓJ¿H3$C#UN8(!lާq6֤lWm._E:4'k2ȿko| cA`-hScrH8XPP"i*pr$vX>wK 1O}`7^&C={.ScY>?L;S\O\tY?`ip~ iٙ>Pk,UU {qGv.|ѫbd\gPϣmssoS0gI͘UPߪH!^LToudWסezuH!OTM- q=s, p"+H=J!]5~[^&_П2ptYVt[sǩ^P߱),'~sQAsr yHa&09k#;T%AQhZA|"Cn%]686oڐjܖJy~0v3_plT,&{4+U۱1a|Vv<uϴr8A b[w,&gWqvb{˘HJ<wGvwj{ z-Ӈt pqbm({#c&{阍_ˬ$ܶ?ladv{*C 2ωh)aH61k.Fڸz?f|[Nv|dάz^H˧uz):36JEX_݇=ծ/vb&^0BqOuu/*oT{!;O8!#h`c2"WΨ y_dj%"1ꝃ@&Xӵ'L_p-e%ߴ)or؇.F99Z@&lm_.%럛7/N`o>Jܔ_BbN5޿:O4[,nr);ǃ$%{3̜:N] ;1RR7zG+ltg;4%Fr~`:@mEʲAYM,Ա&ƺr٭c؅*gz;ً]=E߀!׀fR$9 D^ӟ9Y|^1"m KeJ)x9NU@Рmc: NU$0oZuɺ `k|0iQ;:W# fd.`P'l#ﴭ& yMتW6GJBEsdwmU=+-ǀBu@ G0 yk0hKG ķ*X) 6 @wX댱'6}H{`%$T8tBFVket> hII_X}%3 Weòb{?"X^5`M%lҮ-vr&+[Lx{Z[mu]rLeyc`cw$,/hrXcP$Uz: ݢ]+rP"Ynިufؖ*<,$u5H<O~$rwPG=ztfOW _cf7ޓjlS_fs_]D6O Ɂ8@,:I(ckIܯ:nUU>;l%k۾s~C:4 5)edק~\&S'Cʱh/=R=#,)\뿒عa]6{]>홝{|j#j@Qس1vz+u{9];Z]_naN^QU\GEk$pA>] EIq4V.S^15xwB?z6( d ^ U|Ml _sNtp0PAn3pI BgɆ x0oJ8L\e 6pˆF)=p1/n'Mx VVex>@eY*{{>m^%Cڂɥ@Ĵh|Ⱥ`Ǡw`,]<~-cvJfCגaZ^e|qcZ&;!ʾ>v|fN<ߎ%>8Gf.7e=7pM6 '#W1%3x5;cĆ= q5_ݥw3yJ/? EwDvSܞO şCM3>=؞Ljҥj^_rV?Vy1x._Acm |S;7a( {(Uk{< \ړ hC?YftP+`M_1W`Qq<(tYlV|\+]cmBq3lx|:|Ob9:HWNSNWi _'IUy撓~ {ToÏ=|kJ#'e;"K&'Џn>sk;k:ga],Ǔ5 𯐓k*_pX锾^*&z 9@~k6[w02nC D.}ku1>cfzZp{;)amqs,x*uߌ(,;}rʱX4鸝+??]>$qn}lK[S*.ϧDޞ/ s?M=[I0^7gX빠P\I|j8CDGš$M[ҞԟL:MlE|zgql3;v3\ Α!NUX ʔR VT qM2K cokN7)Z#r*w:2O]i WbH :+ʰYTKZD}e/Jed\I6d 4#>P /h-eK/.+ʔ1[_M7Y*L]hC CkBi%kyKK: YL3M$rr6Nz8Hϟ˨ "߰g ʠl?l]vOl"9axMO6 I9_fMfhM =XJ7Q7i/S0|TQ:ng yBUsOkKAsպѕ}OTqySWo2xe%W>KuBiR*]s~}AO o~SmgR3rGoM/H&3\ipT]uڭcݷo:UJyKc+ :ir $q1H rHtfyQp! 38dk>mGn^VÂ6@D//eQ.3\{G0oA4;_'/`ߌz fs0$S×+s3%gPwfzv*ox',1\ey$ՈOS})?;)? IDATgӳ{A_xm(_J"/ ֖wG.n)-Sɾ_u[Tw**lmE:*ft|&aבGB#CdEb5Nae2"G 愧4Lflwے݌B{ҕO(7|("]<9mfͭ^_ӘC##yS/0JAv( n#|l f@nTWHb%(0كF( 6+lPf3?g4 ; `ظmƊXG6'}ciooceh,k◲,(S봵h=8҇%+e|5 }d wʏ V= vT/rlKpUIvXxLMG Jo">pQƒf~piSg W= ~_rٵ U;&l58>s/8I/Be+)yB=^h *=֞+.ڸo]*np=aE&?_{p9՗檋wRŬaz ;bԶ[O~mN\{^ m1k߳P߹'#V0 @Ӵ=3`ߍLsd=fg_&Wn/KCzhCg-n7]q#W{2X]jb(&$i7ܰcLTX|+nziܳʾvG񒰿urw:C-$_9 _̶f_qڹ쏍n)r;'Ҽzsd#ڸ4u#HlIlAʮ{EHOJ]=^gC(U2"gŦ)pL7vYh ?L}v,X;@ c9%A^l r&Гa0V(x :ٚ l,a ;K|ہmS>ȗdGpBSkyS.[Wj2?K@xqb -K'oO\N_i,Wڴk4XS.~m}Alp}Zhj$8򯵆$1=Ⱦ"謂 vv\v垎1$M]߹ ̰tbCɆ"]cWΟ U|wQUi׺Y ,-Z.E.H+ilwuRDG2Ӓ z~A{AIV/]74z0-٠7YY{A6aڥ@WRq+^aGc È˗AF6p1 8mn} aU (rc^xr+ο{9gp΂ \bRɱKls0`/nLD3lt; T|7,v:> ByE{%j=["1lMB||+6z'\׳Lh>oV} :COa??ψk;}u:NٷX_$#MUܵV_ь1isIZ9 <^huYi_1ݤ",H{EW"<ܵtk \)U?ٵA".0Ь~3E,,8{ճgwQTx GAS钨&?xU9eL:B}ԾӷVAx K]u֌ e|T}C;vk4}_>kM2>>h4yHu$xmUժ@תK.lZ _7?𫡇*GߘuL>~!~szc\U|`Uυ5.S ztNY [PE5 )ۦ:Q9F:Enh_$ ic>g{z)?țz8[[O2۶}}oLDض o'A 6{AxԯLs4u# A.QY㘖ORm6mFQeN,uH[#?+iz( |H/c5zrMPJAXY#_*@$uO:(ֈ%(HZi{BD#LLz__!;&?ֿ=f?<؂&o6o:(f)~9Sx6?P>!8 &;F,b%xrsev7MVWoǠI+>ݞ4k.in?҆[7JKgۧ Խz>ϓ~ dEt ӏ践S\sﵕ.o>QՓ>P!^{0X7o>L-97#xMhtc"2[ !CH:T('Rȼ޷0%|Gş-Zk vo9~/=ǯK73?t`Gfi|^CS0jӲiɜ/^+2+e>#OO8 ^.|-,fLtƂ \\^#WRSAW=(P?\$,( G&U I;L d/J.8pfxE7 P0( iYH]A1˂T^EEǴ)MZ߃H_k9OJy_!;Q^aG>WHw;K`jYs`gcXɢy~`/̽7e׮Ҿ#G{R^ ?:c.lrX,FI]5|qo?I9Mc`vG?ן  Ygl:r۷C˃gHucr95-MحV]_¦z_rOOaj8\:guݾn4ekC#9w HE @$}҆j·'v@jUL0C:3ge|euw(:Zs9O̞O t/&zHE?.%zYɗ'+H1.K$xd(Eju`ԇ K7 ^`}4.]2ˀr 5mLHB|(IeyQS웚pX›5Nzi2+rGD&L6/'h_<ch}2OfS@aLWjrjiٵk#cr?+M c9"4 fj߮-&7̓5?e;TǺnc/} 06>Gr\}7Eh}W{yܟ7zOg}mgwC|>e'E>=K6 A㷮={HzhWQm@;m2eX.r83}+uC F^pD(oi`(7.&tاRT/@@YEv/VcvE_#٭_8=~4le}DP k. ?Ѝ\qps7YJI[,(4یms`\Oޢ?#c1ĝ.+|ۡI4.!LDjb0Z5ߏ_ Ǘ=z/!I 8ٮDCa}ao`]2~ecxs^ɸ\Z;t$}8,P.p(U ` ]^PR9j K{inX;pZ^޿=5r I;UŹwGuF$ڧ0|EV< knz|Zl@hOdn<  ˎ% IOLc3G>4+¸u?gկ"_QCGwU۫j囉 .] LG A5r8LG(?K4 }ʐ-d٫HWyMVھ\w)|^{ `<ЃĵM`4rYԟ_xQt19y y> 9ˠTG WKo+~g:@ 3ݳk8<&W7z2sb6=ϙT̮ixMpk_>^XNi'Ipktr!m~W1/˒x')Ws}7bPW|鼺d U Ƿ!q M=:C@otq#µ_I/gϺBC_>C߅i9{`w`2sM===&~}؎s~`䯾syG;';;?֠guၚmMLm=[̰:%Ce<}ёvATHܭT ҮQ_w['*/@xRRQ' l;-SF@ӂTc&{b-?L\> cx@ ~' f4*rʆcuhiYVB68@۟%i@.Sa>-Y?Zsd7mBS /i9|16+ ǮviR6Á5J~!mCm'6ο fglϱg*{Vq&ʲNcF! AuquErYۑj2uֱ-u~\)w:mQ/(]rj@twi۽g{֟=K]ycXw-k3ꛄiI/GW''N]wEmUB8Y ._>MlE?n5a,% *@<;V}<\,[ո-< mToQxI/IP +ADVg`m1^ (A$QWuH+&M[F~UnVAh+o KBbcQwfߓ!B_%K֗ JY][޵-I@>qe2Su=N(!@ 8Ȯ QQo[o}QPkvӠ/w r^E67?V?sҖH~twv A_oXwqg vAdZ 5-rlN`2dtLQعX߬FYw%1Gxz~ l{/l˳wߴ? -Mfޘ1|=35G;δ{XZ"wz#/Ҽ͑{~Ll[A -,J5U|7]MȠmM$OĮb/kN߄>FOݦg2|ե!0' G[&sOZ>(BNSLu/+h>+t‰C2|3SZ)~D9.'6eP#NhK+p!Eo6W)\L}w7aP#vO_;,Q +;cxxÓ1g!<Ə~AsR~C1^jB>QH@|rJolCYS}lܘl3;:}i㑧?/ۀ;ypЫ7Jfq1fӸGx5pMZ5mgL1Z{ FCRk0 ng`K@3 \ ?,`"{%d=`O̹M2T "!93~lO + ./Ew=B}h3ŋʽdD6&ǼLp/+]J^W΋iE/>b?kIV >Iـ0 op@D^=+9e0m+ExEZk.6>Y% \bW?ZPqTL_+". IDAT$Mpט>Yf?Z6X.nn̿t2a,f?lX LgCw2ZgCiY>k$xf=ǮC; /q66>K=cUqI!avݰ{g/8D"^"4oEq dt4~l#9~G-GF'=׋[Ovk>f<n8rԍ#L>ш*KƁPwj ˔|TfD:+6C,z ,xQacs\:8q-],;ޟ8Hru ߅nZqu] z =+e %Nn4 yV?6鈄l]CɈ/lsL4).nޏiM`̪:1ݟgK\:p1hK ! E83!,! P`U3Q)yS OZ ۴ z^t> -^)!'<+R:8+N 8'm?pI {EȕIk[b*S]TlS:GJWKyq!k>[:O3gI=߰ hZ"g۹[f|mswnrps;h#y&I^`;r)PVW F7Yطgؚc-@㢵uF( (4C2<>IO+%=ֳjݘY|\屌~3mm^__N"9m<{*~Yu_kj`yݰM$U;>?p-. y`>cu/ߍzP}s&c2&RGsA&ܳ4&5+K9ml k+X y <=runHwc?rf\.ptq_<rf2Tq%1BeL?WaO[ٓ,6(TÐley<~u~wzhdވD7v?#p7FE]z#;#ᙍA.*']Z]ǩ/0GYfk9b3,9O؅iQiz|1"<4?Ѹ׷* ;~þFa}vб}netcq?(rM^~sԽ=$/fOW6|; LF`XZk]ͽ! q^6#c|ϟQ ܐwF~^8擓eA AriB>rQ)9h]sVi]۬a}a%p'3 /oo-Ώzzp _=^oMGd%6 5)Pʣ:p*rcuIJP|ඟr9CK> 'Lp[uc7vFXM %s/σzcIy>\6fr^Jz J?)t6Bwj ib[ NvDv9}bھšɆ)/~'6^Q\62f @Ƕ+KOB3Jۀٳ/ǜ (€|fDx_Jp6*d )G}^ۯf&~3r{}Ư3׮pt2c-Yo֝sHISgWN]a=-z>wb0Q/P5U#gڕ={3W[}3bm9R>Y b]Og#xn my d&"X8{)8b-{VrzyŲ! ɒ6* MB T )VgJǤX颋MQ" u:fbnn<r\Zceeu} FBO+]zl iD6Y!o^}1A_ɞu~p4ąِ4o?‡ t2Џ姍vJd;=ݰ-l*k}6 NX4wMCY=<^Gmf$~s1ETa6gF@5 Uddq=\G!qzHbm9R4 lCT~9=ƧSbvnuɬysRDq\LD-ºհ.@E U}N0evœahIp7va]o|"ܷqPXӂ5=^(7~}W WG;pk-U'Ozwq,Ke*j3t,^6gx<}u.;me*ahVr<1يxAѝ6pв1~*7d)_==!?%@a @f[̃8x~`9yu'w3zGٽnU`cQ]C\kt^ ǎ̭d1r y5dxtuJcylۃ TD4nF|%{D#ems>S>Y+> /SSx>vFS o -͜wB]pO{AGu{T{mt1|=xc8>Xo=p%gi+"u& '-QL `@X~^ϤNp3vQN@+@@Z*F6,O ;{"m+T˃R؎tE l<NV{WSO# wt4RTo:C?GSB?uV'p:n~SRv~V8l?sP1w x$CBz^ $f6JFlڅx@KDAӱoJSW#>hsso65+Խ,?w9Ưv54ԕu_uk 揝?V:َ`2|O_X{ 'Y߹'^e1KbI |,gWo6]_5w_S:wuIJ>2~\j|t[Mb` 7|5w>u>? 圽1,dMsmjƼZF9#&7$В!&нs20u\o^ +IB--  9?y,xO7aC?ß^.XV4?@oNW +}qq/ xt8DrX4 &Y0EgB!·v_ݍon3*B*A7rd@ l'<0dӁ'aIlj_+YN鈌ZG-I7GgY)39@i2 ];8w9QAVjskf'J*pF=X9< թVWOw|(*WŹ_Ol&sW'|nz6Tg9}D|ߙc1Ihbp*q&)8[iQ M:51yr[[{+^$NS`f06X?}y mowe=u>YBd4׎ K4צN5پt ; n}"}G=2zzn[|N ڂ˔|W ވ9!{eۏkzm9{Km4R.ӾXCRv\ yQȾj?U'MWrRϒbaE؜Em/W|24<tJDhRL'O|Xno?wWۉkmD &f8A|?& ƌPP:/:!h>H=\2)^~Z|vi hò$U6qac{'HKO9E灍l8?ul [1\~3\qfkDH9~QDan4 ?cڐ>㞋[StZf1+7ֹyVum!I[$.~DU::6_c[2Xd>?/S嵾r{7V04S3!k_ī>uF<"eio>87 ̭{R':|L \`>ХhX\/ ļ=MHy>I>S\][-G0z{NYFOpB@: lv"ۜŅZ+qڷGFo *63AĦ53Id jѿgo\twbz=Ҹ#ӄNrچz%|~%si㑞9vLʝS\TEy5nnвMK+?MNa~k5IF_6vkrұxg|i'@M+?>v *2W< + ն<9c`ľ;8*[|#r,3EAlTE ˟=xdx[E8g+)u~UPݦjyoa }$OPm:㷏XW'\Nż_CGNH3?5si&Q:ˋGn:8lNW m SscO+\`L~FTq:9HR؉ݡ"#tfP|Z$~ r'[ə.3Q>H wEڸaOKYAF&j*_U{[|.+l" LvB1-g/F:ʕm3t3Bo`}6?g,gq٢̈́XK}mXjN{tt }5]RO,O ?CsZ i:X؅gέFvs,\>Sj\~F<$ߤu Þr ν6nVozqvwvyЌs鷎[3'yzz9\Fo/M34ouԴz42<:ALqj2sr#t?T^eU<?_[~SHo7d5׿']}ʧ}y Fcy;٘wU'3+x`qnju-8_^Xy'1ϼa4D<>uP|g 2A!KVF,5IUoOȠ6DZ_zu-nߥ96Ēi1*ڊf#V]t'=/Aɥm|Lfp^|?oktmȋYoO6D!4…ކǮ u `c'A {oϖOt]N]VM`QD :9jԗ|k.x8 cG.Ұgz=]\X.~ko}!9 i?]@}ZHM[a[?q9>tY$Nkly@Ĭ{掩9}Z&o3~njl*}MJ#FԵׯ6$I]'cŧ .D@fcP bCaEșMKC}ԲfBJ߳E0ot @D ukg" uOz[|%W7xnb#BnP+:]]Nb\2Mؠ oogKll@{8.?W7mYJSݸ StR'8R(s'c8?2l3iR0/yW<| }%>0F:M}f^mqٷ# @*i.k:Mkx0x{>xP'U>ꈅ9Y@;bl흻~z|mah IDATlȻ3}W&Qk8T}Q5y 8ӑk~{E#aco,g*aCHMj{AIô>Oy3fxёMGnu?J?68"-h ֠zM^5)F^GXa9d&҆*b6xғ{`\8fo{MwMK|nZxƌ=z-8!k޷>WQB׉ʕ~VO%K?M[j6>/g)fx >` Bp,o?YO[m7)jRz(\J_y~/ȉk>gx!kG׈Hm@zz~L"ߑW^7ETM؏bM"keioiFr4Ú'CFMkzVasmf!ՋGINvO1x:y{wq;7_5'2/=A'kXg@qm(z}N} mI-ɗyrs[_hB#{N. ;^K|.S'dl~K٥{a[T)N>f>=g"jw@[Zq=8O]c&0cˊe`zlG_xsS('Q^¹EI$wt&&oFٟdaXB&pE A Jmdbqvl |vr6Si*ů|syRɥ HugHwJgs KB߁5Wo ۲ЯWop\ԯcb`nx,b)(g91g1/ÒOsE]5G[{%gguLJ/1amE۵ t]Rtygj; /x%kL'~}PE$ܒ78S/=,cq5>ic4M['Cw-)zp,7HHAs|͆ao2䏁M ;m~=COYS1c#5Fe& !ow@քROWωtkQ16O]VW됁uz:XK_,7@?zk]LK6%,뻨Ha-c7l-qw.nb~Mh>SVwʮ]K^~) -zI98wq\ي6̹knc,7Dqc -@ˏ6??%~(/9ǁٶ$}לY,CxX2rAE^ p=~EꄞQv7 &۝j9SW$؈ϜjW~t9Z,Bvcƃk)* DOk 7, s />Sǟx R9ejO-4.Bvq8b|c轍ü7,b/x?0 Dy7G1Ϲ^j{L7os|>h3и7 'Al~ 2[Ӵ.^m @1ԁKÜep{FT;]m!c/v-DQ}طpD?AtQ?gڂdDޢ߯ͩsSH ^p+)Mՠ̜֜ߖIDjB+v=h/*p8"##/RցN~ʧR?OcFdb#N?83Rhr4ئ J =@1R@b)^ &£.\@ǨsbJvl#C":>$EuKh᩶͊Y0]?W~HGz'3Yנv5xO_m. 47{xO*bB1a>xd~txyH%˅>|< j/υl.ƥ7z4WBVy`O<!T7Iࢭ/Ӿ>wo d;z `_0|[㾴}w>f޷pyjfsi6(?w6g>ްW -G[񌐧h3Jv8tS9sus:]a_+ ~w '`z8P_7ȯh9'8pGq0ќ:`s%l]I]ڑwNo犵-{oϫ F_ˆ_ada9.b|#\Yv;`ss|5ݞ1~v,d%+o;m/[_d`z+@?u}TWہ4o29(M6A]н5?qDTӅrhOY&ױχ^nJ>e <ΰ+zob=^N.7qR1um =a7t6OK礼"Fy1ʕq.Kʀ0O3O>3ۄNKNg>y7ғId.rmNd17A$r%2#h_zPNzO3MW;P5 !܌iµ1s'|: ]R<ڈZ{HdpY9>zYŦ~7:`M8d[lM\ϔ|y1ƇSȳӥu5/g >3(gf pEzUx^mʋökj[,-RCz!.#}F~6.kHQ}HVyHY5$o8%bB}F,uYdc13.$Q:++kr] A}73W[|jG/{O|_ټ |`zPgq\*с9l WU8+(?l~m3-˥𑝱?sAS1s]QU>nO|2:uG:?ȫU5x='p<#X[qfƽ;,(e9H>; +AO4#Jf{yV6l|ZڼV9^Ṋ6h<^7r΁^/{`QWp~c#M^yn.|'k!u2P5L"[6+a+x\kצ<y?c4zAo?[wd7 *&Ԍmpfė2-Hj8 '>Yz(| w pC2S4>.A)O~;N`7)DtVV N9^Mx;ZrS3˦_ %z J*yCtex}p2zh.~5t;U_!yCGYK >K힕?c"\6qM\KF;/O zX |Tg[\sOX=6yނ9 }m|9]V-3CKBl_`]&nW5Uk:\1K)zvyvm^#l so b.d& ܖψgCBץ=67^v,duY<1ؒc[- W@ t<~%Pa~n)}+8iu`H@)~IyJN{>;eWi6(PY\}6P(;!rٖ>iOm 5]!9t /}p|)СD/x挤ҧhEd| .TCtT'yGyegQ's$OdPs;<7OK ( l IDAT.x?2%Pk7SJӏzF^j(Qr F3r0S}OAH~~?Z7nC翲`6OV>c"Uk|ph,[4$]ьy8I_u^PP\XWx̵memLH푆vM?$  MR4|JMU7 NJ r~ˌGM>"2_|q-:i9q|rmhkv3 - \xs( f,#u٬a"rzS>;b ˩ u?/xKW42H3EXƊB;Y5l]GO&?#X '4nEsm}fnsGvA `L~$}5S9~bl4\**͜IU쬄$^0틃P;f]pϓ~c7u4"8N"nAq-6 h17%ಫ2+Y}*=7>s?AOlL/BUz"/A fi]gaX%w~L_ M$rn1(s%<;{I>@luCVLQ=C O^)p^[4 YQn96U0oskE+`+gjhx]<_`,8tm5!>>N's߄}r "StT6Z\Jx0C E~)"/N?OY:ްwڈOXmN͗bZw\0#6R1?zyy\nm~6[Ăqh?Agq땄JV>{w2XC~@=oꮽWou|F=sSrB>_pXoߒ:VqU}hZi6xQR/LS Tm yţ>Qy?mg'cg4n:k~1 .xzxl N_'o{>Sch<䡊IzQб0pM\j hSEp'l/º-,j` <ހ|yq"մ~~{>Ɖhti68>t<uN?^oL7aq̇'u.]|@Hyb}JK貃~j [j '}Z/gs-oBG';mohs  9To~? ?o>gݙ~8Xt8rʙky4Yz~dS''LT~kw?ox1خ̰K`M߬0M>oglCߝ&9ZW@3xvEvnPvbu"oJ,33`ю_-雡g#:.`gW_sO T7ۣnO?6s<3|=OƉRsFu \1MO됑i P,*ڢ'"*q6 jm$濠(`+իuMA{sz9}I/bu@3,7ƿxè6fF[2wkGLD8NO)Ox⍷TF) 4K h76 #O8Y>HrqtZ*r2%\tNv;} ;n r8rsyCF*'28@jϷk=gl!1Mw}u_G'Lڛ*\bç,rq톢_[noi{xi:N6C,/G}G?|33 ۰B&78-ioȭlRV՜M1QblB{jT1nnfX}Nsv?`/3'J9}NNV[9>Eͥ/q9ݘޮâ'BLa![.Eܕm(L#-t|W44MHKd`\uSI ~|@/Uvƕ3#,6E+7lGҌ䥐ہ- X1īʥõF> 36n71{/ \[m{NGOIOBFjck~\ cWmDz9wh_vނǬʷ,v %6e 4E'|ʦ$t,(+LUlB8:i͸s}֘ۜm,z8/.?b^Y>m>etlol9e`GX4nÿzޅHֈjԨNNwMFrsoEU"'MA䓀 >}:@4ǁvރSqm9D!7T܉g%o͘Qz!Y۝,O,Q߹Z{Uq¦ Pԯ#!3cTԵtuo؈1q}߀,O/Tа'Ld&J<.~qAo9>mWcK^ғ!Q;758x.e:\cm8H;[,H:#ظ?lu-h:Fr9Spk$"px\dB1N*3oW6NBtu:DqmV#mԶK~vz~;n**u[k,ѬKje}~͖SG{ʁh9;0g鹃C+rw/EfrJ9~' L#<^n&A*30m.K@G\##wk$"QX.H>nh+\)-=@w뻡NNZ]u@Ea E!8swȡ`sn|Dvm rn8ŚCm)oo\zйg%xNg݄ +_fa+PWK|"|/ss;zKۄ,1x6R>/X}Jw5G[/ב,SUptvJ{n N/6hח!g˕qiU\AΎguxsHpƩ=4'7LO:@qƁ]}d4ΎN݆uepGR,`*<.+E~ffBtDEgSUE>,AVcl.̶IyOـFBzQ/^^7Pߤ<%Nnۨp)m`/ѩwo(;~IÌ|+JF㩱 ɹ,# }Ke}*9ݕЅ/w~d{)ݣغNrڑ;|E#OkDd8d^¯/(Ѓ&HPipy"bWv |+Z\AϥogQxGC;/6 ;=hGt5'0|*Zmk޿Oq2@xc먾E \~@ɱ9&@~#|"0N|br}&y#)-#P72B*u47g6ࢹӮx~4NG;ƕ_H~~68FzM͸oɍ=;vjw@q Phtexx?bK _曹{Y{S1kqMdWmU!y#o’](~3~k|x֖TDkvzz2z~C=n9^Ǝg-;~[aku[;΄ {8+]m{qلhg[DGӺO/x JvI|NDz"X`jQ¦+Da p\V@lJ\~opw.N47ОX_~_|f>ؓUSgxlB>雬lG_l룑|Dm\թ1GwA\ }k4-OO*\',93g'n/-|iΛ"1xMso8 [xLӖ`mF˂d ʁ϶ے*uYG<]˗slT hE_ ܓ6;BJN5}UAIվFmqM`}nt hF=bZHm>[1|5k}J'|PH~ǴZ\|,+SH#|J٩>62-k0甜_}v܁W ~va`v{mds] }v<&XSծa>&~6?6Vv^w}$hgt3eyowN+VS70rtMYC&sA*hM{9CGM+y& P! pbjwC}!6(b\P?B&bTt })tT[@FPmBχ-SGom'D6M8\NywGhc4yྎ3?Í+lX>( ¼٤}"^a9%W;2ݜctHhO@cI6YZ"x'\躀lĊ;? 9nppnNy^9/o/bbL8ʁHjͨ4uxC脬Fb;9`k? ;vWT98)F`Kb3߹UP]LmKȢI%}{y{p/j]3J'q+Ū`ޡcL/<`1N^?XP >Q_Sn"JY*J(paV ?fGXtE Dl>E}S[Eh's oWL^ĿB8L. \O}y=2 kt@žmH^g=܍l:fiN3c*mL5~%>CpLY v~(b], R ܤJ@>+0w/_{'nfEqK$5?viwn&x=~1y6('lDqFe'Ku>W֏ jt7/0Γ^KQ/u潾bg>L|؁֍luy >6Wu}y?;UP/l%*ݰ~Wm±x7~^=U[0fά\.QD1= Q^fEX\taC}϶O􉦮>`ڨ>YZ=~I쫭 07tM54\7WFnzJ6?}A74,ApzŹA'M'i4_'.|Lag}EO򾪟؄ $cܢo#+[29e[o>IqۇM:O_?py6fvL=Q>{ٯy yޕ|o21Ίۭ DodfOq9[f Pl;!m h"c]9PZZXK.}a [͜}`]9G? s[#:4$m?>"q i Sx̘^Dǯ}).L%xNxX\Xw]7ՇGl$i!oxۇ,9~ژ M}lK>pCFj ݞi/hE)P WB^Bk,-R>jCe=?nBEirqF~|q0TxBdL>ڐMJ 9Bf;?x=VDh7) ӭco$*{^0 er?ISˤPmZ@|o,>Ax<5fu @7G < 1ی%.asa+Q(7N#]l$I}˫F|,ۂ=qɑnnN:g'̇GCY|nR7;r5 t [`9Vy/Uzb2 " 0mv,U͂yomK <-rsYcZŲFWmcfVZbo6l7'w໷&QɺKmS5vǭC4|CW6n72%|vz[Zdy`|8-mɪWkCwML \a3CEU!S }-ᢛ-@7~:$6*-9) g/\:oF`MWNrW,cNt}2%4z5pbo"ngщߜog- :! 9Cta^exgp+N{'y-[:ŗCA̅ucl0&+0obZ2W9='`E~NᘝOgQ?H`ހ@T?7Ho[c=9>+AwNbGwOu2ڊ˜N)56S}[(ᔷC?fVT\=mgA]vXo':6U]/]'7}ͻ4@>m"ߑrH\@']P~j4/b@zj%a7~3\QpIapI胊G7[=^MPd)$c+M_Q aA/p-3wBݬ#>&N'68g'M:Yy-zǴkOwʼnʵ{uB]sx`lbӼW< J9bd8$J&,} ;>B(3ͧaoʵ͹_RH&:r=[XT ?1a[\!i8[5>jNVב8Zfηf!t.ӏ4%imn_ I[@8,[y]YVS+3a?m0"?rr ;HU]|K#iAElPN04ꋯ&E -f)賅%h {nGx'd|Wi*|0}ŖoK@])j}pnt20M )F71aP:l^x0¹'Φ&;N`ǎ55k̪"m!:IƟO(>d{FlBDcS#Y= i ˛* x92;U\`}g4wcw|9~d&lUM5Q t|"ٍ|si<;#맨MNy؝l5ܻì 5=*."KBC}.ol]6m,|~E]ׁ A>JS]fY5lIT}m\o޵@l9cm{dtvo|J~Uw%J#x HˋѵOdx=HJm'w+AkhJd̹GElvoGOFg8''b/<ٓ,`~[|GNeO(/z=,Zxn, NWH #o~v'8v̛pE&-{BEC~kO؍e>fXxWqLHGUk"Nl#%E]};E[Ǟ#AaoO%yW4m]^YYsvJ,$r_(}Y/KCh߿9a+,k l-489gӌ?88r/ޥgb0-Eb? )޾m/n7O$ zi7{ǒ3:j"v.~B7f4 :Mױp =)~IN|M',V2;^6ZyqGOfAbO#G~G ..{'pSc}˙}! #[m7RGjyr3&_"~\tT%ì}Վu-)ӧ+e>nW&;A }*||9yra~N+8SG'vA񼏩Ʃӕɭ_;B~ߓ:qJ7,fЭL/oj`X:g VS#EFx5~<<z87M1F>7lO ~}`O̫j1p&w |&?? |&?~@rd~6z2Jk6f!6r  rM 71 6K}_f 0D r;+]_sdӾ{{&)cldv췚n$q*p2>Sۙ\peAd)RA6]>[ 72r o:Le6J<},r$Q0W~Aq"`65s۽/۔dOn6SeNƋf1y+PLhk @o[R' ;: ,.WzBx/mC3s@1'CNOI7մ.+{ a =ܝx.u{>9O>GHBr8h0إEŧA3oZ ^/k㯗t3rãb)+zz|#{]lyU_5('Nd!o9N@c7^u<~avyCv>(PuinA~4~MܼKi!=-H<5k094})>s~k߲Gg;:y*}V| `})E#W֏?7<7<~llS]#t dH]6:~o=ђEƋUͱ!wUa@;`RL.x~\Q&L/K& 䮙*>2mk~{^5䬴7RVmIS?ygxq6ۛLݡkOi_ AX?葌`qL~w?^sfzJT|Tě񚗜AxgKS{)bQkeAӔހۘxCܮ3<hPqly־ Lf㵣˔861%o[HS# ?m1mcoKt21lhWG|7w->>vnl{fW:o8J:!e7gPcJpn NJbͿ ^#a=Fm+\', ל'ހ9Cu! 7(\VˮF6gxz44b2yAqzp4rr|4. P=t9Wa^}sR;;mJsQe\x/ "H>( z1V=`[cMʹL W|7:^s1余1qf x̵: YbmAdP࿟ŏ'-N^Iٳ/c-G_M1J։pgBK>>C+ ŧh/ԱNo,lSSg(6»mS>wv>G~3+|틺*/еӓH7v,:ļ~)H 2w~^CtQc@;%scՙ_{Jǐi+cL #RD(`np.Qd>y.w՘rиWr9?#DZ5t Տ\O0])^f߁gUvh:v ]g BQ\_SV9ǻ /9Vmu^WK'mM]ffiF0/Z_c>Ay̵:HnЎP࿏Eؔq4yh]ϻ{+\Fym:"iR#,,>Y@ n^fu-otV2xcy=58\u ~&O:\g}v/Dܨnjop2]y37o:kɽ2_)<|[lǯQ2q4߳1d㟑g$7[Op3l"¦ ~8'O$++$k>^NjŅ y l#e 1#tynXK _>A~n)!b+1폅U WMk&nu^Wl?ikr2?Q^Q.bQuwpLk+rY$| Nq쩁>"K`GO(^.echY :k$@]lE"pFps ,|YMຍ)SP~ <7pQGl4S=vc u\=w..]+"VpBC \Ǐ7r9[FGFc!OL. +W??ěe2@ YOܒN7pN*ř +)oq!$PꠘlAZ.bE33* N~4PFzZ: L38Y1 B7kΕdj?|b\sܚёml遏zwQa콝PGKްy'.jc ֗)! ͉Y*=$'Lg5YFLjv9ȃJ+)L9@ IDAT_[+o96#M[1=ֈsĚfxnyy'iSv 0P_p7ۣ!cx|"x.;4_bǽ)z|0Y)>lK%Wp_}lyxٷeÒi-0!Pk=t-Nft2*]/ }C7,V;aU]:滙pO3񢴧Vf՘hs B%t&Q((gO\'cf0=MU/We6xqFEJ@+=fQu:ˢYKUmvzzǦ9qK=6.hD26j?pm1Uklk.rE'{3T?-5xZ'vsIhBnJ!3?ˍZJLB% }4/KùػmQ^}#JSM3N57l<,3WYWv=轵Ȧ7#>xm E2vV~<~0NŊle}*z؄e#} Y%MϲH*k _ʝБBd|!\?ЏnGlǫMbKy, z\ 걡v}ɔvUNCu?D頟aY$fVWc Eޓ'Je{NxG:D!|68C|V[^^^pEul$ˍQ+g\*9<'egh>K؀E9Jlxz$Aem~20M[ 0#)^yb$[j6i->ֺ//k VL:꾨}5Ԙاeqb5d|'1k?ЇQtpd$>Q}˭CוzKAkWu.`ǿUmxQ ̤;bU\` ?Zga[^{%}AaȎWx0JлbWe{2|ɒnMhG-F%TK%$|Mu5%_ڦޞ\|3c_ؖg\GG~ Iz;un.bj31kɻwqו>O'g1o/`~XԿxroC1x+9{*/Ѻ<~ Af`R/?z: 5|C{?y_LAh/ϕMε ;D:0}0Fw8뭩sU.V`I&nGL#g8R߅dgrׇT_܄MIi`!cX”]8,)ruY|?ЏbN%0)nBqX/@:0=,nɂ&}fG ԩ|Tv;D#?V9y}MkU&=|"Bwxfb $>ൺYY'i%&;79rKHmPz!V`} |_?4ov775y0MXy"]Zy,>g2บ񮳐k2?yX?y Ot`K7P'?\_% '.#cfx6x\[}˨H&y,MP #߅D5D>?Bj;3 hlzDH2 zޣۮty#Z]rU]m|Une`j&ݷ#n4W-及JGJ>zlA^Db2W|Be+K QF_'ˀ-tV&훑ךM<)(;|%1G3k_<ǭHFwp3:9sw_$Q69 e}A,KB;w9KH%/o#uPwТ6~ۆ٦h}QQ8)KLQύwNcr1SQ1\1fa>،KF6uSXlk~8ÇA{ö.؊dd'E㣛/nDfCv*kwj&#_Pqz߹ M}y\;C} m۞CsFuL5Q\[#fIA׶Suy?/iF|ʹ~:&ew򇐵J3z@?S="[26ɟ- ;=J#u9ǿͽLʦQ\'pP$/diB]VMdqy wdj]|5(hEA S]b-hz.WY[V鴚v J7p<>k0h.}Y(.M NSu3ϸ Wb*XKBG?ưrV1zi|>%XȦPw !ZtNKPX#F")cGv-y_k Nz񉿏 luRmGW#P]y:]#Yѣ:ݜp P};/~nOG6'03ϟ!NSe^ZLϪ0H.xJPyRA1EId+˖;E [0#9- q-LV^V.Ԫ&E: xHtcqmS6_ߙOo:A$my- `Wr_N4x, ;='ȠuR2>S:K7cW~Q6e׎U:8h;si?뷦 Y{u|)HwѲ>θ `PG^Qb|Ơl@>ѻFކbͧ$em@I#/vIL3㹣?zl; })TϾ6x{>k>+<ڴ[U>d-Sqƪ;L)H><$3/M ]Ox>uMM1Q͕H~v])q (ulr\[_*6+?WɄS*v4A`d}<ī"i?#)ł` ԮI*[sYzzjPT&Ѣ$o$x!K8ϙo/ŀ%Vo7l.+}ggb!ywF^E'Ƚ†/;iA6 pRq߬ LyWQܻ?hN+d~by'gxԐ/x0x<+ˍ<)2#u=?Aaw@CG'P>[-tp+ صzu ̓pt@y䏇;ZS6 Lc;Ƽfב|ed_kN38[Х?M W4u s0R_hU{{~C>.ĶwǮAȷeM[ z-J랷>s37ܲ<66ymZ*洇V%)_49?@M\{H@"8n8[0 - /fʂX[y8rqoWB!u=[,~Z^e0ɵ0WCr[Hp=˜ rَ_ >. D49Tmneov}PΠj[ˌGwb7$/%|+%ǾG7*%6\C>·.d_XXFs&=YTX [aXmdpXtx?#&^JOWOS&&kNߍcЎBlXbѭ đwW%1 (ȗ+O@$i_cP^/,ڴnᝋ0QWPڊ{ӆ཮w3YUY QEEYϗ\1{ky`y|?e}kd"՟D֯ɣ鿲oo`{ftxt MDd53// kJFHF>9ZיCd_hӛ`W-܁^܏Rl!֡~Q뤠~?D3Q(n6%݋|gGv .ࡄpXX܍Ma;=тok&i̉ )N#ץ]-k1pCCX*ngHg{&~<+@|06qc.ﬞj}'{}uQJNnP0乮7+)&n%) uxXdpLe.{_OɄںlʝ2==} u0=LUzNeS7ӧ1eK.  :׹uȩH=V t/ec1yC4H281>LauYc>aHT Wy,83C0P|,8G,y|@2f-ge{2V@=޳Y%exێRn=^\ɒmmu!c0D"G#Aq~j&yn2{}ye`@ݐzl%wG_66xc <ư:R </?,/- qWi]@@,@ ;c 3 >fYd~@mvª?΅"~sI|#k۩U}%3)&y%} gњo2*hwvLe}Bqlnt.YPxHW ;Gs0q{}mSU:גj4g]Y9Q?7N|~@7w@, FoY¶NwG?+6^ /# 1fV(/׷.NyEX|"$tW$ߗ͇:d){{` }Ytߔ,iݼo}C@cW{rF$䨲)S'6.}}LxpS1if?Peznkl~R1k(exH<5V:n7O|rNqoڮ }) e=,gu ^WoQ ؚ;Xmwj==!dbmU!t2JB/w q@u˸5AQi;GL|٣ˁ?C|>7W& {<l7)ͅ#'=`|+. HPN`ݑqCF6O='xx9~kZ,ְ2!L!C1~I]qVI1h^@oiu_GS6 Bͽ/p"GgQC?2sG|u0 |y;ܴZ=ȇyئ@U]WՄ~V:wA7%=`$A8uq-M=A$iY1:阦3__qYxIs{p:@l~ &-nDI~z% mg_QuEPeWzԳ&im}{-$vb -Ǵҡٻ~m~eY+8&ͬ~cj_o .݄~T=[Qv'7h$^|x,^TwDt~xk/S&eњud}oH*DZ@!9^D 9#QW9 ⺯j"v6Sb~~`tjgZE %hmi؍n|.FGѬeỼ(<DŽqu.X,<^V|?@0R6Y@:?m S/Hz3;Ir9Rtp&JBYq)N'I{#ĭW2?) iT^suui >o6ֲ]Ҷ_k;uŸmJ^GS6m;e[GXB\ n c͘&cpU _Z"]}{I{TǨgy1{Ln3,I,&sEA9?!_6vg5-y;L+?ʅ< ],@v[PG'䨹!9sAAwrt2e#y"kݫwoX91 nH:N. *twB27W]ϧiNs6yaߦ 7y˘8?*`Xd9g֯[u{taFdVTeͷB*j, p Ot!iKqό}HN7ק҆AOɏhHG3I4]r,ft(&uY(rufr FzAUR9Q U\y||ѮUy*lӋ.6@z BNcի5K0ՏdxoifSB!8t; \)ҼM?Fj{sFʻJ}9Tl;?=||4auȜr޾R<<',8&a1Œq Ư2ƮkCNӤjFd1T*ouT$&bd* IDATT,C:3x:8B Wm15lgA6<^qlO/]Nj7.?"YV߭8  0 ,5-b^kWSxkٝ2dƴQY@Q%x륲A=`D٬ bE $;_V&>WXK @ac~UWƾw sQ[o}|ҝº-0 Աϖemd&,[txIvćm F}Q3{"mu}u@.=a=ϯ:?%@MI^s;vYx|C@T<>1a\зqk|m 1_Ó7<=y<y9dltrx怄{ru Ժ\}GQ;d̴̡͔F~|ʝ̈z?iݮqekt*_?K )ۆ#V\:VPR]qI^Vl=P"#WA.P_)6dJ|TOY;^LO%L53PO2]NUSDDϜ_P=]{"*H=}]!ϯ*'^&Q}{>&fװ܅U~UﴜWQoݔOu`zQL8n[7S3 sԴWW}Šr7}I/dX.P` T=]u(jL]W?fHb/T5L3܇}}|xߠr&?YUt 2]:ss#c']Έōw.ZwEdG*M]WOұ tsTm*'թ g:w{oC)ɸѡaM߂iHxHwl>o$q9{e]%>Ɗq?Vu/@rP itWM,RıܴT<$S<[%T_&l^qɶ2/0{)2r7$Ey#j7/[>/Ϸ- ƏOօQP/`io46XFy{~ 1A]_z"Iu2f=/>LtgJ )ŲUe?u$J,4WNzv92,w_rkF5z(; ٲz ?_/AسLR;Lgd)~0? >c`䭠 @+سȲB׮~Cub]c '^BοJfx7+Sњ]* lKЛ]m6MZd};FT0v,P߀h}[g]dU4NFGIYL. xp]_c2zD/9Ѽ~[`> WCI29/^sdȳ+}F&ľv6*fv/=_g\@*{ :K=Ho;\GÞf4vAS]:細1~D(OwSmSjy6.ojWq3K_|rQh#y2@ G=c2b1֭/RnRk)Qຓ Zv;= ej=Ov+*+ K}}d aKVA2iFI#6 lt<ӫ X%|PXܽ*=/2%ڙlC@ÂA̾<;'gjղ3@c dCƸD\dsǙ?,_4'w~1ɔln. (oȡF]l%V_0ief*|o9oxRzhde۱ GL[/+tbsǨMPqn^2\5v6ڙڃe1{p$I>z0")=4N; UO/^!t!pqW@?lmyؘ!AC~<Tz;L2ix}!?&c3(&y=\,]_' ͚,4}!B$1͏$坲=-௻kT|P %= u[Eh:V^32NWcW%g݋8~¯.H^/ h~4o-MwfԶ7*7HLjb}ߔ޼`ceZ@6M0Dž1D=zEh6XGR9+i^#E} dmhڷt\qZȆ:V9C}G5.:̕߹t !tpCt}.ÐȞ֣S?ΟC;p]a~i*Gb֮\>q\ _~YS @D^Q^L8x"`$TR[^M7Zv %%kWS'!Pئ.u&xgʉ\@tO lUƪgv4`Go7OVa?#E!@^N3:Xƶ ?A> ߍHafv ^ZXqOg3qG7!>uw&6i_D1\㴬ع+[Rn16s} z^%.##:{G{\Cϖ}ܖ^~jpr== )1x;e^as?@7 z;gcڤ%~fQSo\9%pAVww|?p'<9e RW}Ldm/([pM VfxB߉p{2x2rP}x;^czp*z|EbK G,'|3tG6rbGN6P>񄏮INao]ھ7F*@a+W\ݞؗ",ǐHfJn?t 3,5ױmnJc|GsaP;0upvR#V?;b)JtO(xu8$xm7Esv tՋ@F?zrqbNcg+aO3:[^O}5ݎ[KPwިiUy/PIO\Ml[L ~;^@ouR~+ǟYK;s-Ua}&zpm<Nv`rzLl$r_8fuH35؂@fךAuhdY/M'G#{I>뒜|_.H BLR"OQ(dG%| f1~^$.ݲ}(~`{eW#Pf[;_WSTTNEt3F$vH$K鑘WY9"#.["Polup͡]T$xQ[ع7S hm۹Ɵݱ;![&ʌQK3:hʷAEt/޵tmހ:~+] NqM:\74;2 >^hl^o^>S,GogVb1MGW^kt$9R<P=^?Oab%m3w}ՀV:xP~,5`JLd/9Y>6/p+dw@rUzBN)Q{C=N}n(-|_]y֏]%|bG66{d<Ѧ@ɺEfdž2uU{SF؞XEc fx{拨^Z]f-~(yj{)͟s ~Gx/m~pbG;q..#sh)9 ʼδx"]zgU(ĻK(ɤu}6:o|7Ml~L~*}P [{9e}7_ze_&= ̡>xDG6lH#dǦ)KxS(H!,a{J$ɜ'um—&Zλ|2 r€:  ޗV3 EnT W'/; W7m u$NG ]^`  ^\" ^py2IV_D4]CΘ?MZ% G`M]iN3lŽ;cb-~sA5sҼ->ja0ߧ@3 1o[O1g1 N]y_|gX? " {oտTR GcoG׹[_{>}x}MF_-qΏH=ΚGhu X1}EۈclES(?:"z}"x?w`$_kWG(ٽK%-{)X+$ͮOL΀/ ;1{I(d7 ضf H C: ב#T w'xۨή^N/#5-=g~n6|4c8&`}ف=NGa8B >O$!@P8)ɳ'ڶ*O3,Yb]PuߊDzvq|Hxd֑nl̃P^&vFV#~̸*71j?Ǭ.:% z|:p0KM3c†4s|4=!$R?b{:~K~^rBQقFPV{.t]r|ctc>Fsk|U ˻+?&g*bI'Rɵ4I&L^$c9L-~GƈJ ܕ `tTaxfٱg4Qo(0fur} iL.ٹuSr͝8uvzv]ҢhKMӽR TX6+$R"::FuA"?uP>SՕ{]b/óӅ|9{X񣷮wT~jG[>Tpqƺ8d7{2w?9$?EtΛA.;6fzM&torU[d}N1Er9 ݏr7Ie^a>O<{h^ ] OL$>;Xb,gl5"U zGnW67|W~LV +V/OzQ؀|X-SHy2XA$@B{`ޣʯ p=l5}oQ2Fޟ$>wDd99ܗYo{pj0VPUBAauvqĽZ'-.yK_C@YM-䦀7mGQ0Fi331όX>Vi}wc|%m64óm=2ZB];(Y=S'Aœ)]} ڽc;P@ WAo%2BtSwY_[/9WZM #gOhNv]UFNѣSd.NbDG'~4K]>WXҟ4n6eY0-棷*IE>ݏ}??]I܏:eL;ZVkq6ɛ}gWJ{uJ,֐K.@l`VN  xk}]&ՙ@ gwD_.m:}NZ CvPn/gv!,HceqkYMm},pA~UflϡGˀoBnŪ~(cSNbTG_Cv]:a[Bc\c Rda2)R2lɋP}JF0Y@k,U&;ZTHs2"_%3-1ƈX#ʖdzQNtMн ;MwO 0]K0}:?*d+?/_|0۴\ʻͲ?ᇕ2sҳc_?gc<;F%4ulu{0%`*F*NnՎ/܄΀Ãj]Tū[EA\<].q=86:U>n_k@'J 2w#uZ۫ՂMnدv~<Ӻ* y=|, c=yte3;,%=MyWDf;Ojƻ.9豈rldgz]egolP|{g{ AjM(Pv9Y'(9 ci`l~1wrhc}]68`kR3D{_@Gc7V~3I遬>g gE>c ӥ$c}@gwY`.^2T?/ hEKȃAߪo4)+ IDATlu+NE;IctC*^ov&vn7rvn A},wsb&ǯd>i-oz}@mm͇|-9#$'F8U#Γd7 _ ௾V҉5W!zpÖTD"ox]@U,|Vp7־w.#m䝨k Q:$w 7vHtQ zdW(>tu)uj:v@41ψ {8xAio9hrB$Pl6m,<)S |RO>Xdul8Ć;c+θ\>EbUh>T+1.} 8 ~sށ`2xԳ=q>x6s"Ǹu_׿p3|Jߩb[qwy͋^CWs+QO{4u70^_wIJ ['szP@SBc^' CDI`I@e">gr6 2|'H@J/OoKm}L]C= e!* jGN)AUy_-{OЭzg.;fJ{k??/lw)>X-f RO%X{Jb=@ Bn` w5oZ|%<]BeI9*Zǰ벖7P$arkaARE scpxvπ3'򊼽Y0(KT׉̎ PCs]!~-l{a (f1%Y;ځB?>t' :TfDx``$#Ae03??/c{RwiS]ʆwB`EWgͷ@GWM(8|8Jh܄NFcU`=䕨O0u3UJGc~ k 'Ǯr{ؿ5Y#wZDq(IvMbvpԼC;As3FUS0Dvlwbt}Ͷ& 3uSbIy=qC;q3!X'=`0?=FwdGb%7۟)?3y#۔-N0P$FfbYh &a=2Jwo,nW|~'Grږs1z+:H~@O'f>$>,{y|Gӧ:y! >0%=Osy+'٫cK V(׫7kBn$vbFeP[@7X H"9fzc@hG*|͈}2FgP6~z>qGRpWu5EG,-ʹlTI{j_xp .fO>5wLg?K_#^X Z7*5Hgu*yP[w/؍ ]@{ov S׽@:eN;ejb_`Y.`2lv6s; pE@XtAz3TpVǒϟ }E:~V/ FFvy* (E'H[rc}Y~wF\̐E<(ޯz=F?FX2_c},('X[Ř.0eO?I)$ .t g{tb(M7y o> ~h净OGŲ`(b/s]/בS~d{$ew? AsF/FJ]ʛ5L'l#B'X)͒l x!pt7**ח1*VnF%}@%wjpygfmxk /ր8 zvj`ܷ Nc~rd < f?X 0Dž8@ wQ?n)AEZp7(Cr֋+T%㺂aBG/Ճc4鬣HrQ&U?8I~3je|Z3co8x:Oׁاn^#r== ?us #:%Ky-q`7u[6;E tN"}2~bcqV~(h;s+M%vNR#̓ƩRQJr㴗#GD{|%u~=GMK9;h5iP/]8ُ͊V|j@y/~[;!Q{[]#&a֘U ڗI~ xYnr=Hmhib ;(BN_&P}pθ뵯##..w#\<:rS2#:G$q}~!nh̾knC` p+$'w{'WЏf g/mZd8Fw˲/.4ӫKa!cxVwM񋛀OCMʘ8$kTW rgҌ:q<)e"uA;NhHz 9Y᫛΀^H/s&q% Фk2` (vj:X]#Xo 0Pjǯ߽?;}M| mtgw]6,FoW`{ĤC8 x{EÓ?o @j1DDI&vJgQym؈E^`v OuD:) r˳\eʮ=Ьucy~IhO%f%!⻚q`e4[wF/^\%xF]&W)DeԎ>V@X#` تe]b>nu}9௹K8y&NT_Nb 86dW[:.űv1+n`׮*6@m89LP cٔ@rt|/H!%+|TSEq' V)&6x2G]2}Ux!vzYqVN92m^&p׵1cGV 'f}m3o1|.氛F\ynĖ+f9+%FTXR}3mk;~x; {tNcZɐ L{D3:KW0G^iEqRRݑ+[J'u-JC f3|1:D]/#8tdFg?YkD4&wc }y{~Up:H9NZa {ro&w:Js\M;p|G ˀ6]Ҍ/`?_BOȔruV@>P_΅N^ԜC v).%ybDB X3Fh-&^F2H'}06gP{; bf$>TA`at'fotGH Wgr)چCip#ҧ5e~-I~9t`a7ycJGs?@՛ޚPߥ{9BٮxvJ]tpP^Қɴ#VKW^y.u惻_C2H. Di0ۋ[ 22lWڪ`}νPl_K 0vҺ>O]<ڗ'e$Q1g,tLh/'hPU9'h[&vxs2 < וs<]Y#O .Et uQt v %gE/M1v"g,0F! Z_$}I\JwEf [6}1Sp=a\RC"17-P\]`~qj^2 =vמOkjz`sC1Vǀb]pxW wnu҃ 2dL#-&ccP];Pg W(fϭVo?:^!Y~]MցBg-lTv(87@p- 'VKCԎ@W>23qzulhl`cOZS(}.ق8TY@-^neAx>6קñ @gg΁NS@pikH9j(YWH8?.$0l6=9Ϧ0['nW,g~ iwL6OԀ"&ݏ7ܔu3,ƃ\CFwrt tcK3l~|I+8[qBw]ٍ7.@񭰳r4QdB*i tYmIS:C8eY_-4fS$\?;f$M4XNIڒ]ϔS2b:X=>x1`+ u%g &FSzإ8Cϧe.l?Yp?Ut+C.Nq|tȔEJ%:8ҥ_ѹ6Ng~GkQ-O?qKѥ}{=>0q01sտ)&o}k\-vu})ji8Ab2J1zybs557"0> —iQ}u2Jv(`T;rW]@WZțc5띖1WÀGf@Y](3:/=uz-Ͷ"nMa6`"mi8h**+X`:x@?i?5rL)svW>H=ІY ov?%H;o`BM/cΊrd,LZz.m,Mo&z&:@Nꋛ] _Nr!vms49GStFJ| IDATKJ>{L뚱? ;qs6>cNpxR~=IkUhLj'ۑ}'? .6 `4όWʃcfu= Рr[D~H{ًV1+[=t2jy:~@4KvY# ,+WcKXS np@\ĞNdc`{׏(bƦ֚>b>^G_9^^&E클?sq tɂ'QY%B\A? hD)UdXT,)~t?9gy?HLV)_}5>E0Z uN@}{V]\t$px> 㽥 ߎW.I\a2t#aS '~Gֹ@hDǧ~{b `ΡW+:d2ƓMM^UNFT_V6(Z-HU흶MJWѿW] ,wXޕ6{{E'%:)߃ضw{Q?'pWvUq}tn?n Ge*p['Ἵ0>%@.Rh. D g͋ܣ\]C _ļ0';Y?59yв@ԗ9;nBπI'mu(;}vo 0|lۦ_2F<=O7C{.M}Mp/ﳓW;p@)h=ohbPv~(9[}/'-ZZʀ洶,DWK3q1ee3p|0Iy!7k22)R u3 Ғ &ʱ2A OJ /" ?RǂX1ˀ:D>;5h9`nZm'y7 z@#@c[ȶE_lUFحe}[7Ŗюz Ń7(\-FSel@uNAPGFc~\ҡ9Ǒ1D2 9=v|(g;e M4#ht) (Wzy)ء;zL "E`z٬ | CA)Hzq/;W? Ɓ&MW۬d2 M|7gpڏ5OӾ23^C<>ˎ5q;u)@tu" -i@+'I=I+_4uOrn` E$c _Notȗ]+|mtw0xNNll2ov|`2h˲g~ 03r2r>}beկ؛yO7HaГ0hMG4Flg6XvDx>EI.kK<_WDH%@֌v)9~yxh~hZh 1d,D n΁rH^EL~~^TO3@A/vZTiv\dgfmv{_jnvHݚ kր͋zg&ڧI.e+tP QVbƄ״񿰭mxJ`PU_k}CWb@?UY;-(^*|!=gg$)::k2snb1x'?/gJ93>"AU?fI@;ogW]a̺`/(;]~^ѝPIa}g #]3`LWO~gȈrC߿ ݤbdUb_,-N&fm-:K\Xgk;jyBp+*)/ L *'X;3w |N'd"{eH;id8wk0ck7;qʠm[6؇=wIa_?r)ܻLo0 M}wb=) i Ig "khGf^1FbDcS3jte$ 3+o@ CV۱IXy.6=a@p3$b4o/}%_۲Ō'gVϥ VE彈mzp~q{/h }UKC[(()MTdagk\ 1b3Fnܗ4 ΁$UۡK|&d@ m VĢ{];xІia{st,Bv;:YټW.0Bߛc3XOmllզ5Uq}%_?d:H刽ЛaSsh%NYm_PJȕP Gcwi}dꃸH<^&?6e_q0rrY؛UtbMb/GOC8/Y| f}8(|aZEj%6hM<Ϝ>9R=Ө-Do= =ts;H>5K$9N݀.g^(%MAXIRmrௐa) j> 1 냿ޱ/бاAvZkWYc-c0XyKdzH_vq8i[2~A]FV vC&ɋ- 4FovJ YU0{ԟ};Êa:ț\gރYPؔ6BESfa&+3y\m!|1=疐ǒ(SS*~^s7_ˎ: El4Y+>S4 HS̻~`_N?fWQa :'By>Q`Xƅ"%5x#gLʧW18| ^FR3x$Su0J'w,;q0]jGmd7}w ==?:~6`11Xݝ+gywJ|u@_}WKDhAԿgG#pb(bP5(HXy4v@ Y쏿zmGuA/\,^ i-շr4/9`G)3 }9A|&$4O}К)ƌV# Dvgӎ1䲯#Oߨq'f 4%( ވh5t^{Fѿ{Ⱥx~4mdZߒ8w{ϕr0>4ٝm~k~h ј>x|V%$QYT>+@4RJF$ gpKZ)L cs3 F?n#;! |Nq`} |@(fۧ>1uw6. NIl:yqa]r-3VVǏ rK֏*Ds'Vy2U@/x|L܆m.#cH\Y& GM.8N& Qn4:T#uc2_;Ӆ:?@%Y/ p|~>;g!^ich‰ay)dV׹ͽurab/LuP7JwrB8J %}"rP+ܵ쪴%tb0^|;ḪTrt*_@NJGs0[nN@~@~0]às쵖b*щ㞵lm+j'DF7o0JqKz;3Nv<<Ԃ$\"[CUO+,18gҺGV׳S鎀.ZpjgԲL U7D%=U{^vz|' wH]]=+C] .A{I0H]JE%3{{3ꋸKM`W[ލuizWsgp|p pPb@ܘ:af [\+ew'*|/fX2]>Y:~ VT@Z$oL(9u,Pob!wG| vrSA5.)dws"J?%#DtB`FiFE<&~_*,$rIs/q Rbp:$dsޟr얬&u~R"YPOfw IL+ÂYchO.xW*_)G^#,UML+@pԷ (NRWEok~3jV']}7ͣ"hZNSC\tl91Yc;/3.xfD!m r=XY\`"W";~/ Uh7s&uOdɾ)xIdإ}޾^ R iP \Ɏf_Wǚ\wϭoUG%Wj_Wlp2oǴtv:F7 u1AG ,[֔{$({5yF";w~(R2 W}^aKhbt3Xcba?JR|@iLx OVGYB4=鯡As'm _Ez̝0z|bK?ܟ2M3 1:b|6`uNI]&}h-7m/Mr(~pA'"@V'~:|཮ֻ_ŧ h[$ج1NZpU@\vF4@(+Љl?;wg6~2Vh k)"V8cUɘx0d5,i (3q1ծm1؆HlJ@#.ധ7e)SV8:.1XI~MSOy7wdCq *9|Jh4VhӞF;;bLo~p+-98dMf$pK"/_7M ['L<KcaM~st{q3:D]g'8O>yef %% =Id 묞y  ku׾> 0l  jn1)Kxm9}5v`bu /,ƚnw21pǮ^-8v5`bX7D210o~(_~ D0=}/K(l-8eު[OtrܶΛ u;snӚ|йC@D$0]@GaY}o%M.tߤRMq*?t>9+Lv? Q}ekhW6Hx\lY'ljx%;z!;N!K-!xGk'^ O_=Qy| OpcG$4eZ_8jzw>cӕuDXzSʼnA-bxl<h߾=GYHw1dch0=ݼ@v0]~9'S~>e~926_G@O۽!04PT(ZF!$2(@߀b3u4@BF "d\ۚA*=8@C1;{dbdվHqȳ;K\WCLJAvro/hɐ*D[G({>R8۔ 8Ȱc '/+d@xLs]E2eXW)ESj :x6l]kLM}UrNHNӛ5t!_tger .juoL.Ov :(M<tO~؇cƬO7m5w^8m~L7Qc j5!$S]@Igut3R~A܍q"v HO~v8~A0S^@ l9whm .f ھli\Af7Gk h " *O(/5K Ri eO%]<P~xa:](_Z\]?CV4ք/hU#^ hp_ACIm}~n甛|f"ÔLn8__voo4k+ΰ%P:)! .k@AP!It,, ]Wlh1&|޿e1P:qT[.x+݃ VBvPݳۍwδ~k>ac[KVt=[])o{]aI'_XeP0F~`zqcE ?N;cSIZEF@)03{i=?}$z^NrH^&9@lLZODT9pu2P Uf/R뀞QѦYk P>kkj|%Ok7V__ƶYzIU}m0 1o}&z H6+eSa pӧ3sEX_䯪apʨXX/H(u_v{AiB_&( "KmߢΐwD&ҏõ񹩊8l=@gm\K)mz `0X~~ɨ t>j0?-ǯ2X;_,t6=G@ߧc<Dn*Y5*jI#J{`瀴Pܱؓ Le{i.=isx#xF_vzƧxkG`wmc7f/=jMŇ/imGko]Ϧ^ҧ:r,+Îv\1 QOOGtw ->GeBQ,D.2q[3WIއIl&쁹THzhZN'biW]:?^]Z Dv[ZL1@^7 ʬƪ@xYG56Ia9Uy3,0, ,h6}`R`r t>X@golu>? >/< a]Uf=niԁ M/2x\:Vc=TRz }G*eeƳ ulK%gI}?ܼa￿tZO>> F"{:Q%LZR݀ nn^Wÿa@r]-; i;~屮[6'/zdtº3J5'$ƽ](pbA]PC \ L9u-o:"(dӺi!Ww //7[W{_{h_-5:*&m ނ#M~>U6x73xUض'y3{_ )z O}Lyb"56#bY~ݑώrۭ#/g2V*~_]Nθb-(w~`F`pMS'vowngSt20|_]J ^jr^Nz `"a6LH?w6qm3<0^|'A OHi^׀Z б}ۂsZfn} z^pr7-Y J͂TXzp"YvVGej=Dy fz+2,~, D@kӀg]W%b@^e*8>o"C*~96H nePtd V= 5}k~d1Dγ}3ʔyGӸb2{"N̜K}qHLNE8y"JiH |;}7K' bhpgT}~bLv+šϑi>mBM{iȃ IHO/[Wn8x(8qʎnLC`} x[t}o_ 2{5`wF?%@/ƶpMDI˶@FOѽW] K'9OzS'ޗ䌏U(~9hwgGYSJعXCxchYG" Nc: Φp3 E$ge{ZD?k/ |'`C` ~_ɯx9tieijG@/JeQ91Vd4+{Б9Q{ >}"ћ<2G2Q{)}o & ]^Sb`bkv ?~ ȅ /S/m|+ƅb(슿!WNGe޷o9q`AP

 ĵ_csI'0n]LqT?r¯z%|32h.i !й+jdDwa1aq z*jRCo|zs_/l1H]:e^=YMto*fJ@A}u#`m׀zsԽnNV/z 1.lꮹUz`KQ#8.2.PϘ8h'dlӅ j۝d1fOMz#|O:yGv.eJawm\c +пm_[ܱ,/?^RaM~0`7;؃}x~ue }YrCjGQj$oZUͮ` Dzɞo, )w[ oXa^,ByEQ&i3\DǫV(ܻ3&Z8&W!^=G\|9GNU]Ѱ!OAVoSk<;5Y*@ǀI6рf]2Ͼ 2;a}4`rZO &,8A3ޯ<oݖxطo7~ I!-nf _e~jG+ZyV͖yW9K`ŤzABTaiK@=om1,Z2Pe߸WO5E?Wc}!ZjY@] J7'S}%"zhhrQdWT)n`k8cr:@pjta++} z /osAw~x=qhþoJj7'7xxsIlJ8a) { GvtV mɮT2y s/Oro/|.즯z"iJ0\:r{Sl_ɌM%*ⳁ1̕]uq dIC#sK;LKfڗytAx6\+5:d .$cva+GVڕo˹!v.}T٠&~ _q%p܆u=&>zN}19cgf}\` هY|/?WO6+\ȁ8qS?X`H \rdC\{.k 0=7&*4Y#Ac:;h@dMtJ3IiWz VPw7U[ IK@cyƫie|r[y ?]^No n~pΌ Bujb||XH XG f0 ^cgƷ8P=\g;4T$t?_RJGb-ԶV=x.(8iP5)?>QkTs94>>W(w69ǛM!M'b{(N!fxU9y{ĩ[RWc 3yKdceػ D8xugù{d둝I7 kA0_  B~ RP&/͍ĕ_q:hbbWۀ%Uygb]`+v/-մ۹WUᣂ2n}AN/V *v !UF{n`Cc>Ǫ>&+a/֯]E.Y̨=+y^)!cR{~W\A}ī*_y|9o7_TYq%e*}e{'gXaS?[^+7%,'X9 vFd* :hJIKjwd {8. \+py$raO`!O>Vgj28+Uপޖ_C` B^x IҎ05K?6z)j Ai6eR{^C5/k(v/'Њ^<`HUoUQ70x1=+-}!?]Qgž.ɻOh f:xNnR?\qs{q+ԗJM:XQqsY ~:Y7 Pc,\]bʜ$NM:mVBw/\^Wߡ֕ ۥː@[+MctnvN5!\`oZuೇl#9>;ZvǍ;5G <^vZmϯK9Nc(PDzYL/zlx&etx~ (*dIѭu?˕%r[0|ߘꔖybNj렝JWvke+kթCY2,uΌqhKlL:ȎeU^_l .~H"JBì>OQ]^ᯊS!m%``] 5v,·Sw g`嫩-UxnzmW9C71WBk=MW6 Ցhѥ}+euXfӾQ=ct,לmq=UQ 16$r (tT F߅GnO9#]o:͊9rt(.:H'3w wGK}&EH?¹-  O]7jeƀR ƂO ^|̕ד('z+! ~Ch]&0"D} 5Lzwf>COȃu6 &zj``:3oZ ^m ]컯_m*$D+zS'9Eh߲.o@EWd,^UA?P۽&*O^+8ߩ7duQ}RaΠuu.mYM)6Q38CC$fx˽qjhB<^LTMl3oo)p-g{45S {3XV^ ~<-˜])}nBnsm8{xZ͟Pq)#YȺh;mN&夽7aTL+(eā^Z/R:֑ Q2BXokț̀gg[6̅· /}+Nm?rR]}?vJ ߥcE'Х! '*KeU܏ B3B V[:rIXF `@Q*:1aYVaws xlis<RU}G;NÜsøw7i`yت@!Gfw˄]~dVNlZx7eXJvѧ?wrs됮8SLq6˶!Y Հ/v;x ب1 (>kv/-˿@_ ]0g-`  ׳|K|yKXm8(ůNNZW2eߴ~~2h& bȌDCq |#<;SN2D`5o_}d VcJCR꛴- q** A+F#8NrQG2 YI\S%nc3{}öFK:zحFru8kEfiBNNW@Nk,u5T twokSP% ǖ&hJW@IVpmX3|g^vWGq ^&oD `AWKXZzUu|Q@wIh qmzr%(QpW++Pt)Ȋ ZK e=w}_s+r"M]@4 _:qK|)~A,2ߊ@Ⱦ1z80%P]|Hޚn4m)uW9T7*wq )>~̟-*; ze?8LNj/0O!p:!lbgW~18,Sg[`𡢯<1_踩, (vU 9ysoS[\e_@wO VWDVc T:qD !VSzoMKv@|R5吔@pmT-r"mgSBM rV"QXkY}S_]^SCU6!8| 'SǏ2 Y]=^c|sM4Hۨ1[p]Iq|vd5m랷VQ 091VϜ96 Y =iiXki\k|Bä xi$>Cn'Y~XOJkI% N `9±DQ֘*i)O1U޼o;<㟝\ߖ[s|R>X:*i'&C]ML"X~tAD䣂eB7髡6i HS7`>Lh [BBo|˖ oc$~6KIQj'A$Ru.;~vy]R9 >qu)?HIꩁ\䡀xo1;a0yT뫍@Ŗ3G}ꗡNJifqމW~@-^aFx8>QOp WL97C=9 '\.LSbN.8smN"||'wL,ݍ_vُOZVjB(,'L+ͫ w,1+N7/B'zʛyv3(~Y _ Qq}V/\77`LJ؋>) χjYK&SWaCu9ո&?䡒2&PF X,kўݯ_Ԝ€ c8S'}hwiRWjd1ͯ6;Q虳Vummrۻ3hIypmŝam ~ƒ8[HׇD^܁vGeSe-=HӁps<]~^ #M":[ƻZo G.n,\;dkeRփz[ vQHl#9pGMV)"P+PZ E OUf$TRU@x5DPX.5Ѣ^ľ껹]:ةЫ۝W-o^~H @h)ic 8fw?_~5}Wp TO 7c%(x4~@=֋ MkpN[f_rQ Ϝ!F:pNpc'g<@p3Nټ3 S`&^UpPn30"tTÏP<1x7]8p, }q=`ʑѮ^e{$@`T-!(~ŎQo^zT=Æ'5Z pQX@9goB);U7ok5EW@H, _ _x~_'%V k/3.ܷG>C$H 1| X9%#OOPY1Jź ~í϶8_&e;zIQAEbG&诩9zqi_SNln4c஽':C3# kϥUfr ,w-f(})ϋgb"ZIq@8 nmҨQ7Gg$n4uPN <7@aκ:LzT)&Ë_}aËYY ./fA#X]f+!"y|G᯿W0 K?wk^ڪ#h/ Ŋcl3y\z7| ի2` OP\ k|mP93|1kjUxoz_boTGkSfq A|%G@o6TU-/ Gu}tty6l p:1AO;I8+4P_ sYJ׳X5 A(m^vƒ~(EHnooyi`?.C ;>aV8qrry˒ &F'.jKB! 3b7'!Ut"F= '3(0o~ s ^7 c_/X=X$l}>E~w{e2y򛆲Qa/D[R]q,b.!vL46`آVw0pXL}lu1`5巯/%gؠX.C}nyMVnAay_ɥ̙BZIɍvٹ{4?Y> A+ddΉVt q{mQXZ=}ۘ>[v`Ȕ/um:jd K^Vǂ|gS—o|2~zgȢճ$*yektUA&W[($SA_A|T6"rÁqx߫Ndžo'n1߫@0w.5b]Y0T*X1o$/UMƇɸ\5:?Pa{P^e;sL0W^\ig e,@xuUR?D^n&.R> .:߷#LO ]Ćf5@yw?c˓g_O[-BBIB}U>?蘔6%~4/M/t6"YmC$*o}45~d]Ҏݮ]Zr8O$NP͌3x=ߠxt).gtyh6|*z$̳k ;J(2wQzyA}] ?W Q)( 6]*O`;!KEL4y{&Jtﲔ6->%  C_=@?zV%UeN ߋY軶WNK8+?,~0:7o_o8E_>a㧎eN8cQ>"^'MaJhn!*8^9.J&gmS>m($΀s#9Lhګ]pAoJ(j.UyLU{{jx4[e>φ|{ y|p[IsJJׄ;!ք? w{褪=R) ~uxL#ZeTo?SKcq'=U. <0d7! O%S/Q仿ȇ2`'ZO]{;4 ~g+uP0-t&y dBoUx셏ճJ""2oN_Y_ꜤǔxEogI}nYXV L3ceod[A5oځ&zR IL_}{v!-IݩPbQƻusR䮪7=wIs-|+jˆ`W2 D~]< Cy)}K"~n)3vˋ8<=ϵHgݟli1Gݍ脵._r!Y -!A"*퇭?m^"+od{^O@Ok rBZ5_}e+u..LxD_ů&̀Cpܱ-+77J7  $hQG1x7n>7au"*Z}|V87doPReV;=Bǩ/ظP+]7HuS@O~"{PrYJ247ow y_XGfɤ8|"ln7Hvܙ WfP\a `&ҥF&M &CsBUWD2Y𗼲V^|Zy oyD\aV"(E+pSv+34|WW ]>UY_1huC-tFo udĬu`=^uC;3R{mGiU.]k z1z aaW)7ƥr҉}v4+TݕStpaP{]Y\w'P)v0En^/(ēMހ]D~)Oy ſOrHQ^mh'I$ٍg4Lk2`Mn .#*ބn /uT?7_yE\QK&A&Z|r/"{V[+T6Evޯ+וB@8tA>0NЃXW28e rϋe?PM6,6lWb֨:TF[}:,NGqJcr黡t u3֗L.|[9ܽφcu,3=.]%\[wCq-MA7l+\큉 4f.kL 0-+/'lp Й]i_N{qҕ{௄Joƾ_'~8-;/}v6 /*xTcȩs|ʆksc;/g_,DĆ`G993O:RQ7-]KmY{%;NcP}ya}kJDD p9-7 _|Qwo!Ē.qzNlC~ޘ IDAT ں7h+lMm>T4[BE<mtwW kN>y: 2 w_ 7 DE*v~hI ;_ws)|T}&B_pE+gj^ԿaxJo4B&fdͱPĢD>`7뵼Aʨqmеx1 9 R\!i;ocXS)u;:Ru5TF>ؓ)un`! r- wSs_y@XXÝtV=[z3$|OZ̬)l&#> u@ʆT_UD/+FV' HcG vu˱4jx2!`*6}F۾pT@_BP5659PqJH_;@S$|EW؟eG n*? ++ƮMA6Td gAԝ6y(f-p$-6:wRhh G^U8>&mq* 4'p'@tAlAꍟN~PZ v:Ew'B\ɩ'B3&󀾲%RK|61plC'΀gƭyBX6c?h*`-amZr`k&'6 ?)B1o۳mPZ~ AXA~~,K!S^IOBO >.ЊaREmӥ)bdYoX M2O_S_G^o,~P>NRd|U8Bـ.IrHЎ3v[lo7 ;3X:`DqOX'?/!il>^-S7/)8] LvM #v^ ?FtJxrinɍs 00\uڋR~+!θVȀSzb|C~ G$bjBwsN *$ߎ #ܻ%44x*m{{W<ʠ ~wd,*Vʥhy= 9ƾ[S+K.a a~}:f9dݑ f1Dp;[:P eJIPh.'(K@.+ А+:QA>yS#Nt5[_ƢM<y=Bjb%<,߲oTk}۹(D=aCy/ WI;CQ`MD[_ޠoL؁2ya eR\zJ^NJ/-C}<"_ #kWNpm-7w N89 d*N T)tEJ;MOɰoC+K҃A V#THϧ`ĨI}` u#NK8q]"@\xL3I`2qj#!A]+v䵢 :>P(KpAanP@C\+}ۨ4IpYko'F%SwSr[-b+ja}WCV ύh Y/No^\+oJA;jj'F _ѶȚ~71^]Izj/2^]q6∁騭f)&zGHxP"+LXz $<xV\/dWRȕem H(|:S+-^_IVK=8U˜ f2-? [--rm_GF#8F:ߠ~Ub#'J.C!+H7#/+[냺<Ѽ^jWq-nWr\,8=pߕA=3=I~-ՓOm' 2!Ș 2vS0ZOG ;Lg>ulb.m\έDxЯ k6i^5Fi+ g,㥄jz@ ؇ ҭII/hƊ G aDžz-6Y㒹ߣy|! " qI77[S,PۃD.R_R#'0UcEw8}gϢY N4EA:7>HU7Τƥc*R>Uud,#cUuJnW+ h?ƙ\Wm롰<B -Z , eK T.TUruopDڼ|sow&hRr[> CNH3̲om}5߼#3~G_N܎0)6/(oh8&"&WG_X%qs**0usU^g(BU'Lfma_"G9d(0(BPV:*lC_q:5\Yߍ&N[?b]S0N}툚A:\#Ě)dAs_% a纨Z0xѫC 7Iu^+ssk:20Ol7z`Yd5HY[uTjN«|Qw>W3YU"6Wώ 2`3|p/+@'n9-@` 6r`6\)BWfkg^_;BEjbfIL A H\I([˒r[h rek2E~N>N9*1Ɵz9P>קrrHI =+I@ ?'7*W@?""h`jua[nv3rF\צc5~Ey'Q9CWm[*9#O|`ٮ5!l[>)à@ژo֦*ЕէYފ2g y`d*@5웼3,_\nO _vk_Ȋr{`yo u2@* ʣh;Gp#j'|;dwF@HGl 8Y`p]g~}z PհeB0<#rś8)[nI76`||뮭!!(痰G^j'=yȾ5nv.tJϮF&_T"򕹉%>*(a+y].([JG@j[U.ݨmlHEq: 7O+2& "r|0ji[xq': 3W#/-]kqzV}UϏ`>;ڭ96}$!;4}mq aeP3|~ l x0 ~p_kof픲SKS'{.oR͏3L>s{y)iA%gɟȭWwmJcaIdvNEW:XK!'R)pH2_ 컿&A]5/Ab}o [>҂ҥ]=s6J?I=> W :l3qө^6aq#@!>̵ \6 'uQu\wO897˪ >x`jvμUtlu?1r |lD1ggA2&w/M. ,O|\t Wq- l˹0Ӽh-G5ɧwcƉ\G?,ջAu \ kU KL# |^"[*C|z,e119$21\ t&YSG0UWz(Uu/ 5@= E%GjП\L0e9}hWod:m\)8)mV=-N6Cbm1]\;und? ~ =9;ԻwU)kJ铟g'$9z4 )d3e|XJ>'Soځ!쭿wZ0wBrճ&0{%l7ūƙ޲gAB\&N.WC kJ A.7~ۊ06 Va+K=/[,o޸&Nje8l:`du_<6_cU\:ΙNRNwGdFλ_0aލz IĻBHl A '_O2~]3J#{ѥcIr]۰먞QuXklC!8V۫UA 0)CzȮMo9gs^r)!_ " b;zVWUMlz6/\lE\2&Kنe)s# _S]B= 3!d+y2?_똄6k>*J@#@8-{sfEAl9Tt5 e}LauorGl ˺l3U;;4_#Wt  ! rq cG2'~&d,Ԅ˞da?pwtN8Ф+5X51HR;AO&b ` = 0 @*SAyԠ@. p. V.FWuy^HUF ~XQͷKeT4(W_c"mWsˠmOgc_Kc:F(8;?>q7-~.egCqk_]*]c]_wO{LkU{>fdiY00r73e77#_&"{kicąvrQyrv=>%v }&6SC땞ao3Tv1^eahw\'ѝ)HW^}*S1~z6^iw5񦡨kߕr(VT R*sgq% Lpա 7;P(/|VKiy "fTF@Ƭ M A: W :{twVFoC}i\,SkʤAiKBny:ǭu2[``pry+a.H 9@%ujzy1[!C6%+'SES5W.CWl[+/}'nބRᯊV[[Qlj8GŅT7CCvz)iPɌ@6 08 n|DL taC3W+kuĜ-(\'u1M94jjZH=:~i7UӘ|P9lOHwys 2^=CMӠoQpZ'm.D! IDAT&()DWǴI,xucUnz|xx Z?ksq3G>Yf.Asr8:1M`㻸]E !( S~ ]Lcob\/GVaܕLA_Ԩu=ۢ'< Q>@ǵYNyؘ-mݠ rٖn@݅Ie/J1XZǼ-(\'+_3c#O)g[Uh$7  W}FiY“Y !2jBN4I_1G'm{X^ZR`c|Rer Dl1[WUlB>U շwKxA`j R_sݑr^-ہc\#X&86~|{a*R}D#v [ -Uy-cUXB? G>Iv%@`s)ed[>_C"j6Nq¬(=4u3y!hZ ëY! "ùa[@@ʶk{,Vo췾Ž_|1! ,*<66?Uzsp. ަ4.>56_{Wn%'Qfaf$yOM/iTw@?%䋨.bSK 1}s%0_?{R?GH'ޞN0+&Tn 8B_0 $:!_?d4D!x[JRA+_i*'̛ z _%ԃz}eX[atWߊT};8:ZWfC;˨eE_i(VX~ %.Ǒ?j5ʑ.Zk`9as#~5Wy;ܱ4+/mOS];XJ/]@ނ13ɹ'ق8?52`W?D`ϓK]T 5)Z`x7\P8.e(mKMv9_K{&kbq޽!(qO÷M'ϖL'c#m33P}BӬ@ l46*ir%q:~a4KaQ_ :.Wn,k\27VӧuI9$,|ҀO=N7N/Zښ-AvAk!DߊMPǞê(I/7%qB [֌jv@VZ`xz#dsM[Rk^Y7Gvywp^{rQA: |B<`M[qtyX t=.Z9 pB7wݰKHqϫo)p*ݿ QEP5ޠn K,‚_TwO @¹)xU4$?{[xD̢1b( 6Yw~P|3na Hf@obzճ)Gd,!*-UBIT^BżWv 67yիմ>R\o*cUg 0J&Nj"`xO Ec SF ʲ q6x*bWk$~quRZuHqە of |Rf v[ᘲb-}G`#ڱ&1KC!Aʝ̢JC;|CXིx!\&~9ȋEԝV k+[+̻q]}'MiқdիV!jh~uoVW-PԚ2_[zVnJj#}ɨ]Lo rA& Hܧ aw9AnE^L@WFx#F8s-cL)ޫ+ jGF stCjv8睏zw&~6_prjL6[bsXCoW/LIyfy2'Ѝ2- tQ:T_8%2w\$Ei!ӾWV5vkλl5>1\cDw |=c*ձtp3)O݆uy>Qp*UFc%z峌˄x Wa3S[+\yWU~q|l2{Ne]ҷ۳J [ܮ:-XHVG*F2"p\p"~V 稺9UvW;O2x-I\L Cɂ0~2ŏe#Q3gL7 .+;P]@x IC `(W~BYi %=R~~Oqs}+3O9zX{}]AdR GF"+hf @Fu#VFԈRrùᲃ'+ɴf}I9a^ž^0Ȃn$v3Yc K, E:+dd=pLȿ+-\Y7=JP^an]}P7_!0,;$ĥ6xxp49u,Tjcoy%9˄%BTOAXvOo m*w__en%@ބWY JҞ>ܦ/`)%tD/8(Ne?:9WN{_Oiۜ? aWq*;9'pT##Ʒ3;Q>NXgعNlk'Bd|ղ`pXLWf5%w"I4 UuRE YhKzOz'!W@:{L ]wBXƥw5wޅv[W/)4S6y\ U.9&%H`#`V_, rA8xՆce7CcQ #%AnK_;xm(_, z4gu W 7 [u p+a܅mndcuo>wS&EWwo5md8:),Hĺ#/XXNc}߁7,sfc`%]!`dhjH(h!+dro,cFk?`Oq{@p9=TV}%2 S3Nu#Ѳ ZrE2@*&T 2?]f>2 %enoE*/-᥆Mc^_6|0J'( Zp,A:@;H'_8gٸ}C鷡972VεU%NNuw;u1%g9vm.Lxu#d*e>(  Yd O`S8}/Vn/ wHoސFKh'3vue#vwe;>[wCkd TI<$2coYV&xlv̛ ZPh ԊPUV/׆6d瀎X)o m`ᯓ}W b1/̇<@G[r2]Rx|H;I Ϛ2jUwgY0/_a@\]p%Yn0Sgni\w_OWȝ`p{Ϟˋdk&a@9g~e,8Uf[ _tE`3ūᑛ|ٻtF] uEVhp{仹 ZNG *0cT2X5s{%<>R վ.ߖ-oB$f:JV TQL5` 욯fҶ\>"W"' Յ$699%U+^1Ƙ$TŠl㪺>t7;1(12[یw6:|޼L^t6uιl]+w+ML$d>,bd>`0nS5( SS x(#%esn  ZXԴpx]5agC] AHK{>7.PCYY յ>SWނW7' p3^lC^^ip*ğ02e`V fXrz]yhOL_:6U!|c#gG> z2 m_j)$Efn.PywEIm?3YXL n|, ,dar:x(ad$yuyꛓZѣ+wUl[ez| a wC8ֵe0d^B-&gCYQ-O LV]_CW79.I+Hj MQ2\~K3kZ5 @3Փn1o]Ƅ#x|߃WZA_iqsՠ~o1饸x_%g9nKo55<܍47+N -;JO@]cq"V%Hyt;r@i.!,tHdoe7]weE+{\=FAnf[c ۞fz!IGp1(]܉@qb^^}|,YV+W_tf>1^o^l1ASX^-#8HtKv0z_F*N홁:<9%np nט-.!pU|V mF. N\Y@XC.(<@ѽeBX}?Qi$A;Tî 9j1{ 2c> oZ0!X˧unEhv:dsyMuX/_J_v rAI =8ɷv6P܎3{E3{` j;O]K'(= ~7Ў@x_Eh1)R*:_仿~K60dp}Ѥ"P)Ӎ< v &zAGLΊaP[B41-urLM da! ˺pc{:'SݾՇhɔ?eOl]T>U oJ[XcW^댐E&8u5x)gX x':2`j_T\6s|hpF[ ߘ-tC0m ~ߪ\Iu8kul%(H+ A1:Ʒe?d>,~!6pkkh$ d6e>h{|q]9fM{NR@;*枕wܪiK34 4NC_*ifuF;/Ndâ\[Oda k&BS[Dtrd5*u^-2">|Һ mjܳc m.S5ji13QOA6IHFeނDK>? 3k*qft 293h, Ld=T0LH¾.#9Ȝד^k룻,+U zmJH]| x(k|ݑQGNZL R+ 0cnC`_rhXkK"Z@ʟ ~nofbhԃ쓯fp\bAؘoSePQ] 8kowuyȕ56W ,㟳' IDATtln7*pzq8Gut<_r{CoO>HF\W뜀vaKith8=KjB{>e w05` iۍ!.(4'aن➇֝ɨ;^ x+J(/aP$AG[N2Y>òreJw-8o˿Ish@+s} ->|bj߾u ]<\CDvp$F6ÀMƒd_QS +Q٧ս_*-oS/h\_ץ8umW '%okn,_Ⱥ+|LtoO&s[rG`ȥ|l&8W]irGnWGsea" MT(Mo,wuKz9L% [>tnM킀GDg o_Pp)=UIN_W:,eXf6+ f ֑66Wg}B9p>c;)c2KIS7:G~%ӱ} B ApO~Zl[S3Y?tNqoaS:rc~L&\|WԱAlύw,QU&'jѮLM8tf,`l҉ X0]?K74 )ӥphVYLȷL*&nc:mx_?cܱ../RG/ Sq]lg`6`e]TV h9~`vE~jlW;N l(+}4ƉlVۍUH7/k;[mc"cu ;lG~8 sTO3 ugxQ/ȅdL^1 ur[1kϗ;%&:~I4G} `dސw`L|y Pɭ ^%$͕}rv۫ߜSn Gu܆?=ĉlԧИ j*Օ)xp5Bwʰ|#hrݲṶ-A~.cp'maqKWzI\!fk 66we|WOl4~1_\]<65~$}.׭xy#A=YFx;} !9  8p3Penϓ$& l?ĭܒOi5LRSrca gSo鐊/59G_뙲6̧+-(qDo7g'ܝvu#͢[ :9vJowXf r5^1mh(/a.ε~Y#U鸏q; q)5r){nH|*_w˚ f<1n3NNcd3?OeCrY ϗFyMv-bn X9̍_8ogG˦MPv=}Bh+xL["3ی/[~'#k9X{wc>W k6 >L&nGQ댟>I5\MMDώ2>ezF`p+ N7™[ZVNI"I鮾 {l<<|1?Lfwt-wzW` ,b:7wFqh_G1#,oKѼS]_DW$v17.1Wtn^fˀeǴ  =_7&Yǁ\@l6i| F>z8 z|; =ӥp_OEr>ʅvs MJ94=M;9tU\3N- >3N !̓@8ۥ%<9< M* C4×F9:*w1 Glփ`~fY[:i|`-6{u ;*A.eBdB @/-H`DZ+6>έd[@N.}O6`R`^H/#{ze4E__wC&WT]QHb>ZczP>q9[ĦTzm’Napxԥh84Iu=@p|l ϓ% >~ ] Cv]&$R7_ 3:7Dk:=jP~?k~!G"!]mLkfU])9R Q)RU/ S^VX ^Be2 M|cS`FaOv}قN(*叶/\ o >>>a5;m9%vGji͆ NL!eI|ʀF"5z 7gtOW؆R=]>YúL;65V߫ -tAr۔K<|u+<ag/h?-Aw֬BFŻ6:6cKʦ*pQjg WٖȪHcv`j=LA~ޯ/~U~v/kWBm *`f|W؞G_!@oI~_ҧ5APGM׻׭s%~&QU랃|'g@:_1 rgnԈ w]V.i>]𷔒 " i?:E>;uVt! ASLgv#Ӭmʩv! } ̂$/UZ_ϗ@Pӭ*9L?û,oBf-|?/K${5XdƂ}ڕo ݆/z_2'hb A0fOQ0r Djbc!r~[t?Eo.SȬ9xQۨcvN0OjP8Au&?_eV c/ ՟'wL¯@‰eAr OM@zo)냻OH7}xJHQS @h]ϫ"{ f{ 7}vg8@ \@Iy㰧>ا UR*9uI}뀫*3PZlaN XE 6+-2V4QVl_}e`)WW߲OP>ǿS)3#1hlCAc^3g'CQGϺ?v^57 xJFdG_9h@G<'t"Wi8^0xx݁qnҽ.())=oS[7x#Vμ7^5w=mg ֈֵ-OUE]'֍Y@!1n| IuH#[aY}< |촾K~ݭ%ڄK$ ?]JeiK˩̹ Q6h+E PNS_k?VEe8fsB?tV☺z[2Rjsz΍@P, {P!0tdjE;K,<^n,.<wR,#\}N/6ːpU+ÿ;c8Lw3=}سkY8AW̖?{坕md;>r:@bR2s >86z5N!(/S۳)ԧ4%'yYPβ~vrW8|5+{߲uY?z%5%ˊx5.R@U,7 !_lqI|Ejp`eMrdLaca+`?]՗gV9+Qܯp=ʣmtܭw@pi{ቒP~F v7JݚJapjM',w<| ? !tAƘcn& fr~<_p|6yEg:vd^\c 8"ҁaD ӳIZyzqj_O݇^qAa  'TA<_+~@A ~m/A/,W6 xI`!|}rVMPKB9oӐoIW2[E>%_rLȘN ie^T/yqvLc L\fcǢ,\u\=PO{7Ixް,~@|Po;%YU$ É~G'nw-**3t ZW`7.4<;,[7T m L z'n U djD`x&G9o&f_"zKyߴͷQSæDGSwI;-eYT}qOhV zH"آASGVLK`{ZNM݂9+{1B TzCy|&Sh-ud&ם# ^=5!' |p@+i\̭^|-aouѮ?̑paq;Zڿ=Z A@$Ccrޮ\UiA?|_!r.D XET< G. a-2lH<~H7{V˭p@Pεwr4of:V5IӰ֓^S`^Ȏ{vnTW5OZ MI؊TmE n>+7ɷ}3[kJJb9ioճjVa!Ckm1IW~1XJG ,mKL}}m|P_,W8e Pot^c]ZKNy*S gzPJg^/^an~1P^qH>7ub EYIq ́^j1uި)i7feS`Jb_' ]Pml\|_",vtudɘr,]ݾ*ߍAweD?StQV^*==;Agbz 9D6>G=d  ejm:/wR Vn~ Z|^Yc @Z~4'd%*%0ذˬ{\%t Yb׳Zc:ﴎֆ U tu9tvL']@ek>ZR}r[ڲ\W$#OdEt)~w51)Pl q}M\BO[oӵ!UR A3) ptёwj.&;8B7 Y= U&[䴎¹Z%NgCY3 pa_*֔+{QӁ7d\"X_X%Cg E[% P@N8S}Â*F>ۍ U;N>:ݞ) Hp\ HuFtg(lđCst~decXI0ؤ֡:Q{{.SL^Ώ>1n_)德comJj/gzs/^c C;t|mx;JSG|lIy wW Q bwrBЙGi/l(Q}:yMcIk#)r+|DzQ_'8d/Ý ;hkvfe<9ۺݳ a|g@MR9~7*k,jF@ < J1n/vDXt)00y 2$Kk+i:bd78ŭҩ z! 5NuOAy_TŶ0%_2Ħ IDATf}G>bX2M?q;Nڇ+JuJVt7B=_;CB]Jƞͻ > >(~t;0Įrܡ3]dи=Sd1wuyD:ɍw>w+9J}.~rIy]ټ4[9 cO]S|MɧB_VI$?U^ $-'ץPI+ z4!!T?t[^T*eYׁTI7۩0قOSzPX;7qE(}1Q+2c/Z!̾k๑S~8!Ґ&[?@Y`r7K =\Q`Tֽc`nӵBB`԰R!Y *ܓpܩ-֕yd:3c9 =CYw%'%sn Ldspd}2;t.} ~^IUw|܎AyAW=13#Q2|(e~o_ ts^ (r%F>Y\AgJGնMp7+Xp]uXfP @VZ?\9y3{er:/_rIbq3:䟀JM3=oKE?4W쏸=4 B7zʮOm\dٍJESms?7jr#*@:rډV !%eyy[^ ^> Nශ0 ϗʴJY=[g'J/6:t,%OHT86m{BMm](+0Y6 qVs z~*P}emFZ@ҝþDTVIj[f0S5i2靲hZG LJ(G~ .(e &'d09g43&4mE=l vZ.(+0*ϒ8 nN 46! o_PP<ϻnr {!t$}A\%Nu[=C8gǎbbBqP(?38m9lXYr"2z#[?5;8xXjG i^>A[8~y6ݺ.T1 UGxo^[3u+mUKa2dnK S83hM!7&W55oVV_P%VKtIG4GpPg\R~%ﮈ?}-8Rf  ~rPRsl6hz) ,2P)Du <^NYݕ l P(?Nnq)(m0Y;Яe霌}žT+gF~+J~vt, jN0^B''5ӣ T[)K:Xq 2p@@=>6\7Ŷ9N?;epCx$>U-%e+Aq d̖uš ɸ@ Pd-oNtq|U &б#`~K#DHE Ū%zDI/G^y |kԹ_Ntld;u19Nb~ňf%`jC^*g]! @xAC,$@Dz&-kfȏz1*n+VP5)WfyㅽB}6T e"6ZzVHpC.ѓkm!p^귔_7UoHlQX,%ӜИk8o_d7//]֗;r1.3a[ ~eŷצ 4rɆ6ӧ^ ?*J~8-N1Q# pྌj>\c`I .{;o4|%x~n~wP==~6iCP8({PW)}o<tAJZm\aja,eTdV}D!gLG]qɌ`{6g]/ gk 3T?M;uT#B]-Eg_oܪƝmh)5]^w̞ubJi뤱9>I%)sRdW4ui۲Jbdd +[G-\K# M- J5x)+_<C9V_*'Ey.=x}H5:?yӱ՚A!ԟfbuv0osDG'x[FmoSfe/Qbno\_F7 U ms×;ͫ058ΦW9+A&_;Ǽ»#+ IC*xгkԜrM3.Kszc#7%!seGo}X;1Il}=Y~1w-)m=7Hc̶.`%CZ)걍ס T 3p9\~+C`}q%e2pWd,JYѻeKcX8d_~ A[7K%Oڹ; q-Կ1:B+f|K 6 gof$~K'-!/$5Nգ%:HM(`&vza EPG9Ws? K5o[O +<'s/;uUܬ [pIvޏG*gԆHuJlpAQ #Ε;`P瞧sdlnLS5?+eX~C0ԣ[%eHÙPտ"T,URO*\k"xJ`A0QU.~O/y=Q9\z9#@,GXe^(LI>Kh؇Io}{w0>sQYguTK|ʴrN1ϒh׽vܯ h6,nBbW HJ>fIIIՑ&X&B>Un؈{+(@4әTYt+ k IJ^qBp(O 40 ܆s9!##( |zΜ5)q S}uq~ؽe |< = Z/)j A< :QraLA.ĸNƒTx!RoL<& w&w_9gj7ͧӸ']O:7u$E>a di}1+:\cTΨ@L*&~#@X&`U`/)pQɶ/¿ `@z=@Nt0>z*[IxrhlYt% <+w>GW9ʨMjK<_VWA)^=V[ϵ۞IvZ8[sǟ GWb8ebhܪ1>7H;r➯VcLl$٭Q_4酮u`@ґc?{*X+HMː}1P%m&hA^ ݧ-!؅2 #\T;8BG1Z-ۀ$=6^v͏vc6=x8աE8ɕ p\ vfAa\+Y.08t\qOۃ`pu< ɒCQq}$tzdz-hկL4keLrD ?&MSՍL+K#ʨGH ZK-8RM4HP%)WZ(AI]\[a",.ejPqV/qec ٵ3XR]倗(Vvs\?/7̯:5-VOWҠp|5_˷iwcڥ>\7 e&"Q@9.wfIvSo%a'OoI=QzlcZPg`TLܓ5I7 |\[D;ng #cKs~, H.2if7yN*лANn&$ߖdd+/^uM>GGf18\Mc$?">@b8Ww@*TIիmKecRV!5I @NCb~uPwW(g+9e:(T循7uME2u̿myI9qJ)3|28v}n9@B}':LguT.u5B{[\eL 5ֈdLo 6*5ͫrD2zlhi+wh9tCъ'\ado ֒,kOh ۹#I6&|;bɏ :S. 5?Z6㚵BmPeN֙O1hդS5aAb?9 &U;"1?8,@ a CȁqgRʢRV){mvݬ y_X O*]ZtWSZ1/?B4Jsķa% >z36~ }y=P11m_dVz&lap]{6ז!6\te2kUIF,D#nI'=jA JZ 3aC1au`()?) oDƧymEKsS ^'̬ 3+̪ 6=Lggh|VXNYRP_0hkjF t@"ǾgRg }2 HB& aSVkx+_ߨ +p!ypbFv<+USXNַgnS]cStS6j#Xv~\Q \_-u~CQ+LŷXB8g4֔ž/i`S~CHCgBJ۷ dN.@*<O0t֙A?6LPxCEe_d\RJ[WiG0 ]+r8Q3qC1}tBJZ~v)_ ݳy;nIzfOԱ*ܰ>4IlL Քi2 RlϫF^V TA*T") Y[ I 7Y$ mVp }krl?~S]I{P[AQF\fLifvP&a\4߂  0ӻ"|ͫW5r'8Nc)f;ʙ\y։o*>wU~DNK='7l YX\qO]S!v.-mZ ]SG&/x+תlt[3 Ax5$ͪRVJ%$(?"OH=Oҝ#LFC IUP}P [FvY|\Z5=0}oRF PrI[v.BkC;O/9Ր×3=e0s8E/nr0T IDATh0"W,UAM{mN-v2CCqu`U6rIq>tkİ4W~B"`a[6nC׌b> u'mG6|wT#`k1G牳 7Qے M} X%L `'f`KtR?E~Fɼ<-ahR`qҭc㽴l5q qrU.:/+X:,w`J}9VRo\U/ҥAP sάO*(/a/^!/`"U `l6;{e##dpgU)AKXt>t1NŖg8ИrɩβngsMN25)qT\n0 lm*teяPgitJlWa  WϽ/(Qj{gm 0-ҁߟ(̟\J$yBHfhu sؗ܏O0UDt᯾Ƥ Y)fQ[K>1[ys 5\WmKG4^=wbgI)2MT~/Lͦbˏ]jD_])dO_/ CNg;a0Subcw65)7 ={%~pJrvURwg O5gL'Y :\>S>A\"D?Dj.4eY z[HJWXŎi՚dz鼥'Mt"eA+h 'nUFr_3\1a@f_\A[n OP?oY@xىו;'IP87y\n0\&̣s!6yvN57ɗϽ7mN P`\a;X!uNNW(Ѿw`Ei%c8%u@0oJciKy cǁ)t'1i ^YRYziz>?RͣV%0; BPOr@ےB|w#Dކ60=K:7ݞ8ۗ(?tȭ\8D.:Aj]+1/'ӻ€Ar"Dq+p +}ilR̴Xߞ@וApP8S.sP'$-sW?k53UVN> jLgr g+̪2>ںо5C,ur;&6c('`6I9 gP|`NikW;Y;mlʧ&5쫃eD$wd!k./6}[$RѵphUFUk0|fp7)E2gq9aPo#{,!ãgHj*Z$(EXwT dV"Mn8oe,\aJf#*$_:&V2o !!G!'bz!9A_j`V|^@[\ "a*ghhx}D EZ @!4  xwlG+pvۼ8 ^4vaunZ%WEߐK\߯rl(nSD,{ƌ慔>o9cW <| hcRg%= Vt3g-lPo-uHNua쏏ܲVٖ9:`h F+V)^`ʶrU`5z&TJy- I{K Sߤm 7pUgTNo`qК` A/e `#?qߗb۵Y~ez8P'}[{@`Xnʕh"9Gx<_9n2qĄa@p W08\ .p{r} ~S..OHӠYeTN}eڭʵ'&aLw`f|wfpFj*,ɥ+7'^bK%-I$c?mkkj]LlA!DBL7{!wģR`wr;MI!sOZG6 鐮ESP=Ծsڳ}jtOY|{kR3\?U][}Xh8qiPW1uq^zAp8cJ߾U+Mn}2/S {%w$ c~]PR oJr0"U*ׂf6+]M)DWV{^@Yq1-JϡIXy K y2jcѯ_ (L/l'o;VH?*Ր曯rM_IkmJmC߱+4%1 85Q.M^sC 3)c'}ᾁr: ;%W1=ZWFor+]aYV, Uc}̜'3$sANeRd nVh:+pb:Gz+Tw3 Sp~fX{OKyh`2YhxVa= ;OMa KxY9lZY-/N 4?GljVdмvP &D|f[g팭!HtY!,\I@$7v" 31aܱq@SϷS]a%83- $W1_*Ho\_k!rx7DUo?%&VVؖ{g6P -˜俱&gf_1d>wT{\r/;s.Jݝp8 oSMTo\6D?.-gb9YXan%9K*䍤%f-K{:]}2J@*uf+nȁ$FjL_A#{WleuP\_A*@32e01Pxw6\ѕ4$. m%c}BfHcX/Pm(&8^p=֮uP |'}{#jK6r1FM"er1hX }A<;0 msz՞+W!XL~?yVˆ—3 ȥӼ %,Oks+ m|n7VKؚ+ghR|ʣRV+Ǫw`m!|1@Voɠ쓤?(ǀz[XSzn oQjڍ-]OZ᯼U4(B[I/VS=4.8ۘ1խ\G`zԀ;7H48Dʚzk۸u/Л*-E 8U!pr[=?/l,@{Ggacv \heKP@\Nrc]y2׏> أo9OsY7nUIۂ+#$< d Qrz2-l'y 𫁱6,^+]7${amW敿vJ%%HV=UQdE00xqwfK+U`:~,9*k=a]6`zN,SopeU`xmb[cL@VM.m5NQG}* 4%W#?]mx9_R&`Гt"X=u)*bW,;+˄ A2%&љG7М}%r -s^~odѭ5D-X~Zב:z- ~=v~DUnQ!pC&~7"{#bt~ 8M+¾Ap4 e}10<@yrʽS>q[ ֈIZu4MIy,gW?iRtö]yv}C;ơ\@!oiTcOK싷.\P(bD~ H` zg ~>[4#iYڋs l AV[AN~ BoQ]Ծ .bK.` Vsռܒy LJq.$C>/xM|*"[ z v̩O.Sb7:ї8\ E7y[Ngnva)bErKs6Q& rXǸ}א%`xh#J9ℿ ߛD3N|Қ=ctr;ߺ|2ӌlڽC!0-Wd1!WM{ҔzfeEЖ%# o /*GN{,c|[`@I<b<~ 9@MdqMn"Uş6؏4*6^j@i{ vlNtoף>n^c\ڦ@Pn/ׄ気xgDW`]Ap[ > J;P& O +U,9; Ȇram0<]KUǙ '֛@^M~dw;``~TkOlӲ?U) \n3R0LD0I@Y:7=L3 d_ipRūw|쨀T5$S@b6v`;ڦk{hd9Vd@VyT~aninmwڕmw#eMNqHoLw'u-c @p50xv>sGLgȕ@x[(Ws'߹s !Ί[zɘ/N տlUbqO{4Emf+ Z*@L1m \߉?Ut*f+$6x?ȣi[3s#:G^I:Sp1G#ePN܂yCe|nC =[mZ E:!ϹF!9sdžذ "Wx-=6ocZ,5CmFItqej}7珗wcT !r$.OX`5ԦzCنM͓pwqtJ'@ㅡʆ<4 riIeamqο`_v$Hǝ0Q2cI;A ~^'_=[:5(xk*,y 5^?lŷCz>o97-~RaEފU,Jڡ훳`/$r}tiFR.@H˔Y+jq;\8_bD _-[nuA Aܟ2lHwz:o}4Ǐ*uxlh sXL ,f@5^&\SLʂ`Iȿ\$7?/27vc(7cvoWh:{kZ)nr)z\sm6 u  <h3ͭ!LpO#>06?ipUq'/W jaR.`R%ֹDy*q=h`x|@]w-SXx$d*z&e"[xqlۨSk @oBXUjR/[$pq^?*2u?{=+.9psA_ -_SZ _#L|01Yw +sb놾bZ!c2(*c 3i>3Xb@dc4]oQ129 <:֗1 WkT IDATPc6AKELvay Ea)vh0V>Jm l \~ 6MN~Q W7KX̶U4x0ӯշม[ʹ`_4lCu94yۅ|"a= C_e·-e u |hr ݦm|5|w( >B @IFa04;8{ֹ)c< -ù(nwnJylmx\W78^XlQr\{U>Fuj[+- xk-*m ;n1du-Q8nfmd`M蟴YD۾lo _J h"w H'6pYK$>1? 9RƓB,LR`W\/J]_[GHsWnI>` 'Ѳ c]8yֈB6f* \fN10>gsw08l ,W ꖝ)Pn\_P7.K#FOA=fbьTǙ+D2  ]J` %bAJJ݊a^0 ۃ''Y%9Sai|UIu=.ܴ=d6_,_xcO8}{Z@To k٧X+ۑ.pE:[ئFY>D1ѭTǻ ~k =mF{ޟX>.Z 8O,+YLPZdxaprSvFn'a:7/waO3w )ONj-\gLhviy~0l f".&fH>h,R}z6T8hO-ѰtfV V-/l != Wi=sa/XMkDV9dG+z]xpZܦV!RE^V2T%ZLD@6`Ⱥ =y-,"hm@4PyC5J%+eC6h7tdT0}4Dx$͆D+[9''brYSTo(7#< 8Or*e`QiA#:flB@`3.gSN_q|FϢ"!kZ,M峜Z7dwlCExE!]-ri6#p rs^EI/.e>\7 ڌ0:î9CcMf*+QTb6Hw`C:>اNwarj1R@?'鈗 @S|ZZ}4ɩ08dSe#n mdim(7%O8Sid0\Ԏ^U-@~ N|@1!AֻP򥸅揷~kd~phtQN}peASkq--QgȶAN'fX I]3`]8p_+T7݈t}tg%~]P|t`?`[1q,}6^Tr0\ 6l6?W.~G#*,I0?<ҿ~V=  TP$ cy:o)as?_ KTj45hUTA\`6!yb'#cdJrl"=B 0#&,AZ>b&I[HG[' eV/+#`3R٠?40L}$%;mfRb7Qi}fmb bUGc۟4/AхS^D<*'qz΀n*02QNc8aeWG U`p@\9vʚh(ֈmCtMz(MCrtcف?={Ԍ*D.apꮀ 5+~N4Xp@VyDF81SR;~)\ 3 J['Qg]#[1 Dc+i>+Ŕ_2VV"Fhe Ձm`-TZ/|o6|M[j=:Zd.5)L8vmo@ӰX15N*Gz<;乻qMwm8!#Ox6ۉf<Ѕ6+waOʏ bCl'C3xr-o-J2 ^ꇾع8^S'Y&wsQ1#Ch:1'&ZWVA=ˎMWn>#LLU! H-50Cs ^K"Ȧz-׏">E }tpE TEu_4#twaa!pD&@FCDȩ^yw*&5K9)/ #T-Ow m, ].W'ݷ%ʆm(>ٿ[ǻggkܽoo#n홄zMw+ɏ˷@;")YNX5]<ҺHQ\'߽9-12|X~W1сt%Vò2q9eVWXi?@ ʨ"!N{ _%Lh^v.鯹] 3$"ۆO /ASÞ.A-hd Xr$ΡR#[}ql(wVАw|t~>%օzPx:PNp޲bH֤Ҿ8ۺY QRX;`M=}|΀aص>j+[ \j5Itg2S1' [Aw!9 @(ٻfi;K{g0;kWfĴ11mb[+^#3=/A(#X[?m-$VFEzZi=iq[,=9vF@p֏ * wKY 8ɷto ~ '4?z*d9r _ ۧ`+M14Dט|p w9mUe*mD}٣W!h!.WL $%k ߠ^JucF_: ~ &78m+m-1p&2EY (/\_=dE7{"H`] 3xML4a2ވ7IƵtU]%]jq a8LWpT5@p ZGi|},DΌUbQ@Tm p/Ǹ0m2<ÕzyS5Ap ҥP`f2A?g_SWg y[x&(,VQ2`xd\.8pl_+"'`-gD{@}!WTL 22in3-mA w[*3]JM+"cS@WQM` $0oŬn ]oi OxPG(3霍@Z6^X6;MR~Z *'N6e9c5]岩q]2tB_zKg$[ğgM[qo8&%XewG`J>a5e߾aqd\-.|C ©>.;fw;; EҞPϤ>&^ 0Ӽ_yMb_d +kEK-v Vn4Ab gBCM/ gPNù08BpgO>wvA?eR#;jwnw ~}P"hNbl0px6e>V1㇄'qϤR ` ,G xp3b#%"& 7z:i%3E1FYrnm%4:M|&P68r(PSz,.#f3=-cW`+7)BGb`mոX[!KAK%Mus]g WˬvrA8vqCȅˑ2~6]4 (+0?3y?/EmTPpsɲ.6'!)o} ڒV۔ $U7wa\bwa/GDv̫MA0 AQϟ&TlيO-(֖n3P=7xO*1;&pBRah$:3Aߴۈ{p - 萎/ҡ^ό2ǵUN1O}U@۷@̤Jn x nh6VO +o( +vCjvgmzZfo9edr@ 攓XLшlCsd>E:Mp Nj-v}clX\l^dVm_6Y5+RiT$Cv@]Q `=Zm,_1ؠ+9s(+oE7D-_bl} վЏE?F0}C)Rw?^zf"8ֈn+h:V>;jK`KaS&L U~tPwi^;CR"Dv'Ȧ tו9Q@_"öfe.̂HϠ| mH IGp']bVǛ,**4bcM.!y, nA(eMĖz@_ZJM>)ӟ'P^)_GZήQQ]A0ԟT?@Kᯱ=4VMXu{wFv*c/N@U#kW a9QnCLl9ݘ@(}>\D1*& 9۵k|y´ugy2Xo[;MN.PltQY 'Oxx&.L?wO?km h$Q [mߨXP zw(]֓VZyM Ol+i.09ŊI 1xf dhfos ~!JP5)rshM 7@ }~~둼-tc^enRú#Ir oEoQ  e^tt^߳s@`X(Z˺ njN@k*UP]wh_ī01}[.A6/.`Ց<@lx셀p0Px]>[ 'Ou'bYL7.>+{@Wq& o?NpSm?!*GQ"(mr/2i![`$zQlV 0;B%Ccam% u~ lZ?i} &%x`+RߣSte7E !ͫc nE`U &u$`@ >˜0|P.ד."»~疢9\B$82 l̕_7/of"WXFܩlTx5P{900(!wDHx?z) O.x5Y$ N:p;2j+ד}󣰼6IjnZGKcbM-@L{^[2-Ū\P |dBթQ.:FLcH/u7Vh d 2 䃵r2v_~:T tcϿ _::_ edM A-wcnMہ:PFv 9 !"UwgIvg\`A?X;8W9S+mk6%P@!Š xSj 2OL<`X7C UY!)Y IDATfչHh =%Łpp[p R57ޢ}vy|.[@709#a„{b@,dIvĨa qYeل:^՘]1@ǏA~V_~Cxx@QaszSt``c-иay%PB].q+)Cc/8 ι C!*m,-]vGo ܘ͸EY "o Μ02J2ׅJ ~1ʙ$=(C[ ;'Ņv5QÏM ]~$n!;OFǷ"-Phj[AV!uS-įØp?Җh@JªS0m =2?jֿ1N\Y^~WgA'% /_tb6ེԎ-ci(0Udu,K˔1PLlIesM 81-"ǀP( C3qfE+<. Mo~yHaCue϶/!4µ:bclNXMxdLxq`͗,j~ UX"$Upg4qIA rX` cϾǏ69 %ǣ' ;pd~c+2{ MC9ꈹIn寍fcuH1dېsg(Ahs|%|?niΛx˻?Ӛr䩏9ؒ}OGp~3\m/_7,*?w .c׮pM.LN{3µ)v6TO=W G]ǣݿ_N\` \oUm͋Wr_8 \=KvciNCFtP 'Vʭ5YB -ėN)EU)"eU\(qi+#U^qYɇºH-IoI3 |N %+XR |+]Ձ}vչ u1+1gN&hPoAkK߹l8^SSOejRRVS۸Azd vʬ):t6Tn+atNE@uZ8нx=>.&KVɷGetc}4NpI|!>=/~e)qѠݽX[e7"ZNR8ɷ̖ѹp+Z _2P55`/fmn{iUC`~#L z8( r:dMAd S逈ˀde";᯴ 6YAPWRZ%ٰO߹Utn*su+Xv/g+ p{zY[{[{vcFWUr V O9ungN8 4<\6UbAW}4KenvJ'SჀo=n;,tod4*=3W \>[j_sZ^;`hqk |0*eHA+=* 3/\Fn_z4|u U/:4˃_ " ck8FsւRVlwAeBgV];8Q1!zfNJnV_ϲ,I3@pf0xf(Bҕ×q^ _ni O Y4Pxee,քUNR*ϗv򷪉&+/h'v7$28M0 rT3ң[3愾"euQ}4_ yrhle~zt_ MC3 b+Dǧm9y+r9b ouqq@dMJwݍ/bE29ժM=G}U׿ x.tc CU ? 8DX Nofr51!1xtP+::2Z\75$wד t4뙲ݖBjSz]Ѻ@Ok+Y1~L*km)ˠxMMO(ވ8GG/I;\_*.Hdž T& @ק1m=ޫ\'L~t0?pOD2h0O xC+i#ց8@̯(a1XF@vh wLkH`m;'TLYzV"}.$L] ΏWrA_*`L,:1ˑr$x^Q.jׇ\ Q\`jf<#w _O.Fx6R,n wJ-U: ";Ugx%5?OK ͞9_֕BnVUf4ex`QWj9v\:jvz@Km/>X%9ˠ-r+o60 /IpV*jS]r_Z >U&LQo#j~bPO7l/ u\ ʝ |>37l\!2 >9 NLπLz0*W J@X:׺('*' /!z7~cLo)]KNI|D'j>R}3װ"mM6 !5+#WbCWRӌ@iMGY>nثѡ/Vƫ[V!bVO&m=8W jaF:$ ezG4X?"SV3/Oipi)@G?\T@QƲu]mU=H8צ:O*((v_:` jf\*8 TUq;fW}/2E$n D6^B6h`ٲ¥Dȝ4Ͽ9_>&6O·w RH 5OĘqCZ6[yd%5&:5.J%*\0p6zH }Q;`: $qp!<+boN[8u@4FR 7HuC$1 9{8uqd_#J]K8^1GI`OΚ@^/ x#:$(@2 xn!ܪϳJ 8zUV08s]_`@pK7Prl0I6n$)sUp!#gzm~e B(?()KM֗[Ag퀺vc wSx@R$}A<$l] }3ѾN{ă1aJXF6eȉ@b _ i'AG^#Ax2&`+iFv$acXh͘4n[o7κ]"BL:\غ`o Nzq$eTfΤlѪkfo{ӻD+"Og´w | *up!0`g{ONHynl(ܭ;&`[޲p7QOɹEߩe'-9-lQ,Z~W2V5C JnԫN an^nB_H}YB6VE}Xc?\W@{W/*Ww V.3)_%9aG 2\_ RDs8X `OG4&KVK]B;Edk_{v-R;]) u Nf?$VG.j A!9%cl6Dsۻ l`,OY*š;‰+Aa^;NaԵwx< ĴO%ym0% HjYPZ*D!no їt󽼰Ako;^{(A4T #.|{a=p.^ (6)\?`[ e2 U7 l5*s>|DoU,q>3=y c~WxWs<c^^ⱃc~58'4;5_9n?Pz|2yn\K J @Х!/wj]K},~SJ):4΀xR'{)cPtgˆ&3W=UohfULc`#GPN`w{ehSmoZ$OR`( jY*4R?ag 4Xh9$@v,?؇@v}VB` NBP[#˃fQ.36d' 6;Eq*'Wcac* S%)^;!'a!sf+{B x{F|OW9:# Њ]n08F08J3?Q*rs?k5<9)]RO< _0-Ȟ(8(.]OH$*1Y bzVgCe: _u#>1 o TPvV/PnnSde]I=# o!?&?k_:$i_b:Q0௾8brbxxljR=O.NQR-~vOA'3\AFw:5/ SNb{d41S208(ϬӤb#ޝ l'a kȆKf\+-l@\-M^6Mڍd<|0we%Nm~PR5cr" j"Mޫ?tU!Mv8! ј~@02(oi ns)}o}1']sϨRzLz0٢H7=EBau PhFA9:L FBk/Vt[8P UA4"/ŲA|W,eLng,AMJ8 rS5Jcw=!sx3<0Q؝W5yV"K^ݒw U!,#R V`s{Ct!b Ӆ<䯿/f1i.F90Vdm6+bW)}\" /' `NjV`_;_|6Ҟ]pEmYEo͏Uu :<*GfIWEӁ9 &?`6`1ǀKJES@UZ/Rڀc^ꒁ7o~\ o]ڹ/ k l UEOn:*xo[ %O%~7s@pO 7߃Ӈ\S>/!08xS, FԊ}eR;s;գiwz$( }l0\x8c Ǟ+#-yp']TźP7Ӣ p«$W`NԤ/آ pHcXN`6-nmTEx2}ژeڪQ8&oS(9Kl뚽}Tyx~5RVm{#oAp@ $/96|N1 ^f* ?'̨7iCA'掜{Vaw-CT ;wK {0l-%_g8x4 ;9e&ه4?"0ޒi(C_"4eyz s{<Bb},!$;_ (<ٙ)b]KuNO]L3*,Ɔ_-oQ`cz =3蝎shJǹZ9_Ghl0:.f;=8wjK:A 2v) G;DJzUa6 A6ĐrAp0x6nyUʝm_WWA?ffnvkwr׾8Lۧ 'zHn0eN-5ۀպvH*t؍` |>6LKŲ2[ifCҬk˪C\ dpDho Q Z$`f)U{Eۚ~`΄R6%l !Iz_ZE =*@v @ے89 ._*Cqoq|alu)znS*NE Uޗ ԅ/ 7fD ,VGheSKq,4=Tyv=U8)r3~ (~3O4"9IR߫L; Ƕ9 $EQb {2= /U[* +|8n Ov{M/qT/m~f'H&h>KUjriEd"j!,4QKwⵁߤ=2Uѓ}/]}-m쀢;sQsKrFm)HCm~֗\\? |ZM`#`DPuAh͑aHWOZ[N/ϋ1=R B3.`qت룣SiP8\'$)UaʢN*Xӯ3/߀1 xm-Xb ZT:vPq6ߘZpȚJĹF ƎulWaRF* wEޗr'ldR?>. iJgsZ1J+I[h'PAtN}cOrQ s䕾O](t) IDATfx@Ĺ%t[!$5d xbGBGzOB_$9kRsx'UPWOg7+$>S-wMwfղpE-[ΒD=w l hcAu HQے/\dC^X? MWn0',X`LoEɀX^hG%*Y~W. _tPN2CRM78=/>4/߲Z[d?T/xp*cc9g&qbj4ݧoǀ^WnAڿr'Y W!Y(:G5YR%'蕪>Tx$_ q~6jTַ)( p 5ɗǕw#9n-%錾$DGqFO.$Cm`ys꩎잼!ouw Ag?[@]nuUj̡Nt>П%N5o}Ѿ լ0+)Hdn: bͻA^uZKH\kabK +Kj9}C6eҵA9֥-_|Uɪ*ģ#iQS5ٶ`#c8\|џ $H,mw[jM 7  0&m8<^rHp~\߿ܔJI7 z1``T<ۦt3b-ֵJ'6C%a}O68Fi_݆ñ}1\ۅ ,~\ 6|?C)`F hկfPn!{~):!cJR&_RVtw+q$ ]\Am'k.{6,`p8=j ?]6uhtF9m֨pjxhv4'k˨ :hl.5'-7jS"0! &I;I{Ao,K_FE~{җ?hzոE]52D"q|̺jԒVSA3pesϕ#/Ѡ*(;!v{u0 7qb԰1̦m!&$DZcXLk7j&p,g!|t*'e~ s ޙ)w<CwPoɀ^7U=I_t0iH1]Rf+ /-"g*6z4ݢئlFd#.-z~:Ar~/MlhaCN + Bt(lrcC~g חEahvo8!cCXƃ䵿?^l~ <^&3=S5SuéB) ܠ _O5[lt>#zUv`ۧzPT>̼q` 4@+8v@WHp|@,xzeB?R0.GZېa};ik C/(|9<$ob{^څ8S)u 8bE=A\u^{O`15JaKX Ap[F6S+C+o5, J>'}#E3Y]4iSm~ /9vLj A[ Nv(ӧwzjl)ҤQnԤy6n Yb<VQH+ Gm 88RA6fd7.5./%uI Ix_EulEd1T 's_*PgAV,SKUPS6 I2yOAQk%{W]Q}[Rvew (8E9 NT.D+wu\N|>².j7(CNZ6S_Ty>~C~x0Fn;W][%G_ *35| 3jC&˪V?q>s>l#q٦;w`Ӧ6d_v3m0#IF£j_*Yp o[31%i00,MLVrb`߱|__o#_{*;u/,Ehi& h i?g`m$`E>:QvpRZ?-g4Y*7S{VB9$7N=1w i$@h8I+S}}'㇋OM_?bǯ0n?oci0'La~{yM,M 01ST5_cˢ-w*)]gy^ZM6 u36[l5rD?vM$I߷,V`H,Nퟐ\FT_1aVLi̹}WhCɝ8_IUA_BZk1.HCG ])'{Ď uq0HǒF~'n7D[&';ҽ>tLʴ:~ ]܎LbU=N[ CONɀ=0x 3 vu2 @v:yD餧7os'2ѠVscC9)vk;`xNsՙ ~{u)'E'  )nMc ԏ}dI9d]V7Hv&/Y T-D=|$\yӊ/fR&s0jT ˭TnSM SBaKe uݒ[Q[7k=W6n(eZ@xv,K1, bӉ\Aq`_T~ZTBW>c]]<ŭDnz;9e,25DϨnp|YՖFfM8CK2vuH7:?;/NlroJ~:QBc4;v!Uǟf[?gɢpy g0TVW-~Xe/`TCSJ DY7AP籎~)?o(/fmSkF(ߙh5:8FAgoۇ C D9 %%[ :ZҘ 0%|G6TLeQ96)+B¼Կ50^#GTFB0Wv}̈́'4~A'w?dݠm@)jCl/pFhC5햎bnXl*$~Wبg\qlOʆ` `QhGwL xn%aU ] HiǓ.eƲpTǫAʶt+$Q mi\e7R '?~#܇_V f&w&k%.0-7e<1 U:1E9B~S@L1*:ɜS{IvGfgR$<;dA8\qE^XyɣZ|+UU~/ I7~3k=ͨ$ r>aQWrPPT]UƗQf8`ul^?/P!m }2[9z?m'oNBoBp ȺLgt`DB6)TvB`W邟9 J׼>8 {-u$MhZkѱ$>N( q. js>R`<_n#gL/aS:a~kõlP Ss۸ݮLT3 J+7>a l䩬Hq/- "ݢL-\n.-sd`Ի\T/% žK{vVUOE ЖQe~{ =[ƪؒJÿ'jd0#N1Z0p.#pYdKbPa4#& ȉPi{mZizn+ !P"daM(xG:T6*&>#~ ;n ~G;f|_x.ov/g[˧eJNR]2q}Wmq\3zRVυ?0TKO%e*Arvf,yry*+. lQzjkepx-˭#Ut¥*/ N }.T/% BҞw|d4/}jIҭyח^b}{c{yT_2D5eHL1Fgc\%@PzsC$i fZ%k$o( N ΊRT3m'*B"g >L VꧦHUoL]^/!gxQҳUt2dj{*G8!В / [6PjiNI l p #yEQpчWd VO`3{NEN'_+EɮX=P@IQ"0@ͤ=u"cOuJ8K7qű J3=.LmmY 10XˇZVLg,#CO\N oN;+/9pwle<כe@@ux'KnD /"d3]GLO-:ÂTzlfaIhp A??mlRʰ:& xt%O0C $m"@)3 IDATK} ǭ֦/jfXkI㶥U%(Eml+ڨsĭDwˑjiإZMRpa`4(*эʼm*-=0feF0I2>9|SQ\]7RN[ P=FIͻ%UTC6 ݆zOmC^I`qCd M NtSG"қnc4\_K6is;8;XM>!Qu`MgkiuK+dFI@d+m ߝFR8CPUb0"mzW!Jt({xWl C$|w(Gpy`ӣcFM:mK]eA! сV|>*`Q` C`20ORD^) &Z~W39s%m8sא +P{{9jP-ڦ01Iᝣ )-DD1q\ˀCI ` ה$!Լla&и,/ 8`B._YPr Q+mE}?Oq6@F@ǗYȬS^[ ! ڀlI:Ϩ`&oBk)=Q_Z6o:Vۼd}Api婿DwZy!qpWNf|{6S_74_{?T lW75~gW{2G{6kfmC-]E7XÓ-zQar(u';Y2GB a_cKq]ӫaYRFGy">`S (PNj}*P (O,ә%qB9c)b,#EqN$PcUADBO<'߷)MJ5~2&mt mjB2M` =EݭhrE.}tU"  Eo jE \}auK3x0g ~tsS*/lP}G&!s@WsfrC-# K[>^/A8/+ ?F`Wo8I= }Cۿx(#EB$ r wKh4~D+U6 Б^L闠{50EE3 8\y̠7KbJ_{`1A@M&1\O^] • h'Qow،@Nab=} -V^nCiQv_6)uI̭ BQZU [unAp#[ 4t'CgxRf>~4 vm[%x_H:?&a}dvR]!RmC-Ik D0suY4}?C)ǥ?='u7+~#lA!WBѾ>3 oazS dv#eXnT>u͞]FTz9 1DoPJ~#6TmXߎ?TK?O9b7;f-7͘r|IUK;l[lw.[c9Ujі.GNqBn㰔u{ dySO__4z3)'.ÂnToĦdu'Bv9JY=)A ]1 {205*>jHB ]? %@ғ0p/~$$ *`B hA\&s (XFG6Fޘ#a?rµA ft#X"?eK{ m]u<ǹ&5aVrmDֽ` R_^f.l ]r( ʨ%]qK z4'e黙O.8/hO=b #ܻ67 n&6"^?W2 n0#nžL;³uNW2+0((`xK,_}幷XVWю쵞{r/~x&S`B<M4u`qp$ UrXuzU$hPIRb>V)&{:+7!jPP!S$>Nqa$=_.WF6+:^q$)i@e+R25p?m#vamϓBJy^e 8_;_zV]3;Ҟ:R7u#,uC5 l&@Mց& Ѝ[FE'Ѽ4\ .4lkЗ_M.DWr@"flT9Z{^&B;ea7*^M,}SGto<30W!ĊP[UZ0BBZW*CGx<#7Өno`u1 _( L^ !ѫ& y𷁌 0C9L%SM6A\.9۸A=oA NQR]D&Ffb k>Ln o @xF]t@m088ϏNMҁ;֐lJ6m0hIer*cp׮W,h7 p\]'7!l:[adO)Woc<_i'B_RڽVh_߆K7~f \Zk,VMmu$F} ݸ]_`qm`v0-=H4uz?4mmYn9lS؞ \ݨs(]4IV*`s Cc? ຦0@Z9lqɆ"3IIݷ5\Nď (EPX0Pj0s1e9kiqM%scm"zB.}5l ١~ᎃԬ7h\)»fMV lIi㔠 鵖KjKvyaJhEX P-zº^ 1Nc|!Wd_|roK|m>"扜B̛ƼAY_?sK#UizR* .CoCQڟ;@p{໺yvGfb3pA( 3K\Evv *æa~*kDtHزtKvfGljdMGp/ژ;;^Z2Z1K T,nV?8~4r!X)c>D'WR@PL6՚&^? XqT$h @! V< lm]T7lSQmQh@0ݸH"^yV[m^p}Ap c-aFڴI@<@Oz^S|vRHhDY 3 Io@(Qn Ɍ@؅~+}L@#C6j \Gҗ'ϔ!0V[&eR'l; OAkL.N :rC$LЀ%_\][AL~ 0o `Rl2FD! >ʶvY$fiB9.R) Ѿi [  g)W=Pc=\c}ЀA1=` m VN5qOՠckS'l&aU3CB`ov[zn :HԀ.4j T_m`P#t_G2a@nw,G6!wIe:G6_ ğj5[U9Y{vKdާ_RFL`p "'{X; PAUˠ0{;ӌ3]TGr]l5uB[9h` qx [ Ut!9~`B:9C]mqUˤc_6R C _cE=x1-8ǚOB$㴡ւnЛ׃];^p P.v6&]ۨ<2RBC3{pD=W<1~L ~JC,ghj># o0Pfo,ucSC>r@@&¼}g|Ռlhj?~y>]LBwYI}U_~.=y%ݸ?!C[A, ;:k/b52^.7??NZc_{MJ; 4W./Sro@M'vn&NGH:G eXlX"zCˎGpW6ξ9n08C#PntI݀LH 1, 2|(V+Sj}n*:P`[7,&@V ` pѷh sKhۍngEF <%:˃1Ϭ0GZ#t0j@f_)t00MXa,DBI!x o'"A߈292nR&W9$!A{FB`V y gWj,f9 E)UIR%ox|I9"E}MLxz 6eCᛥijb#J礖!>|,S_pf&|46/^}P=jr3;cjϗىp6")l%M)I=&S8?*6Al; ؑ_R8+ )T&`e- p6p|FE7# a6' K u5Ա}lf*uyx`}ef c7~4aX޵g6&d dr۬YK%`%}ZЛi ~/\o)!@ZAK\.MpSC\H@_EpUI V]iAdG2UPBP(:DKMBзI@n=(@\!>a\ԣ[ZrV)&_ /~7L%"%0轧 ur:oD7 *7sbVxP$ kJ|I#7a%&w#e2 ?EW& Rh [n\Y үbݫs.uoY|P@K2x%??dU82VP`{; N扱Kwٍʳ2+>RcB;xbHʃ-$tjQQ:փqqœU= Yp:p<k}H(?ċ7 |"KyW.Jت12vܭ@pȰ]lKE`a`*%l`hhV+{OZYcvQT_ W#"I pPx9YQz9*c>-u!o,󀍭ʝv>KP^|)8Iub;_W@#Z裏j TS/~6H혦}^WMTֺN&Ŋd ϸ`+u'{1G51 lsU@pvlk&{Z/{v{Q 9藥{řRóaMud0< ̖ uJΤoNVT5|B%ZIY9 t"!l{(xEn{'ahEH7*aG?_:ZJN~~`BmP􃡏~Ʌ IDAT< m,~sV+MW/73Pwb(X@ ):₾|+cub6}]iթ-M^RktEKTՔg.ū0#F3+3(`^E:Zs7zڪ`#;%^D +>{!W  d9eCl(<\W6N62әݤ:EZLRTS(uJ䷿)*xJ$p W7,XF"S@Oa 1/:1N pR1;I.6*ݫ(صB`;lpȼ;]0vm?zN~.8(˟x\B'}S:0]SuCl?EAp Y}W\/d9lXK\d] Uf{]'+1$c !nVmUSoׇ9˞+[]߇_+DŽqgM(]|\tkq.s\v!Ua_7>RTܳ2QfN!_Ä|P8klJ JIZx$)'CvʾBNI\]a6GƄtU|%~%kc}Ԥ?^j@nbu>yEwe-k:@Ί$V6mU_t̃)qIqVHzwmqzdԬ3PiEg:jj5t`AoqUOpXE[; qqBS@ƽ2f ģ`[f^:UaRr}pfZ/,cϞms zՋF lq>М[:ӯ ׉678} *_'e]*\.NZ T [6XV>m;-_kfvBT08YOǽ #J#3CLtmJ@؍?szLɼSE o,sa({(*s,:WLLz~Vmοiͤ!|8/,:+;>p|q&!UZxhۿYG8o &ҡ(t(ib RL'}R(_2Em>HO1D.mt>;$Gc\Х+NYWy  2 {SO V+h]\QN`<Kl[oW{?Oaӣ5S]M%Y@ oI-I37MJ0={\. Ə u|  }2.,*tl1cMdLP~c^oM(4aDJ*phO;l_tPU%ކx YOPD8vv)qBf*26@_,SW͔G` JW G-!!6ߩo l* YM0m\=:a+[~#:ƫ5ʩBn VPxnat2z{_v>&MSsa({8|7m~/;+LU~(#K'P&!Gn p ]d)a"n)e)qxD#Z`['/z+VUebԪZ QII;A=R mT7偬n hr*q*afPR5W}[@23<(5 :kR3 v[-2%pyq}?=u*čϭGNYJ9R"+S_< ?Ym X]A0QӃB8#m641ް/_eBC)b&׉7aXhPҽ:㝓CJ6|8}Ƀc1Ur4R]H:o"5r (D(нv.f)O<; 5ʫ}i?@>ЍFp\2rjENp3ʬ^ax6%B:*_~BrD^k^l_] e9qv$~X}ce|ĝQWJPDu ݷ=ׁt6lVA0.E] ꢛ` 8ݡ6 ,f@ |U pX,:V6ΐ*'Y?( wmW'_d0ErŸh[G{ɯ2H 8䕞tQ%4+CkL ߂e @]7bN:}[O(ZU}VqT*L WapTe]@2j`%TN嬜@{^bra.!1 ᵯeR49,-$!nW Cw[XWQA=X$H]8Hڔ ON-r+ &pgcS@|  ^6r#g$mP3 k%۷N|pob /QXK`\B%I2 '׏JwIe.Q1Y}q ? @Ph}#v}b&,aY_}B S\2Ej/6_=ut<f&mҪH!O57/3l[.,Uv`2y*sվO Fd Ap U+= W}/w  ta8Q^?^FfԼq{y.Xy0 4Yn!S灐O7 } w/v*UMd+9+US>?< "js2 /՗@^|2j1tE>FT~Zl!D^p"v+\}zX`'y\[p#hηW@c^2Wm+/)!NZx ϧX'%|2@ xUcv%?dg880sj`n)Ϊ>N߸'։q9HH7("ƺagl'W$#?oFZsF?.U$l- ?;/Kg2v[ BYuјv 1¨ռN6jfj )0Dm'W@,Y exr i v?g8 vQvabl/O K 2`d=R#?E /u~>'vSU )I|)=E9M A wN[9'~*xE7 +=8@<#p;+ƺ ~[QX+0Fqm͙ ejrsC }֥5fD`%a9n~.D4Qo' 3/pP8a9ǃ4Ӄ&zu_>q]R_6^O7PwIˁH#yM'f &k@rMQW/]6za 1eR~-;MMߋ׫~ +"\{llEm\Q~? mVb#22`UP5LK7bszZMI@ۧD)y|GyJ9.o蚠o^??BX"IAS-cQg\_"G4AD>3~ɐ6]RxB6F .Z`M_0,;bc^VߵV_fK,WJq+Аiƛ~ q0Y0rkW'.N=3?l(<"cdJ Z9o ?_~ >IOj~+$Ƀ4  >zõzV,L1H;,u>; c/N9ƙ@VGH;wa&@l/r;lJy/< 1WP&NzU%f>Q6 Xd%v>kH ~UpVʶ&2CtMno5v7zf7t>8|;]9bh )O3Ay/Ssy4V= }]M[) ?1 3ۉ ~WUd|WL2 D6Ǭʎpq;-+=ԇ3{LX2 PGj%\",u0%xwm/]Vc_0EJoK,D]gPn#8I><<X](@"FVr8i֟"We)4_-R&gRFMbrz@j/? {V+m9Pm?/L[z9*,;̥Ru9ͻ*ڕYnU%\98xz] ]1ڮI˃A`jLh5_U};V:b eYܜ^]^ƽȖ1\f~%KqhN0`- V߯@Nl@46#j>@h xMV$ lPFu>y9(9^4P<Œmd3J2}MWft,sT0(qP[@~"\s h)սɜ*8Q/T s-V(]Q۬^8}_72lWGA{,@OUi 1ð*+)O距Ӌ"3銛|M-};pRуCd9`'QuǓ@*jD^E}M>#"3rxHeiu,e8 ̉O mG&"u[@g\&M_ @#XRF_$<%H*MuP&Tꁇܫm)v@3UjaI*hIczvu\EYApm_|z۝=\+7fKc,+U`{fk7n$'OO L"jן % ɁcYo?j`ML~ ^qz\ԒM&4W.C}N"+NIdžr}^l?RA+ЎS>x',$fQ% p'CZ )ȹBn \eŁ%֧ PْڅLJQ`\叶~v"B\3?LX@,7GkOLU]L dY([CM"$~g(xP4d_W5 ӗ}fkmj@؍צo6l(e"Qwd2Hz3`/yyI4@PԞqO#yu.PBrW=T0$ъMnw $gP:qdT?3WCSv˾jYͰ~x. T|Է8CBS Ս}屬R+*K\V(Z!lP:_(8̴b wTr3'@fr!\LQ6 .1P⒥OFdڡ"G(Ă&֊Bţ:pbm$qYhh&QRePǙl>uN~}FȲSBfoq&6M@zg6M̏*՛.*YKIז;a7++az6t.sP;C8XZ8 i|~+n\(m P$t>aɅF9HVHU5!7`  Xh| خzangi*MdZ3f&Y% =Bx0pr(@+m &O黝JVn0l y e kqDߧ½RREn9X _)"k,?΂HB[lЮ i0ۻ:MzU`JWJz%ŷl܉-X5J bٗp|"zUܾ p M!p89OiL U`m<v .fFAr[+-&A*fUg{ٝG]~؃KɆ[&Ngvc٠R=R~C 1j\TlV4M];uc\ ,U Io _WW\.ܡbۂ d8/3%/'$1{и(v" =10*Ή=P< n(T 8\jse޻eCG ~U@i%2ؗɫB1 @P[ ۘU$=O!w|cPeЂ~U qKCí~ԏ ?fMɇ!OkMbF!k{%<,ɽu^KHaK")5SeVf$&,jTjWLz SvQ,R6v>fW Q_*4 p0`b~v>eK0oUg9 &q-;To^7Yf|u7d`RhJ˻&+EIPC|?>r(.?_.;-S͕[7j6qU1CROޘ\d#w\WնL,J¸DE^B>4>}SWD[:]֕w]۬-VN.R1LS;ÓP _ٕ fuOgk+&;'04+gҷ;Ml!YbpzVia%JtQv4 9W]qW)O73,y=4+䔔džǤ~B1&wq!Ma(^I1밹4Qk_nfa%}i:G^W$s' peIRm`Zmm@WIoS> u@oMYSLUg_K_J}7y]+ A@pV%""#`hC0DZ!Eǃk^Q[&Q1>Q])j8YVohIKoR( Θ]喱d.m7P ;ę\3sE `i$@bԬ2..|8}}vT[|TzxC4<0o:=Vv1r_\@~8%*'A}_VlT`ënJ=sי%+*We/ӼStB"4v?y]0؍EfPц$ܪ{uyBFq@2KFǶ_T82WL$7q$~egMm?.[ ?!a.Dp=gїs)itPHrVTpjaFW 3MbTI)&4ؽA] \D>>Ǒ w* g!7epTLMfgՕALSrD m~~CTl^.8 }Υ"ZY t(ø6a Y`A@ 9A!,3#h(K>P#+ßFe_J!8]?ꀴ*Fc |Սcw/A.]Cĭ ųz~]ng*pj`qg]4<.QCw7Dw`k:H qaBTq4bcЌ6d4[m <39" uP߾}/Xc|>_;Tf2'5I=Jer]X.5ETYp BAk/p 1SkJܺX\u3K0%r5H| C7BŢL直Apѹ s*fU(o? fл~CYCC^?ӏӈUM}wp1f '݀lQ>9,Ag<=Bج<'\1 nÝ8!IS)zZX'%&8Mt:@NR+jy/Vm aQ9 70: t:. 2 -霊I&+*n)gK롸 X:Ů{N9vkCZC~+#3v/*ư`pf`y0 WWV%8l oM#O黁۹ύy!f-@BHb?5~:5!%֏ܣ0m `98js[}5~=ܷIN?2y̘UV8j\&xOr]߁$A^'\LS$sm@9$ Apu^j:.ٚ$?+ޝ `]mϊ}U2iY@p qV\EakMDLSW^W +{aͲyDBA)j=GPo\-.wtPqP]#(ymܘidDuwCE5ֳ]|nDj7nBG[;ʥ ~_f8u2/gՔ&b'Kt[FaBSdSrhf{@N[㈾!A0j>T~;p0~ pM'y4q~iFqpߦe@z&[Po<9JVk L5siBZ833d@ }PvQҁU@po`T+p% ug\3lPڪ*K? ]\Ff  'Iں"ɫ%4ȍ?=x?BL ~YVn,K#HtBF`ts| GBOwj]u2,>ff_ |U -Eh YLHJ*6ڠi@G7 .㞶n}T9d~6 D}t @rj`sjBApj :_KpsCy7G> fjlPM;.79_>xirY62<&iRx VHZťh׽CzA~*T)=H~hA+4A@X.wDRv`ibpLD']|RI=qaʟ޿zghalO'M҄Z)}\Q%+lH+U!@N.WhD=h~u 0̴|LqVN ('I*G|$~je 0x_T[`.܃nPObJavR˦Ws@oMshք,:2&fIENDB`ukui-session-manager/data/music.qrc0000644000175000017500000000017413622453036016312 0ustar fengfeng startup.wav shutdown.wav