diff --git a/Keanggotaan.py b/Keanggotaan.py deleted file mode 100644 index e2269345d8a9ab412f842a736ac5e634dd157da5..0000000000000000000000000000000000000000 --- a/Keanggotaan.py +++ /dev/null @@ -1,98 +0,0 @@ -#Programmer : Yasyfiana Fariha Putrisusari/ 13518143 -#Fitur: Keanggotaan -#Nama file : Keanggotaan.py -#Tanggal : 9 April 2020 - -''' -Modul menginmplementasikan pengurusan keanggotaan -dengan menggunakan tabel Daftar Anggota. -Modul menangani penambahan status keanggotaan, -Pencarian anggota, dan perpanjangan keanggotaan -''' -from sqlalchemy import * -import sqlalchemy as db -from datetime import datetime -from engine_needed import metadata, engine, connection - -# #--------KONFIGURASI DATA BASE----------- -# #Inisialiasi Database -# print("Enter user: ", end="") -# user = str(input()) -# print("Enter password: ", end="") -# password = str(input()) - -# host = "localhost" -# port = "3306" -# db_name = "sansK" - -# name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name -# engine = db.create_engine(name_engine) -# connection = engine.connect() -# metadata = db.MetaData() - -#Penggunaan Tabel -global DaftarAnggota -DaftarAnggota = db.Table ("keanggotaan", metadata, autoload=True, autoload_with=engine) - -#----------GETTER---------- -def getNewIDAnggota(): - query = db.select([func.count(DaftarAnggota.columns.IDAnggota)]) - result_exc = connection.execute(query) - result_set = result_exc.fetchall() - return (result_set[0][0] +1) - -#GETTER BERDASARKAN ID -def getNama(id): - query = db.select([DaftarAnggota.columns.Nama]).where(DaftarAnggota.columns.IDAnggota == id) - result_exc = connection.execute(query) - result_set = result_exc.fetchall() - return (result_set[0][0]) - -def getNomorIdentitas(id): - query = db.select([DaftarAnggota.columns.NomorIdentitas]).where(DaftarAnggota.columns.IDAnggota == id) - result_exc = connection.execute(query) - result_set = result_exc.fetchall() - return (result_set[0][0]) - -def getTanggalAktif(id): - query = db.select([DaftarAnggota.columns.TanggalAktif]).where(DaftarAnggota.columns.IDAnggota == id) - result_exc = connection.execute(query) - result_set = result_exc.fetchall() - return (result_set[0][0]) - -#GETTER BERDASARKAN NAMA DAN IDENTITAS -def getIDAnggota(nama, noIdentitas): - query = db.select([DaftarAnggota.columns.IDAnggota]).where(db.and_(DaftarAnggota.columns.Nama == nama, DaftarAnggota.columns.NomorIdentitas == noIdentitas)) - result_exc = connection.execute(query) - result_set = result_exc.fetchall() - return (result_set[0][0]) - - -#CEK STATUS -def cekID(id): - result = False - query = db.select([DaftarAnggota.columns.IDAnggota]).where(DaftarAnggota.columns.IDAnggota == id) - query_result = connection.execute(query) - resultset = query_result.fetchall() - if len(resultset) > 0: - result = True - return result - -def cekNoIden(noIden): - result = False - query = db.select([DaftarAnggota.columns.NomorIdentitas]).where(DaftarAnggota.columns.NomorIdentitas == noIden) - query_result = connection.execute(query) - resultset = query_result.fetchall() - if len(resultset) > 0: - result = True - return result - -#--TAMBAH ANGGOTA-- -def TambahAnggota(nama, noIdentitas, id): - tanggalAktif = (datetime.today().strftime('%Y-%m-%d')) - query = db.insert(DaftarAnggota).values(IDAnggota = id, Nama = nama, NomorIdentitas = noIdentitas, TanggalAktif = tanggalAktif) - result_exc = connection.execute(query) - -#test -# print(getNewIDAnggota()) - \ No newline at end of file diff --git a/Keanggotaan_UI.py b/Keanggotaan_UI.py deleted file mode 100644 index 2f72778fe078fc4d73951a7c6b6b48bac018a31b..0000000000000000000000000000000000000000 --- a/Keanggotaan_UI.py +++ /dev/null @@ -1,715 +0,0 @@ -#Programmer : Yasyfiana Fariha Putrisusari/ 13518143 -#Fitur: Keanggotaan -#Nama file : KeanggotaanUI.py -#Tanggal : 11 April 2020 - -# -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'Keanggotaan.ui' -# Created by: PyQt5 UI code generator 5.13.0 -# WARNING! All changes made in this file will be lost! - -"""IMPORT LIBRARY""" -from sqlalchemy import * -import sqlalchemy as db -from datetime import datetime -from PyQt5.QtCore import QRegExp -from PyQt5.QtGui import QRegExpValidator -from PyQt5 import QtCore, QtGui, QtWidgets - - -import Keanggotaan as DaftarAnggota - - -class Keanggotaan(object): - # def Show_Keluar(self): - # self.MainWindow.show() - # self.window.hide() - - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1237, 860) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.vlayout_Menu = QtWidgets.QVBoxLayout() - self.vlayout_Menu.setObjectName("vlayout_Menu") - self.label_4 = QtWidgets.QLabel(self.centralwidget) - self.label_4.setEnabled(True) - self.label_4.setMaximumSize(QtCore.QSize(500, 460)) - self.label_4.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_4.setStyleSheet("") - self.label_4.setText("") - # self.label_4.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_4.setScaledContents(True) - self.label_4.setObjectName("label_4") - self.vlayout_Menu.addWidget(self.label_4) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - self.vlayout_Menu.addItem(spacerItem) - self.label_13 = QtWidgets.QLabel(self.centralwidget) - self.label_13.setEnabled(True) - self.label_13.setMaximumSize(QtCore.QSize(500, 460)) - self.label_13.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_13.setStyleSheet("") - self.label_13.setText("") - self.label_13.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_13.setScaledContents(True) - self.label_13.setObjectName("label_13") - self.vlayout_Menu.addWidget(self.label_13) - spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem1) - self.button_pemesana = QtWidgets.QPushButton(self.centralwidget) - self.button_pemesana.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pemesana.setFont(font) - self.button_pemesana.setStyleSheet("color:rgb(135, 126, 93);\n""background-color: rgb(191, 215, 152);") - self.button_pemesana.setObjectName("button_pemesana") - self.vlayout_Menu.addWidget(self.button_pemesana) - self.button_pembayaran = QtWidgets.QPushButton(self.centralwidget) - self.button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pembayaran.setFont(font) - self.button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n""background-color: rgb(191, 215, 152);") - self.button_pembayaran.setObjectName("button_pembayaran") - self.vlayout_Menu.addWidget(self.button_pembayaran) - self.button_anggota = QtWidgets.QPushButton(self.centralwidget) - self.button_anggota.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_anggota.setFont(font) - self.button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n""background-color: rgb(191, 215, 152);") - self.button_anggota.setObjectName("button_anggota") - self.vlayout_Menu.addWidget(self.button_anggota) - spacerItem2 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu.addItem(spacerItem2) - self.button_kkeluar = QtWidgets.QPushButton(self.centralwidget) - self.button_kkeluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_kkeluar.setMaximumSize(QtCore.QSize(100, 16777215)) - font = QtGui.QFont() - font.setFamily("Microsoft New Tai Lue") - font.setPointSize(10) - self.button_kkeluar.setFont(font) - self.button_kkeluar.setStyleSheet("background-color:rgb(135, 182, 166);\n""color:rgb(255, 220, 179);") - self.button_kkeluar.setObjectName("button_kkeluar") - self.vlayout_Menu.addWidget(self.button_kkeluar) - spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem3) - self.horizontalLayout.addLayout(self.vlayout_Menu) - spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem4) - self.line = QtWidgets.QFrame(self.centralwidget) - self.line.setFrameShape(QtWidgets.QFrame.VLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.horizontalLayout.addWidget(self.line) - spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem5) - self.stackedWidget = QtWidgets.QStackedWidget(self.centralwidget) - self.stackedWidget.setObjectName("stackedWidget") - - - #PAGE CARI ANGGOTA - self.page_CariAnggota = QtWidgets.QWidget() - self.page_CariAnggota.setObjectName("page_CariAnggota") - self.verticalLayout = QtWidgets.QVBoxLayout(self.page_CariAnggota) - self.verticalLayout.setObjectName("verticalLayout") - self.vlayout_Anggota = QtWidgets.QVBoxLayout() - self.vlayout_Anggota.setObjectName("vlayout_Anggota") - spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota.addItem(spacerItem6) - self.label_Anggota = QtWidgets.QLabel(self.page_CariAnggota) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota.setFont(font) - self.label_Anggota.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota.setObjectName("label_Anggota") - self.vlayout_Anggota.addWidget(self.label_Anggota) - spacerItem7 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota.addItem(spacerItem7) - self.tab_Cari = QtWidgets.QTabWidget(self.page_CariAnggota) - self.tab_Cari.setStyleSheet("background-color: rgb(245, 191, 192);\n""selection-background-color: rgb(170, 170, 255);") - self.tab_Cari.setObjectName("tab_Cari") - self.tab_IDA = QtWidgets.QWidget() - self.tab_IDA.setStyleSheet("background-color: rgb(245, 191, 192);") - self.tab_IDA.setObjectName("tab_IDA") - self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.tab_IDA) - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.groupBox_2 = QtWidgets.QGroupBox(self.tab_IDA) - self.groupBox_2.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox_2.setTitle("") - self.groupBox_2.setObjectName("groupBox_2") - self.gridLayout_3 = QtWidgets.QGridLayout(self.groupBox_2) - self.gridLayout_3.setObjectName("gridLayout_3") - spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_3.addItem(spacerItem8, 4, 0, 1, 1) - self.texteditor_IDc = QtWidgets.QLineEdit(self.groupBox_2) - self.texteditor_IDc.setStyleSheet("color:rgb(254, 209, 134);\n""background-color: rgb(230, 131, 116)") - self.texteditor_IDc.setObjectName("texteditor_IDc") - self.gridLayout_3.addWidget(self.texteditor_IDc, 2, 0, 1, 1) - self.horizontalLayout_6 = QtWidgets.QHBoxLayout() - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_6.addItem(spacerItem9) - self.button_cariID = QtWidgets.QPushButton(self.groupBox_2) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.button_cariID.setFont(font) - self.button_cariID.setStyleSheet("background-color: rgb(245, 191, 192);color:rgb(180, 155, 151)") - self.button_cariID.setObjectName("button_cariID") - self.horizontalLayout_6.addWidget(self.button_cariID) - self.gridLayout_3.addLayout(self.horizontalLayout_6, 3, 0, 1, 1) - self.label_7 = QtWidgets.QLabel(self.groupBox_2) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_7.setFont(font) - self.label_7.setStyleSheet("color:rgb(255, 201, 162);") - self.label_7.setObjectName("label_7") - self.gridLayout_3.addWidget(self.label_7, 1, 0, 1, 1) - spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_3.addItem(spacerItem10, 0, 0, 1, 1) - self.horizontalLayout_5.addWidget(self.groupBox_2) - self.tab_Cari.addTab(self.tab_IDA, "") - self.tab_Nama = QtWidgets.QWidget() - self.tab_Nama.setObjectName("tab_Nama") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.tab_Nama) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.groupBox = QtWidgets.QGroupBox(self.tab_Nama) - self.groupBox.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox.setTitle("") - self.groupBox.setObjectName("groupBox") - self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) - self.gridLayout_2.setObjectName("gridLayout_2") - spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_2.addItem(spacerItem11, 6, 0, 1, 1) - self.texteditor_namaC = QtWidgets.QLineEdit(self.groupBox) - self.texteditor_namaC.setStyleSheet("color:rgb(254, 209, 134);\n""background-color: rgb(230, 131, 116)") - self.texteditor_namaC.setObjectName("texteditor_namaC") - self.gridLayout_2.addWidget(self.texteditor_namaC, 2, 0, 1, 1) - self.horizontalLayout_3 = QtWidgets.QHBoxLayout() - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_3.addItem(spacerItem12) - self.button_CariN = QtWidgets.QPushButton(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.button_CariN.setFont(font) - self.button_CariN.setStyleSheet("background-color: rgb(245, 191, 192);color:rgb(180, 155, 151)") - self.button_CariN.setObjectName("button_CariN") - self.horizontalLayout_3.addWidget(self.button_CariN) - self.gridLayout_2.addLayout(self.horizontalLayout_3, 5, 0, 1, 1) - self.label_3 = QtWidgets.QLabel(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_3.setFont(font) - self.label_3.setStyleSheet("color:rgb(255, 201, 162)") - self.label_3.setObjectName("label_3") - self.gridLayout_2.addWidget(self.label_3, 3, 0, 1, 1) - self.label_5 = QtWidgets.QLabel(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_5.setFont(font) - self.label_5.setStyleSheet("color:rgb(255, 201, 162);") - self.label_5.setObjectName("label_5") - self.gridLayout_2.addWidget(self.label_5, 1, 0, 1, 1) - self.text_editor_noidenC = QtWidgets.QLineEdit(self.groupBox) - self.text_editor_noidenC.setStyleSheet("color:rgb(254, 209, 134);\n""background-color: rgb(230, 131, 116)") - self.text_editor_noidenC.setObjectName("text_editor_noidenC") - self.gridLayout_2.addWidget(self.text_editor_noidenC, 4, 0, 1, 1) - spacerItem13 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_2.addItem(spacerItem13, 0, 0, 1, 1) - self.horizontalLayout_4.addWidget(self.groupBox) - self.tab_Cari.addTab(self.tab_Nama, "") - self.vlayout_Anggota.addWidget(self.tab_Cari) - spacerItem14 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota.addItem(spacerItem14) - self.verticalLayout.addLayout(self.vlayout_Anggota) - self.stackedWidget.addWidget(self.page_CariAnggota) - - - #PAGE MENU ANGGOTA - self.page_MenuA = QtWidgets.QWidget() - self.page_MenuA.setObjectName("page_MenuA") - self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_MenuA) - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.vlayout_Anggota_3 = QtWidgets.QVBoxLayout() - self.vlayout_Anggota_3.setObjectName("vlayout_Anggota_3") - spacerItem15 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_3.addItem(spacerItem15) - self.label_Anggota_3 = QtWidgets.QLabel(self.page_MenuA) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_3.setFont(font) - self.label_Anggota_3.setStyleSheet("color:rgb(101, 200, 222);") - self.label_Anggota_3.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_3.setObjectName("label_Anggota_3") - self.vlayout_Anggota_3.addWidget(self.label_Anggota_3) - spacerItem16 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_3.addItem(spacerItem16) - self.horizontalLayout_8 = QtWidgets.QHBoxLayout() - self.horizontalLayout_8.setObjectName("horizontalLayout_8") - self.button_CariA = QtWidgets.QPushButton(self.page_MenuA) - self.button_CariA.setMinimumSize(QtCore.QSize(200, 500)) - font = QtGui.QFont() - font.setFamily("Palatino Linotype") - font.setPointSize(16) - font.setBold(True) - font.setWeight(75) - self.button_CariA.setFont(font) - self.button_CariA.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) - self.button_CariA.setStyleSheet("color: rgb(254, 254, 254);\n""background-color: rgb(233, 147, 132)\n") - self.button_CariA.setObjectName("button_CariA") - self.horizontalLayout_8.addWidget(self.button_CariA) - self.button_TambahA = QtWidgets.QPushButton(self.page_MenuA) - self.button_TambahA.setMinimumSize(QtCore.QSize(200, 500)) - font = QtGui.QFont() - font.setFamily("Palatino Linotype") - font.setPointSize(16) - font.setBold(True) - font.setWeight(75) - self.button_TambahA.setFont(font) - self.button_TambahA.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) - self.button_TambahA.setStyleSheet("color: rgb(254, 254, 254);\n""background-color: rgb(233, 147, 132)\n") - self.button_TambahA.setObjectName("button_TambahA") - self.horizontalLayout_8.addWidget(self.button_TambahA) - self.button_PerpanjangD = QtWidgets.QPushButton(self.page_MenuA) - self.button_PerpanjangD.setEnabled(False) - self.button_PerpanjangD.setMinimumSize(QtCore.QSize(200, 500)) - font = QtGui.QFont() - font.setFamily("Palatino Linotype") - font.setPointSize(16) - font.setBold(True) - font.setWeight(75) - self.button_PerpanjangD.setFont(font) - self.button_PerpanjangD.setStyleSheet("color: rgb(213, 213, 213);\n""background-color:rgb(222, 135, 124);\n") - self.button_PerpanjangD.setObjectName("button_PerpanjangD") - self.horizontalLayout_8.addWidget(self.button_PerpanjangD) - self.vlayout_Anggota_3.addLayout(self.horizontalLayout_8) - spacerItem17 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - self.vlayout_Anggota_3.addItem(spacerItem17) - self.verticalLayout_4.addLayout(self.vlayout_Anggota_3) - self.stackedWidget.addWidget(self.page_MenuA) - - - #PAGE TAMBAH ANGGOTA - self.page_tambahA = QtWidgets.QWidget() - self.page_tambahA.setObjectName("page_tambahA") - self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_tambahA) - self.verticalLayout_3.setObjectName("verticalLayout_3") - self.vlayout_Anggota_2 = QtWidgets.QVBoxLayout() - self.vlayout_Anggota_2.setObjectName("vlayout_Anggota_2") - spacerItem18 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_2.addItem(spacerItem18) - self.label_Anggota_2 = QtWidgets.QLabel(self.page_tambahA) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_2.setFont(font) - self.label_Anggota_2.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota_2.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_2.setObjectName("label_Anggota_2") - self.vlayout_Anggota_2.addWidget(self.label_Anggota_2) - spacerItem19 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_2.addItem(spacerItem19) - self.verticalLayout_2 = QtWidgets.QVBoxLayout() - self.verticalLayout_2.setObjectName("verticalLayout_2") - self.groupBox_3 = QtWidgets.QGroupBox(self.page_tambahA) - self.groupBox_3.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox_3.setTitle("") - self.groupBox_3.setObjectName("groupBox_3") - self.gridLayout_4 = QtWidgets.QGridLayout(self.groupBox_3) - self.gridLayout_4.setObjectName("gridLayout_4") - spacerItem20 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_4.addItem(spacerItem20, 6, 0, 1, 1) - self.label_6 = QtWidgets.QLabel(self.groupBox_3) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_6.setFont(font) - self.label_6.setStyleSheet("color:rgb(255, 201, 162);") - self.label_6.setObjectName("label_6") - self.gridLayout_4.addWidget(self.label_6, 1, 0, 1, 1) - spacerItem21 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_4.addItem(spacerItem21, 0, 0, 1, 1) - self.texteditor_namaTambah = QtWidgets.QLineEdit(self.groupBox_3) - self.texteditor_namaTambah.setStyleSheet("color:rgb(254, 209, 134);\n""background-color: rgb(230, 131, 116)") - self.texteditor_namaTambah.setObjectName("texteditor_namaTambah") - self.gridLayout_4.addWidget(self.texteditor_namaTambah, 2, 0, 1, 1) - self.text_editor_noidenTambah = QtWidgets.QLineEdit(self.groupBox_3) - self.text_editor_noidenTambah.setStyleSheet("color:rgb(254, 209, 134);\n""background-color: rgb(230, 131, 116)") - self.text_editor_noidenTambah.setObjectName("text_editor_noidenTambah") - self.gridLayout_4.addWidget(self.text_editor_noidenTambah, 4, 0, 1, 1) - self.label_8 = QtWidgets.QLabel(self.groupBox_3) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_8.setFont(font) - self.label_8.setStyleSheet("color:rgb(255, 201, 162)") - self.label_8.setObjectName("label_8") - self.gridLayout_4.addWidget(self.label_8, 3, 0, 1, 1) - self.horizontalLayout_7 = QtWidgets.QHBoxLayout() - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - spacerItem22 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_7.addItem(spacerItem22) - self.button_tambahData_2 = QtWidgets.QPushButton(self.groupBox_3) - font = QtGui.QFont() - font.setPointSize(9) - self.button_tambahData_2.setFont(font) - self.button_tambahData_2.setStyleSheet("background-color: rgb(233, 175, 127);\n""color: rgb(255, 255, 255);") - self.button_tambahData_2.setObjectName("button_tambahData_2") - self.horizontalLayout_7.addWidget(self.button_tambahData_2) - self.gridLayout_4.addLayout(self.horizontalLayout_7, 5, 0, 1, 1) - self.verticalLayout_2.addWidget(self.groupBox_3) - self.vlayout_Anggota_2.addLayout(self.verticalLayout_2) - spacerItem23 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_2.addItem(spacerItem23) - self.verticalLayout_3.addLayout(self.vlayout_Anggota_2) - self.stackedWidget.addWidget(self.page_tambahA) - - #PAGE HASIL DATA ANGGOTA - self.page_HasilData = QtWidgets.QWidget() - self.page_HasilData.setObjectName("page_HasilData") - self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_HasilData) - self.verticalLayout_6.setObjectName("verticalLayout_6") - self.vlayout_Anggota_4 = QtWidgets.QVBoxLayout() - self.vlayout_Anggota_4.setObjectName("vlayout_Anggota_4") - spacerItem24 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_4.addItem(spacerItem24) - self.label_Anggota_4 = QtWidgets.QLabel(self.page_HasilData) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_4.setFont(font) - self.label_Anggota_4.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota_4.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_4.setObjectName("label_Anggota_4") - self.vlayout_Anggota_4.addWidget(self.label_Anggota_4) - spacerItem25 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_4.addItem(spacerItem25) - self.verticalLayout_5 = QtWidgets.QVBoxLayout() - self.verticalLayout_5.setObjectName("verticalLayout_5") - self.groupBox_4 = QtWidgets.QGroupBox(self.page_HasilData) - self.groupBox_4.setStyleSheet("background-color: rgb(250, 202, 147);") - self.groupBox_4.setTitle("") - self.groupBox_4.setObjectName("groupBox_4") - self.gridLayout_5 = QtWidgets.QGridLayout(self.groupBox_4) - self.gridLayout_5.setObjectName("gridLayout_5") - self.FileNameLayout = QtWidgets.QHBoxLayout() - self.FileNameLayout.setObjectName("FileNameLayout") - self.label_9 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_9.setFont(font) - self.label_9.setStyleSheet("color:rgb(154, 108, 141);") - self.label_9.setObjectName("label_9") - self.FileNameLayout.addWidget(self.label_9) - self.label_hasilnama = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.label_hasilnama.setFont(font) - self.label_hasilnama.setStyleSheet("color: rgb(74, 55, 82);") - self.label_hasilnama.setObjectName("label_hasilnama") - self.FileNameLayout.addWidget(self.label_hasilnama) - spacerItem26 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.FileNameLayout.addItem(spacerItem26) - self.gridLayout_5.addLayout(self.FileNameLayout, 4, 0, 1, 1) - spacerItem27 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_5.addItem(spacerItem27, 2, 0, 1, 1) - spacerItem28 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_5.addItem(spacerItem28, 14, 0, 1, 1) - self.FileNameLayout_4 = QtWidgets.QHBoxLayout() - self.FileNameLayout_4.setObjectName("FileNameLayout_4") - self.label_12 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_12.setFont(font) - self.label_12.setStyleSheet("color:rgb(154, 108, 141);") - self.label_12.setObjectName("label_12") - self.FileNameLayout_4.addWidget(self.label_12) - self.label = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.label.setFont(font) - self.label.setStyleSheet("color: rgb(74, 55, 82);") - self.label.setObjectName("label") - self.FileNameLayout_4.addWidget(self.label) - spacerItem29 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.FileNameLayout_4.addItem(spacerItem29) - self.gridLayout_5.addLayout(self.FileNameLayout_4, 3, 0, 1, 1) - self.FileNameLayout_2 = QtWidgets.QHBoxLayout() - self.FileNameLayout_2.setObjectName("FileNameLayout_2") - self.label_10 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_10.setFont(font) - self.label_10.setStyleSheet("color:rgb(154, 108, 141);") - self.label_10.setObjectName("label_10") - self.FileNameLayout_2.addWidget(self.label_10) - self.label_hasilnoiden = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.label_hasilnoiden.setFont(font) - self.label_hasilnoiden.setStyleSheet("color: rgb(74, 55, 82);") - self.label_hasilnoiden.setObjectName("label_hasilnoiden") - self.FileNameLayout_2.addWidget(self.label_hasilnoiden) - spacerItem30 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.FileNameLayout_2.addItem(spacerItem30) - self.gridLayout_5.addLayout(self.FileNameLayout_2, 12, 0, 1, 1) - self.horizontalLayout_9 = QtWidgets.QHBoxLayout() - self.horizontalLayout_9.setObjectName("horizontalLayout_9") - spacerItem31 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_9.addItem(spacerItem31) - self.button_kembali = QtWidgets.QPushButton(self.groupBox_4) - font = QtGui.QFont() - font.setPointSize(9) - self.button_kembali.setFont(font) - self.button_kembali.setStyleSheet("background-color: rgb(59, 176, 176);\n""color: rgb(255, 255, 255);") - self.button_kembali.setObjectName("button_kembali") - self.horizontalLayout_9.addWidget(self.button_kembali) - self.gridLayout_5.addLayout(self.horizontalLayout_9, 15, 0, 1, 1) - self.FileNameLayout_3 = QtWidgets.QHBoxLayout() - self.FileNameLayout_3.setObjectName("FileNameLayout_3") - self.label_11 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_11.setFont(font) - self.label_11.setStyleSheet("color:rgb(154, 108, 141);") - self.label_11.setObjectName("label_11") - self.FileNameLayout_3.addWidget(self.label_11) - self.label_hasiltanggal = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.label_hasiltanggal.setFont(font) - self.label_hasiltanggal.setStyleSheet("color: rgb(74, 55, 82);") - self.label_hasiltanggal.setObjectName("label_hasiltanggal") - self.FileNameLayout_3.addWidget(self.label_hasiltanggal) - spacerItem32 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.FileNameLayout_3.addItem(spacerItem32) - self.gridLayout_5.addLayout(self.FileNameLayout_3, 13, 0, 1, 1) - self.verticalLayout_5.addWidget(self.groupBox_4) - self.vlayout_Anggota_4.addLayout(self.verticalLayout_5) - spacerItem33 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_4.addItem(spacerItem33) - self.verticalLayout_6.addLayout(self.vlayout_Anggota_4) - self.stackedWidget.addWidget(self.page_HasilData) - - #PAGE PESAN KESALAHAN - self.page = QtWidgets.QWidget() - self.page.setObjectName("page") - self.verticalLayout_7 = QtWidgets.QVBoxLayout(self.page) - self.verticalLayout_7.setObjectName("verticalLayout_7") - spacerItem34 = QtWidgets.QSpacerItem(20, 393, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_7.addItem(spacerItem34) - self.groupBox_5 = QtWidgets.QGroupBox(self.page) - self.groupBox_5.setStyleSheet("background-color: rgb(250, 202, 147);") - self.groupBox_5.setTitle("") - self.groupBox_5.setObjectName("groupBox_5") - self.gridLayout_6 = QtWidgets.QGridLayout(self.groupBox_5) - self.gridLayout_6.setObjectName("gridLayout_6") - self.horizontalLayout_10 = QtWidgets.QHBoxLayout() - self.horizontalLayout_10.setObjectName("horizontalLayout_10") - self.button_kembali_2 = QtWidgets.QPushButton(self.groupBox_5) - font = QtGui.QFont() - font.setPointSize(9) - self.button_kembali_2.setFont(font) - self.button_kembali_2.setStyleSheet("background-color: rgb(59, 176, 176);\n""color: rgb(255, 255, 255);") - self.button_kembali_2.setObjectName("button_kembali_2") - self.horizontalLayout_10.addWidget(self.button_kembali_2) - self.gridLayout_6.addLayout(self.horizontalLayout_10, 12, 0, 1, 1) - spacerItem35 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_6.addItem(spacerItem35, 2, 0, 1, 1) - spacerItem36 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_6.addItem(spacerItem36, 11, 0, 1, 1) - self.label_pesanKejadian = QtWidgets.QLabel(self.groupBox_5) - font = QtGui.QFont() - font.setFamily("MS Sans Serif") - font.setPointSize(20) - font.setBold(True) - font.setWeight(75) - self.label_pesanKejadian.setFont(font) - self.label_pesanKejadian.setStyleSheet("color:rgb(95, 81, 94)") - self.label_pesanKejadian.setAlignment(QtCore.Qt.AlignCenter) - self.label_pesanKejadian.setObjectName("label_pesanKejadian") - self.gridLayout_6.addWidget(self.label_pesanKejadian, 10, 0, 1, 1) - self.verticalLayout_7.addWidget(self.groupBox_5) - spacerItem37 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_7.addItem(spacerItem37) - self.stackedWidget.addWidget(self.page) - self.horizontalLayout.addWidget(self.stackedWidget) - MainWindow.setCentralWidget(self.centralwidget) - - reg_ex = QRegExp("[0-9]+.?[0-9]{,1}") - input_validator = QRegExpValidator(reg_ex, self.texteditor_IDc) - input_validator1 = QRegExpValidator(reg_ex, self.text_editor_noidenC) - input_validator2 = QRegExpValidator(reg_ex, self.text_editor_noidenTambah) - self.texteditor_IDc.setValidator(input_validator) - self.text_editor_noidenC.setValidator(input_validator1) - self.text_editor_noidenTambah.setValidator(input_validator2) - - - self.retranslateUi(MainWindow) - self.stackedWidget.setCurrentIndex(1) - self.tab_Cari.setCurrentIndex(0) - # self.button_kkeluar.clicked.connect(self.Show_Keluar) - self.button_anggota.clicked.connect(self.Show_MenuAnggota) - self.button_CariA.clicked.connect(self.Show_CariA) - self.button_cariID.clicked.connect(self.Event_searchByID) - self.button_CariN.clicked.connect(self.Event_searchByN) - self.button_TambahA.clicked.connect(self.Show_TambahA) - self.button_tambahData_2.clicked.connect(self.Event_tambahA) - self.button_kembali.clicked.connect(self.Show_MenuAnggota) - self.button_kembali_2.clicked.connect(self.Show_MenuAnggota) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - - def Event_searchByID(self): - id = self.texteditor_IDc.text() - if(DaftarAnggota.cekID(id) == True): - nama = DaftarAnggota.getNama(id) - noIden = DaftarAnggota.getNomorIdentitas(id) - aktif = DaftarAnggota.getTanggalAktif(id) - self.stackedWidget.setCurrentIndex(3) - self.label.setText(str(id)) - self.label_hasilnama.setText(str(nama)) - self.label_hasilnoiden.setText(str(noIden)) - self.label_hasiltanggal.setText(str(aktif)) - else: - self.stackedWidget.setCurrentIndex(4) - self.label_pesanKejadian.setText("Data tidak ditemukan") - - - def Event_searchByN(self): - noIden = self.text_editor_noidenC.text() - if(DaftarAnggota.cekNoIden(noIden)): - nama = self.texteditor_namaC.text() - id = DaftarAnggota.getIDAnggota(nama,noIden) - aktif = DaftarAnggota.getTanggalAktif(id) - self.stackedWidget.setCurrentIndex(3) - self.label.setText(str(id)) - self.label_hasilnama.setText(str(nama)) - self.label_hasilnoiden.setText(str(noIden)) - self.label_hasiltanggal.setText(str(aktif)) - else: - self.stackedWidget.setCurrentIndex(4) - self.label_pesanKejadian.setText("Data tidak ditemukan") - - def Event_tambahA(self): - try: - nama = self.texteditor_namaTambah.text() - noIden = self.text_editor_noidenTambah.text() - if(DaftarAnggota.cekNoIden(noIden)): - id = DaftarAnggota.getIDAnggota(nama,noIden) - aktif = DaftarAnggota.getTanggalAktif(id) - self.stackedWidget.setCurrentIndex(3) - self.label.setText(str(id)) - self.label_hasilnama.setText(str(nama)) - self.label_hasilnoiden.setText(str(noIden)) - self.label_hasiltanggal.setText(str(aktif)) - else: - id = DaftarAnggota.getNewIDAnggota() - DaftarAnggota.TambahAnggota(str(nama),int(noIden),id) - aktif = DaftarAnggota.getTanggalAktif(id) - self.stackedWidget.setCurrentIndex(3) - self.label.setText(str(id)) - self.label_hasilnama.setText(str(nama)) - self.label_hasilnoiden.setText(str(noIden)) - self.label_hasiltanggal.setText(str(aktif)) - except: - self.stackedWidget.setCurrentIndex(4) - self.label_pesanKejadian.setText("Mohon input data dengan benar.") - - def Show_MenuAnggota(self): - self.stackedWidget.setCurrentIndex(1) - self.texteditor_IDc.setText("") - self.texteditor_namaC.setText("") - self.text_editor_noidenC.setText("") - self.texteditor_namaTambah.setText("") - self.text_editor_noidenTambah.setText("") - - def Show_CariA(self): - self.stackedWidget.setCurrentIndex(0) - - def Show_TambahA(self): - self.stackedWidget.setCurrentIndex(2) - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) - self.button_pemesana.setText(_translate("MainWindow", "Pemesanan")) - self.button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) - self.button_anggota.setText(_translate("MainWindow", "Anggota")) - self.button_kkeluar.setText(_translate("MainWindow", "Keluar")) - self.label_Anggota.setText(_translate("MainWindow", "Cari Anggota")) - self.button_cariID.setText(_translate("MainWindow", "Cari")) - self.label_7.setText(_translate("MainWindow", "ID Anggota")) - self.tab_Cari.setTabText(self.tab_Cari.indexOf(self.tab_IDA), _translate("MainWindow", "Berdasarkan IDAnggota")) - self.button_CariN.setText(_translate("MainWindow", "Cari")) - self.label_3.setText(_translate("MainWindow", "Nomor Identitas")) - self.label_5.setText(_translate("MainWindow", "Nama")) - self.tab_Cari.setTabText(self.tab_Cari.indexOf(self.tab_Nama), _translate("MainWindow", "Berdasarkan Nama")) - self.label_Anggota_3.setText(_translate("MainWindow", "Anggota")) - self.button_CariA.setText(_translate("MainWindow", "Cari\nAnggota")) - self.button_TambahA.setText(_translate("MainWindow", "Tambah\nAnggota")) - self.button_PerpanjangD.setText(_translate("MainWindow", "Perpanjang\nAnggota")) - self.label_Anggota_2.setText(_translate("MainWindow", "Tambah Anggota")) - self.label_6.setText(_translate("MainWindow", "Nama")) - self.label_8.setText(_translate("MainWindow", "Nomor Identitas")) - self.button_tambahData_2.setText(_translate("MainWindow", "Tambah")) - self.label_Anggota_4.setText(_translate("MainWindow", "Data Anggota")) - self.label_9.setText(_translate("MainWindow", "Nama :")) - self.label_hasilnama.setText(_translate("MainWindow", "ini nama")) - self.label_12.setText(_translate("MainWindow", "ID Anggota :")) - self.label.setText(_translate("MainWindow", "ini id")) - self.label_10.setText(_translate("MainWindow", "Nomor Identitas :")) - self.label_hasilnoiden.setText(_translate("MainWindow", "ini nomor identitas")) - self.button_kembali.setText(_translate("MainWindow", "Kembali")) - self.label_11.setText(_translate("MainWindow", "Tanggal Aktif :")) - self.label_hasiltanggal.setText(_translate("MainWindow", "ini tanggal aktif")) - self.button_kembali_2.setText(_translate("MainWindow", "OK")) - self.label_pesanKejadian.setText(_translate("MainWindow", "Data Tidak Ditemukan")) - - -if __name__ == "__main__": - import sys - try: - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Keanggotaan() - ui.setupUi(MainWindow) - MainWindow.show() - sys.exit(app.exec_()) - except: - print("error") \ No newline at end of file diff --git a/Pemesanan.py b/Pemesanan.py deleted file mode 100644 index 0eaba3041f9c73276dcb146ddc4fb2a68c80679a..0000000000000000000000000000000000000000 --- a/Pemesanan.py +++ /dev/null @@ -1,185 +0,0 @@ -import sqlalchemy as db -import datetime -from engine_needed import engine, metadata, connection - -#TABLE -Ruangan = db.Table("DaftarRuangan", metadata, autoload=True, autoload_with=engine) -Pemesanan = db.Table("DaftarPemesanan", metadata, autoload=True, autoload_with=engine) -keanggotaan = db.Table("keanggotaan", metadata, autoload=True, autoload_with=engine) - -#RUANGAN -#MENDAPATKAN DATA DARI ATRIBUT -# def getJenis(nomorRuangan) : -# query = db.select([Ruangan.columns.Jenis]).where(Ruangan.columns.NomorRuangan == nomorRuangan) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -# def getUkuran(nomorRuangan) : -# query = db.select([Ruangan.columns.Ukuran]).where(Ruangan.columns.NomorRuangan == nomorRuangan) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -def getHargaRuangan(nomorRuangan) : - query = db.select([Ruangan.columns.Harga]).where(Ruangan.columns.NomorRuangan == nomorRuangan) - result = connection.execute(query) - resultset = result.fetchall() - return (resultset[0][0]) - -def getListRuangan(jumlahorg) : - if (jumlahorg >= 1) and (jumlahorg <= 5) : - ukuran = "Small" - elif (jumlahorg >= 6) and (jumlahorg <= 9) : - ukuran = "Medium" - else : - ukuran = "Large" - query = db.select([Ruangan.columns.NomorRuangan]).where(db.and_(Ruangan.columns.Ukuran == ukuran)) - result = connection.execute(query) - resultset = result.fetchall() - result_arr = [] - for i in enumerate(resultset): - result_arr.append(i[1][0]) - return (result_arr) - -#Mengembalikan nomor ruangan jika ada yang tersedia, -1 jika tidak ada yang tersedia -def tersedia(jumlahorg, waktu, tanggal,durasi) : - if (jumlahorg >= 1) and (jumlahorg <= 5) : - ukuran = "Small" - elif (jumlahorg >= 6) and (jumlahorg <= 9) : - ukuran = "Medium" - else : - ukuran = "Large" - - query = db.select([Ruangan.columns.NomorRuangan, Ruangan.columns.Jenis, Ruangan.columns.Ukuran]).where(db.and_(Ruangan.columns.Ukuran == ukuran)) - result = connection.execute(query) - resultset = result.fetchall() - result_arr = dict() - for i in enumerate(resultset): - temp = {} - temp["jenis"] = i[1][1] - temp["ukuran"] = i[1][2] - result_arr[i[1][0]] = temp - - listRuangan = result_arr - query = db.select([Pemesanan.columns.NomorRuangan, Pemesanan.columns.Durasi, Pemesanan.columns.Waktu]) - query = query.select_from(Ruangan.join(Pemesanan, Pemesanan.columns.NomorRuangan == Ruangan.columns.NomorRuangan)).where(db.and_(Ruangan.columns.Ukuran == ukuran, Pemesanan.columns.Tanggal == tanggal)) - res = connection.execute(query).fetchall() - reserved_arr = [] - for i in enumerate(res): - reserved_arr.append(i[1]) - - ruang_boolean = dict() - for i in (listRuangan) : - ruang_boolean[i] = 0 - - i = 0 - while (i<len(reserved_arr)) : - temp_start = reserved_arr[i][2].hour - temp_durasi = reserved_arr[i][1] - temp_nomor = reserved_arr[i][0] - temp_finish = temp_start + temp_durasi - if (ruang_boolean[temp_nomor] == 0): - if (waktu == temp_start) or ((waktu > temp_start) and (waktu < temp_finish)) or ((waktu + durasi >= temp_start) and (waktu + durasi <= temp_finish)) or (waktu == temp_finish) : - ruang_boolean[temp_nomor] = 1 - i+=1 - - tersedia = [] - found = False - available = -1 - for key in ruang_boolean : - if (ruang_boolean[key] == 1) : - tempo = listRuangan.pop(key) - - return listRuangan - -#Pemesanan -#MENDAPATKAN DATA DARI ATRIBUT Pemesanan -# def getTanggal(nomorAntrian) : -# query = db.select([Pemesanan.columns.Tanggal]).where(Pemesanan.columns.NomorAntrian == nomorAntrian) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -# def getDurasi(nomorAntrian) : -# query = db.select([Pemesanan.columns.Durasi]).where(Pemesanan.columns.NomorAntrian == nomorAntrian) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -# def getWaktu(nomorAntrian) : -# query = db.select([Pemesanan.columns.Waktu]).where(Pemesanan.columns.NomorAntrian == nomorAntrian) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -# def getRuangan(nomorAntrian) : -# query = db.select([Pemesanan.columns.NomorRuangan]).where(Pemesanan.columns.NomorAntrian == nomorAntrian) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -def getStatus(nomorAntrian) : - query = db.select([Pemesanan.columns.Status]).where(Pemesanan.columns.NomorAntrian == nomorAntrian) - result = connection.execute(query) - resultset = result.fetchall() - return (resultset[0][0]) - -# def getTotHarga(nomorAntrian) : -# query = db.select([Pemesanan.columns.Harga]).where(Pemesanan.columns.NomorAntrian == nomorAntrian) -# result = connection.execute(query) -# resultset = result.fetchall() -# return (resultset[0][0]) - -def getMaxNomorAntrian() : - query = db.select([db.func.max(Pemesanan.columns.NomorAntrian)]) - result = connection.execute(query).fetchall() - return (result[0][0]) - -#MENAMBAHKAN DATA Pemesanan -def tambahPesanan(nama, durasi, tanggal, waktu, nomorRuang, id,harga) : - query = db.insert(Pemesanan).values(Nama = nama, Durasi = durasi, Tanggal = tanggal, Waktu = waktu, StatusPemesanan = "memesan", NomorRuangan = nomorRuang, IDAnggota = id, Harga = harga) - result = connection.execute(query) - -#MENGGANTI STATUS -def penggantianStatus(nomorAntrian, status) : - query = db.update(Pemesanan).values(StatusPemesanan = status).where(Pemesanan.columns.NomorAntrian == nomorAntrian) - result = connection.execute(query) - -#HITUNG HARGA -def updateHarga(nomorAntrian) : - totalharga = getHargaRuangan(nomorAntrian) * getDurasi(nomorAntrian) - query = db.update(Pemesanan).values(Harga = totalharga).where(Pemesanan.columns.NomorAntrian == nomorAntrian) - result = connection.execute(query) - -def findAnggota(id) : - if (id == "") : - return True - query = db.select([keanggotaan.columns.IDAnggota]) - result = connection.execute(query).fetchall() - found = False - # print(result) - result_arr = {} - for i in enumerate(result) : - # print(i[1][0]) - if (id == i[1][0]) : - found = True - break - - return found - -def Time(waktu) : - waktu = datetime.time(int(waktu)) - return waktu - -def parserTime(waktu) : - return int(waktu) - -def parserDate(tanggal) : - hari, bulan, tahun = map(int, tanggal.split("/")) - tgl = datetime.date(tahun, bulan, hari) - return tgl - -# #TEST -# print(getMaxNomorAntrian()) - diff --git a/RiwayatTransaksi.py b/RiwayatTransaksi.py deleted file mode 100644 index f3615f3320e4652db14ebe72095a34e346bcedff..0000000000000000000000000000000000000000 --- a/RiwayatTransaksi.py +++ /dev/null @@ -1,30 +0,0 @@ -import sqlalchemy as db -from sqlalchemy import func -from sqlalchemy import cast, Date -from datetime import datetime - -import sqlalchemy as db -from engine_needed import engine, metadata, connection - -rt = db.Table ('riwayattransaksi', metadata, autoload=True, autoload_with=engine) - -def searchByNum(number): - query=db.select([rt]).where(rt.columns.NomorTransaksi == number) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -def selectall(): - query=db.select([rt]) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -def searchByDate(date): - query=db.select([rt]).where(func.DATE(rt.columns.WaktuPembayaran) == date) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -#test -# print(searchall()) \ No newline at end of file diff --git a/RiwayatTransaksi_display.py b/RiwayatTransaksi_display.py deleted file mode 100644 index 4f8faa238963e119c0d8ba164cd22eb5b37ddcab..0000000000000000000000000000000000000000 --- a/RiwayatTransaksi_display.py +++ /dev/null @@ -1,243 +0,0 @@ -# -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'C:\Users\Annisa Rahim\Desktop\if2250-2020-k02-2-sanskmanajemen\gui.ui' -# Created by: PyQt5 UI code generator 5.13.0 -''' -MODUL RIWAYAT TRANSAKSI --Kelompok 2 k2 sansK Management- -Penanggung jawab: -Nama: Annisa Rahim -NIM : 13518089 - -fungsi modul ini antara lain: -1. Menampilkan Riwayat Transaksi yang mengacu pada database Manajemen Karaoke Sans K (data.selectall,loadData) -2. Menampilkan hasil pencarian berdasarkan input nomorTransaksi dari user (search, data.searchByNum) -3. Menampilkan riwayat transaksi berdasarkan tanggal yang dipilih oleh user (data.searchByDate, dateMode, onDateChanged) - -catatan tambahan: --pada fungsi ke-2, jika tidak ada input dari user fungsi akan menghasilkan -seluruh data riwayat transaksi yang ada di database --pada fungsi ke-3 default date yang muncul pertama adalah tanggal hari ini -''' -import sqlalchemy as db -from sqlalchemy import func -from sqlalchemy import cast, Date -from datetime import datetime -import RiwayatTransaksi as data - -from PyQt5 import QtCore, QtGui, QtWidgets -from PyQt5.QtCore import Qt - -class RiwayatTransaksi(object): - - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1237, 860) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n" -"\n" -"") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.verticalLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget) - self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(160, 160, 1051, 631)) - self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") - self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2) - self.verticalLayout.setContentsMargins(0, 0, 0, 0) - self.verticalLayout.setObjectName("verticalLayout") - self.tableWidget = QtWidgets.QTableWidget(self.verticalLayoutWidget_2) - self.tableWidget.setStyleSheet("background-color: rgb();\n" -"\n" -"") - self.tableWidget.setColumnCount(10) - self.tableWidget.setObjectName("tableWidget") - self.tableWidget.horizontalHeader().setCascadingSectionResizes(False) - self.tableWidget.setHorizontalHeaderLabels(["No. Transaksi", "No. Antrian","Nama", "Durasi", "Tanggal", "Waktu", "No. Ruangan", "Harga", "Waktu Pembayaran", "ID Anggota"]) - self.verticalLayout.addWidget(self.tableWidget) - self.horizontalLayoutWidget = QtWidgets.QWidget(self.centralwidget) - self.horizontalLayoutWidget.setGeometry(QtCore.QRect(430, 110, 781, 51)) - self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") - self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget) - self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - self.searchButton = QtWidgets.QPushButton(self.horizontalLayoutWidget) - self.searchButton.setObjectName("searchButton") - self.searchButton.clicked.connect(self.search) - self.horizontalLayout_2.addWidget(self.searchButton) - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem) - self.dateButton = QtWidgets.QPushButton(self.horizontalLayoutWidget) - self.dateButton.setObjectName("dateButton") - self.horizontalLayout_2.addWidget(self.dateButton) - self.dateButton.clicked.connect(self.dateMode) - self.tanggal = QtWidgets.QLabel(self.horizontalLayoutWidget) - self.tanggal.hide() - self.tanggal.setObjectName("tanggal") - self.horizontalLayout_2.addWidget(self.tanggal) - self.dateEdit = QtWidgets.QDateEdit(self.horizontalLayoutWidget) - self.dateEdit.hide() - self.dateEdit.setObjectName("dateEdit") - - self.horizontalLayout_2.addWidget(self.dateEdit) - self.button_keluar = QtWidgets.QPushButton(self.centralwidget) - self.button_keluar.setGeometry(QtCore.QRect(20, 720, 100, 51)) - self.button_keluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_keluar.setMaximumSize(QtCore.QSize(100, 16777215)) - font = QtGui.QFont() - font.setFamily("Microsoft New Tai Lue") - font.setPointSize(10) - self.button_keluar.setFont(font) - self.button_keluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" -"color:rgb(255, 220, 179);") - self.button_keluar.setObjectName("button_keluar") - self.searchInput = QtWidgets.QPlainTextEdit(self.centralwidget) - self.searchInput.setGeometry(QtCore.QRect(310, 120, 111, 31)) - self.searchInput.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.AdjustToContents) - self.searchInput.setObjectName("searchInput") - self.horizontalLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget) - self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(160, 110, 131, 51)) - self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2") - self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2) - self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.no_antrian = QtWidgets.QLabel(self.horizontalLayoutWidget_2) - font = QtGui.QFont() - font.setPointSize(8) - self.no_antrian.setFont(font) - self.no_antrian.setObjectName("no_antrian") - self.horizontalLayout_3.addWidget(self.no_antrian) - self.horizontalLayoutWidget_3 = QtWidgets.QWidget(self.centralwidget) - self.horizontalLayoutWidget_3.setGeometry(QtCore.QRect(140, 10, 1071, 91)) - self.horizontalLayoutWidget_3.setObjectName("horizontalLayoutWidget_3") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_3) - self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.RiwayatTransaksi = QtWidgets.QLabel(self.horizontalLayoutWidget_3) - font = QtGui.QFont() - font.setFamily("MS Sans Serif") - font.setPointSize(20) - font.setBold(True) - font.setWeight(75) - self.RiwayatTransaksi.setFont(font) - self.RiwayatTransaksi.setStyleSheet("color:rgb(95, 81, 94)") - self.RiwayatTransaksi.setAlignment(QtCore.Qt.AlignCenter) - self.RiwayatTransaksi.setObjectName("RiwayatTransaksi") - self.horizontalLayout_4.addWidget(self.RiwayatTransaksi) - self.label = QtWidgets.QLabel(self.centralwidget) - self.label.setGeometry(QtCore.QRect(10, 10, 131, 121)) - self.label.setText("") - self.label.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label.setScaledContents(True) - self.label.setObjectName("label") - MainWindow.setCentralWidget(self.centralwidget) - - self.retranslateUi(MainWindow) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "Riwayat Transaksi")) - self.searchButton.setText(_translate("MainWindow", "search")) - self.dateButton.setText(_translate("MainWindow", "Ganti Tanggal")) - self.tanggal.setText(_translate("MainWindow", "Tanggal")) - self.dateEdit.setDisplayFormat(_translate("MainWindow", "dd/MM/yyyy")) - self.button_keluar.setText(_translate("MainWindow", "Keluar")) - self.no_antrian.setText(_translate("MainWindow", "Nomor Transaksi:")) - self.RiwayatTransaksi.setText(_translate("MainWindow", "Riwayat Transaksi")) - - def loadData(self,result): - self.tableWidget.setRowCount(0) - if (result!=[]): - ir=0 - for row in (result): - self.tableWidget.insertRow(ir) - ic=0 - for column in row: - item=QtWidgets.QTableWidgetItem(str(column)) - item.setTextAlignment(Qt.AlignCenter) - self.tableWidget.setItem(ir,ic, item) - ic+=1 - ir+=1 - # change the alignment - header=self.tableWidget.horizontalHeader() - header.setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents) - for i in range (1,ic): - header.setSectionResizeMode(i, QtWidgets.QHeaderView.ResizeToContents) - - def search(self): - table=[] - input = self.searchInput.toPlainText() - if (input==""): - table=data.selectall() - else: - table=data.searchByNum(input) - self.loadData(table) - - def dateMode(self): - table=[] - - year=int(datetime.today().strftime('%Y')) - month=int(datetime.today().strftime('%m')) - day=int(datetime.today().strftime('%d')) - self.dateEdit.setDateTime(QtCore.QDateTime(QtCore.QDate(year, month, day), QtCore.QTime(0, 0, 0))) - self.dateEdit.show() - self.tanggal.show() - self.dateButton.hide() - - fulldate=datetime.today().strftime('%Y/%m/%d') - table=data.searchByDate(fulldate) - self.loadData(table) - self.dateEdit.dateChanged.connect(self.onDateChanged) - - def onDateChanged(self): - table=[] - fulldate=str(self.dateEdit.date().toPyDate()) - table=data.searchByDate(fulldate) - self.loadData(table) - - - -# import test_rc - -# def createEngine(user, password, host, port, db_name) : -# name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name -# return (db.create_engine(name_engine)) - -# def data.searchByNum(number): -# query=db.select([rt]).where(rt.columns.NomorTransaksi == number) -# ResultProxy = connection.execute(query) -# ResultSet = ResultProxy.fetchall() -# return ResultSet - -# def data.selectall(): -# query=db.select([rt]) -# ResultProxy = connection.execute(query) -# ResultSet = ResultProxy.fetchall() -# return ResultSet - -# def data.searchByDate(date): -# query=db.select([rt]).where(func.DATE(rt.columns.WaktuPembayaran) == date) -# ResultProxy = connection.execute(query) -# ResultSet = ResultProxy.fetchall() -# return ResultSet - -if __name__ == "__main__": - import sys - - # database setup - # password=input("masukkan password: ") - # engine = createEngine('root',password,'localhost','3306','sansK') - # connection = engine.connect() - # metadata = db.MetaData() - # rt = db.Table ('riwayattransaksi', metadata, autoload=True, autoload_with=engine) - - # ui setup - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = RiwayatTransaksi() - ui.setupUi(MainWindow) - - # inisialisasi table - fulltable=data.selectall() - ui.loadData(fulltable) - - MainWindow.show() - sys.exit(app.exec_()) diff --git a/SansK.exe b/SansK.exe deleted file mode 100644 index 2cc3c9409960ec8577f5139bd6e3a657c85ab17d..0000000000000000000000000000000000000000 Binary files a/SansK.exe and /dev/null differ diff --git a/SansK.py b/SansK.py deleted file mode 100644 index bfa2563c205e4f2bffbe163d285444c2495b47f6..0000000000000000000000000000000000000000 --- a/SansK.py +++ /dev/null @@ -1,271 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file 'Menus.ui' -# -# Created by: PyQt5 UI code generator 5.13.0 -# -# WARNING! All changes made in this file will be lost! - -import PyInstaller.utils.hooks - -from PyQt5 import QtCore, QtGui, QtWidgets -from Keanggotaan_UI import Keanggotaan -from pemesanan_ui_fix import Pemesanan -from RiwayatTransaksi_display import RiwayatTransaksi -from pembayaran_display_oo import Pembayaran -import RiwayatTransaksi as rt - -class Ui_MainWindow(object): - - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1237, 860) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.stackedWidget_2 = QtWidgets.QStackedWidget(self.centralwidget) - self.stackedWidget_2.setObjectName("stackedWidget_2") - self.page_Menu = QtWidgets.QWidget() - self.page_Menu.setObjectName("page_Menu") - self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.page_Menu) - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.vlayout_Menu_2 = QtWidgets.QVBoxLayout() - self.vlayout_Menu_2.setObjectName("vlayout_Menu_2") - self.horizontalLayout_7 = QtWidgets.QHBoxLayout() - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - self.label_15 = QtWidgets.QLabel(self.page_Menu) - self.label_15.setEnabled(True) - self.label_15.setMaximumSize(QtCore.QSize(500, 460)) - self.label_15.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_15.setStyleSheet("") - self.label_15.setText("") - self.label_15.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_15.setScaledContents(True) - self.label_15.setObjectName("label_15") - self.horizontalLayout_7.addWidget(self.label_15) - self.vlayout_Menu_2.addLayout(self.horizontalLayout_7) - self.label_Anggota_4 = QtWidgets.QLabel(self.page_Menu) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(20) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_4.setFont(font) - self.label_Anggota_4.setStyleSheet("color:rgb(101, 200, 222);") - self.label_Anggota_4.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_4.setObjectName("label_Anggota_4") - self.vlayout_Menu_2.addWidget(self.label_Anggota_4) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu_2.addItem(spacerItem) - self.button_anggota = QtWidgets.QPushButton(self.page_Menu) - self.button_anggota.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_anggota.setFont(font) - self.button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_anggota.setObjectName("button_anggota") - self.vlayout_Menu_2.addWidget(self.button_anggota) - self.button_pemesana = QtWidgets.QPushButton(self.page_Menu) - self.button_pemesana.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pemesana.setFont(font) - self.button_pemesana.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_pemesana.setObjectName("button_pemesana") - self.vlayout_Menu_2.addWidget(self.button_pemesana) - self.button_pembayaran = QtWidgets.QPushButton(self.page_Menu) - self.button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pembayaran.setFont(font) - self.button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_pembayaran.setObjectName("button_pembayaran") - self.vlayout_Menu_2.addWidget(self.button_pembayaran) - spacerItem1 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu_2.addItem(spacerItem1) - self.horizontalLayout_3.addLayout(self.vlayout_Menu_2) - self.stackedWidget_2.addWidget(self.page_Menu) - self.page_MAsuk = QtWidgets.QWidget() - self.page_MAsuk.setObjectName("page_MAsuk") - self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.page_MAsuk) - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - self.vlayout_Menu = QtWidgets.QVBoxLayout() - self.vlayout_Menu.setObjectName("vlayout_Menu") - self.horizontalLayout_6 = QtWidgets.QHBoxLayout() - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - self.label_13 = QtWidgets.QLabel(self.page_MAsuk) - self.label_13.setEnabled(True) - self.label_13.setMaximumSize(QtCore.QSize(500, 460)) - self.label_13.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_13.setStyleSheet("") - self.label_13.setText("") - self.label_13.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_13.setScaledContents(True) - self.label_13.setObjectName("label_13") - self.horizontalLayout_6.addWidget(self.label_13) - self.vlayout_Menu.addLayout(self.horizontalLayout_6) - self.label_Anggota_3 = QtWidgets.QLabel(self.page_MAsuk) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(20) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_3.setFont(font) - self.label_Anggota_3.setStyleSheet("color:rgb(101, 200, 222);") - self.label_Anggota_3.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_3.setObjectName("label_Anggota_3") - self.vlayout_Menu.addWidget(self.label_Anggota_3) - spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem2) - self.button_MKasir = QtWidgets.QPushButton(self.page_MAsuk) - self.button_MKasir.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_MKasir.setFont(font) - self.button_MKasir.setStyleSheet("color: rgb(254, 254, 254);\n" - "background-color: rgb(233, 147, 132)\n" - "") - self.button_MKasir.setObjectName("button_MKasir") - self.vlayout_Menu.addWidget(self.button_MKasir) - self.button_MManajer = QtWidgets.QPushButton(self.page_MAsuk) - self.button_MManajer.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_MManajer.setFont(font) - self.button_MManajer.setStyleSheet("color: rgb(254, 254, 254);\n" - "background-color: rgb(233, 147, 132)\n" - "") - self.button_MManajer.setObjectName("button_MManajer") - self.vlayout_Menu.addWidget(self.button_MManajer) - spacerItem3 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu.addItem(spacerItem3) - self.horizontalLayout_2.addLayout(self.vlayout_Menu) - self.stackedWidget_2.addWidget(self.page_MAsuk) - self.horizontalLayout.addWidget(self.stackedWidget_2) - MainWindow.setCentralWidget(self.centralwidget) - - #Sambungkan antar window - - # riwayat transaksi - self.windowRT = QtWidgets.QMainWindow() - self.uiRT = RiwayatTransaksi() - self.uiRT .setupUi (self.windowRT) - # pemesanan - self.windowPesan = QtWidgets.QMainWindow() - self.uiPesan = Pemesanan() - self.uiPesan.setupUi (self.windowPesan) - #keanggotaan - self.windowAnggota = QtWidgets.QMainWindow() - self.uiAnggota = Keanggotaan() - self.uiAnggota.setupUi (self.windowAnggota) - #pembayaran - self.windowBayar = QtWidgets.QMainWindow() - self.uiBayar = Pembayaran() - self.uiBayar.setupUi(self.windowBayar) - - self.windowRT.hide() - self.windowPesan.hide() - self.windowAnggota.hide() - self.windowBayar.hide() - - MainWindow.show() - self.stackedWidget_2.setCurrentIndex(1) - - self.retranslateUi(MainWindow) - - #Event handler button MainWindow - self.button_anggota.clicked.connect(self.Show_Keanggotaan) - self.button_pemesana.clicked.connect(self.Show_Pemesanan) - self.button_MManajer.clicked.connect(self.Show_RiwayatTransaksi) - self.button_MKasir.clicked.connect(self.Show_Menu) - self.button_pembayaran.clicked.connect(self.Show_Pembayaran) - - #Event handler buttom keanggotaan - self.uiAnggota.button_pemesana.clicked.connect(self.Show_Pemesanan) - self.uiAnggota.button_kkeluar.clicked.connect(self.Show_Masuk) - self.uiAnggota.button_pembayaran.clicked.connect(self.Show_Pembayaran) - - #Event handler button pesanan - self.uiPesan.button_anggota.clicked.connect(self.Show_Keanggotaan) - self.uiPesan.button_kkeluar.clicked.connect(self.Show_Masuk) - self.uiPesan.button_pembayaran.clicked.connect(self.Show_Pembayaran) - - #Event handler button pembayaran - self.uiBayar.button_anggota.clicked.connect(self.Show_Keanggotaan) - self.uiBayar.button_pemesana.clicked.connect(self.Show_Pemesanan) - self.uiBayar.button_kkeluar.clicked.connect(self.Show_Masuk) - - #event handler button RT - self.uiRT.button_keluar.clicked.connect(self.Show_Masuk) - - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def Show_Keanggotaan(self): - MainWindow.hide() - self.windowPesan.hide() - self.windowBayar.hide() - self.windowAnggota.show() - - def Show_Pemesanan(self): - MainWindow.hide() - self.windowPesan.show() - self.windowAnggota.hide() - self.windowBayar.hide() - - def Show_RiwayatTransaksi(self): - MainWindow.hide() - fulltable=rt.selectall() - self.uiRT.loadData(fulltable) - self.windowRT.show() - - def Show_Pembayaran(self): - MainWindow.hide() - self.windowAnggota.hide() - self.windowPesan.hide() - self.windowBayar.show() - - def Show_Masuk(self): - MainWindow.show() - self.stackedWidget_2.setCurrentIndex(1) - self.windowAnggota.hide() - self.windowPesan.hide() - self.windowBayar.hide() - self.windowRT.hide() - self.windowBayar.hide() - - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) - self.label_Anggota_4.setText(_translate("MainWindow", "Menu")) - self.button_anggota.setText(_translate("MainWindow", "Anggota")) - self.button_pemesana.setText(_translate("MainWindow", "Pemesanan")) - self.button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) - self.label_Anggota_3.setText(_translate("MainWindow", "Masuk")) - self.button_MKasir.setText(_translate("MainWindow", "Kasir")) - self.button_MManajer.setText(_translate("MainWindow", "Manajer")) - - def Show_Menu(self): - self.stackedWidget_2.setCurrentIndex(0) - - -if __name__ == "__main__": - import sys - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Ui_MainWindow() - ui.setupUi(MainWindow) - MainWindow.show() - sys.exit(app.exec_()) diff --git a/docs/contoh.py b/docs/contoh.py deleted file mode 100644 index 9fe6fb4aa05acf3e5a530c6a1ab0282ac93d9f99..0000000000000000000000000000000000000000 --- a/docs/contoh.py +++ /dev/null @@ -1,540 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file 'Keanggotaan.ui' -# -# Created by: PyQt5 UI code generator 5.13.0 -# -# WARNING! All changes made in this file will be lost! - - -from PyQt5 import QtCore, QtGui, QtWidgets - - -class Ui_MainWindow(object): - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1014, 846) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n" -"\n" -"") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.vlayout_Menu = QtWidgets.QVBoxLayout() - self.vlayout_Menu.setObjectName("vlayout_Menu") - self.label_4 = QtWidgets.QLabel(self.centralwidget) - self.label_4.setEnabled(True) - self.label_4.setMaximumSize(QtCore.QSize(500, 460)) - self.label_4.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_4.setStyleSheet("") - self.label_4.setText("") - self.label_4.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_4.setScaledContents(True) - self.label_4.setObjectName("label_4") - self.vlayout_Menu.addWidget(self.label_4) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - self.vlayout_Menu.addItem(spacerItem) - spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem1) - self.button_pemesana = QtWidgets.QPushButton(self.centralwidget) - self.button_pemesana.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pemesana.setFont(font) - self.button_pemesana.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") - self.button_pemesana.setObjectName("button_pemesana") - self.vlayout_Menu.addWidget(self.button_pemesana) - self.button_pembayaran = QtWidgets.QPushButton(self.centralwidget) - self.button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pembayaran.setFont(font) - self.button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") - self.button_pembayaran.setObjectName("button_pembayaran") - self.vlayout_Menu.addWidget(self.button_pembayaran) - self.button_anggota = QtWidgets.QPushButton(self.centralwidget) - self.button_anggota.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_anggota.setFont(font) - self.button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") - self.button_anggota.setObjectName("button_anggota") - self.vlayout_Menu.addWidget(self.button_anggota) - spacerItem2 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu.addItem(spacerItem2) - self.button_kkeluar = QtWidgets.QPushButton(self.centralwidget) - self.button_kkeluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_kkeluar.setMaximumSize(QtCore.QSize(100, 16777215)) - font = QtGui.QFont() - font.setFamily("Microsoft New Tai Lue") - font.setPointSize(10) - self.button_kkeluar.setFont(font) - self.button_kkeluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" -"color:rgb(255, 220, 179);") - self.button_kkeluar.setObjectName("button_kkeluar") - self.vlayout_Menu.addWidget(self.button_kkeluar) - spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem3) - self.horizontalLayout.addLayout(self.vlayout_Menu) - spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem4) - self.line = QtWidgets.QFrame(self.centralwidget) - self.line.setFrameShape(QtWidgets.QFrame.VLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.horizontalLayout.addWidget(self.line) - spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem5) - self.stackedWidget = QtWidgets.QStackedWidget(self.centralwidget) - self.stackedWidget.setObjectName("stackedWidget") - self.page_CariAnggota = QtWidgets.QWidget() - self.page_CariAnggota.setObjectName("page_CariAnggota") - self.verticalLayout = QtWidgets.QVBoxLayout(self.page_CariAnggota) - self.verticalLayout.setObjectName("verticalLayout") - self.vlayout_Anggota = QtWidgets.QVBoxLayout() - self.vlayout_Anggota.setObjectName("vlayout_Anggota") - spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota.addItem(spacerItem6) - self.label_Anggota = QtWidgets.QLabel(self.page_CariAnggota) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota.setFont(font) - self.label_Anggota.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota.setObjectName("label_Anggota") - self.vlayout_Anggota.addWidget(self.label_Anggota) - spacerItem7 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota.addItem(spacerItem7) - self.tab_Cari = QtWidgets.QTabWidget(self.page_CariAnggota) - self.tab_Cari.setStyleSheet("background-color: rgb(245, 191, 192);\n" -"selection-background-color: rgb(170, 170, 255);") - self.tab_Cari.setObjectName("tab_Cari") - self.tab_IDA = QtWidgets.QWidget() - self.tab_IDA.setStyleSheet("background-color: rgb(245, 191, 192);") - self.tab_IDA.setObjectName("tab_IDA") - self.horizontalLayout_5 = QtWidgets.QHBoxLayout(self.tab_IDA) - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.groupBox_2 = QtWidgets.QGroupBox(self.tab_IDA) - self.groupBox_2.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox_2.setTitle("") - self.groupBox_2.setObjectName("groupBox_2") - self.gridLayout_3 = QtWidgets.QGridLayout(self.groupBox_2) - self.gridLayout_3.setObjectName("gridLayout_3") - spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_3.addItem(spacerItem8, 4, 0, 1, 1) - self.texteditor_IDc = QtWidgets.QLineEdit(self.groupBox_2) - self.texteditor_IDc.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") - self.texteditor_IDc.setObjectName("texteditor_IDc") - self.gridLayout_3.addWidget(self.texteditor_IDc, 2, 0, 1, 1) - self.horizontalLayout_6 = QtWidgets.QHBoxLayout() - self.horizontalLayout_6.setObjectName("horizontalLayout_6") - spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_6.addItem(spacerItem9) - self.button_cariID = QtWidgets.QPushButton(self.groupBox_2) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.button_cariID.setFont(font) - self.button_cariID.setStyleSheet("background-color: rgb(245, 191, 192);color:rgb(180, 155, 151)") - self.button_cariID.setObjectName("button_cariID") - self.horizontalLayout_6.addWidget(self.button_cariID) - self.gridLayout_3.addLayout(self.horizontalLayout_6, 3, 0, 1, 1) - self.label_7 = QtWidgets.QLabel(self.groupBox_2) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_7.setFont(font) - self.label_7.setStyleSheet("color:rgb(255, 201, 162);") - self.label_7.setObjectName("label_7") - self.gridLayout_3.addWidget(self.label_7, 1, 0, 1, 1) - spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_3.addItem(spacerItem10, 0, 0, 1, 1) - self.horizontalLayout_5.addWidget(self.groupBox_2) - self.tab_Cari.addTab(self.tab_IDA, "") - self.tab_Nama = QtWidgets.QWidget() - self.tab_Nama.setObjectName("tab_Nama") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.tab_Nama) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.groupBox = QtWidgets.QGroupBox(self.tab_Nama) - self.groupBox.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox.setTitle("") - self.groupBox.setObjectName("groupBox") - self.gridLayout_2 = QtWidgets.QGridLayout(self.groupBox) - self.gridLayout_2.setObjectName("gridLayout_2") - spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_2.addItem(spacerItem11, 6, 0, 1, 1) - self.texteditor_namaC = QtWidgets.QLineEdit(self.groupBox) - self.texteditor_namaC.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") - self.texteditor_namaC.setObjectName("texteditor_namaC") - self.gridLayout_2.addWidget(self.texteditor_namaC, 2, 0, 1, 1) - self.horizontalLayout_3 = QtWidgets.QHBoxLayout() - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_3.addItem(spacerItem12) - self.button_CariN = QtWidgets.QPushButton(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.button_CariN.setFont(font) - self.button_CariN.setStyleSheet("background-color: rgb(245, 191, 192);color:rgb(180, 155, 151)") - self.button_CariN.setObjectName("button_CariN") - self.horizontalLayout_3.addWidget(self.button_CariN) - self.gridLayout_2.addLayout(self.horizontalLayout_3, 5, 0, 1, 1) - self.label_3 = QtWidgets.QLabel(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_3.setFont(font) - self.label_3.setStyleSheet("color:rgb(255, 201, 162)") - self.label_3.setObjectName("label_3") - self.gridLayout_2.addWidget(self.label_3, 3, 0, 1, 1) - self.label_5 = QtWidgets.QLabel(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_5.setFont(font) - self.label_5.setStyleSheet("color:rgb(255, 201, 162);") - self.label_5.setObjectName("label_5") - self.gridLayout_2.addWidget(self.label_5, 1, 0, 1, 1) - self.text_editor_noidenC = QtWidgets.QLineEdit(self.groupBox) - self.text_editor_noidenC.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") - self.text_editor_noidenC.setObjectName("text_editor_noidenC") - self.gridLayout_2.addWidget(self.text_editor_noidenC, 4, 0, 1, 1) - spacerItem13 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_2.addItem(spacerItem13, 0, 0, 1, 1) - self.horizontalLayout_4.addWidget(self.groupBox) - self.tab_Cari.addTab(self.tab_Nama, "") - self.vlayout_Anggota.addWidget(self.tab_Cari) - spacerItem14 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota.addItem(spacerItem14) - self.verticalLayout.addLayout(self.vlayout_Anggota) - self.stackedWidget.addWidget(self.page_CariAnggota) - self.page_MenuA = QtWidgets.QWidget() - self.page_MenuA.setObjectName("page_MenuA") - self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.page_MenuA) - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.vlayout_Anggota_3 = QtWidgets.QVBoxLayout() - self.vlayout_Anggota_3.setObjectName("vlayout_Anggota_3") - spacerItem15 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_3.addItem(spacerItem15) - self.label_Anggota_3 = QtWidgets.QLabel(self.page_MenuA) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_3.setFont(font) - self.label_Anggota_3.setStyleSheet("color:rgb(101, 200, 222);") - self.label_Anggota_3.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_3.setObjectName("label_Anggota_3") - self.vlayout_Anggota_3.addWidget(self.label_Anggota_3) - spacerItem16 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_3.addItem(spacerItem16) - self.horizontalLayout_8 = QtWidgets.QHBoxLayout() - self.horizontalLayout_8.setObjectName("horizontalLayout_8") - self.button_CariA = QtWidgets.QPushButton(self.page_MenuA) - self.button_CariA.setMinimumSize(QtCore.QSize(200, 500)) - font = QtGui.QFont() - font.setFamily("Palatino Linotype") - font.setPointSize(16) - font.setBold(True) - font.setWeight(75) - self.button_CariA.setFont(font) - self.button_CariA.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) - self.button_CariA.setStyleSheet("color: rgb(254, 254, 254);\n" -"background-color: rgb(233, 147, 132)\n" -"") - self.button_CariA.setObjectName("button_CariA") - self.horizontalLayout_8.addWidget(self.button_CariA) - self.button_TambahA = QtWidgets.QPushButton(self.page_MenuA) - self.button_TambahA.setMinimumSize(QtCore.QSize(200, 500)) - font = QtGui.QFont() - font.setFamily("Palatino Linotype") - font.setPointSize(16) - font.setBold(True) - font.setWeight(75) - self.button_TambahA.setFont(font) - self.button_TambahA.setCursor(QtGui.QCursor(QtCore.Qt.PointingHandCursor)) - self.button_TambahA.setStyleSheet("color: rgb(254, 254, 254);\n" -"background-color: rgb(233, 147, 132)\n" -"") - self.button_TambahA.setObjectName("button_TambahA") - self.horizontalLayout_8.addWidget(self.button_TambahA) - self.button_PerpanjangD = QtWidgets.QPushButton(self.page_MenuA) - self.button_PerpanjangD.setEnabled(False) - self.button_PerpanjangD.setMinimumSize(QtCore.QSize(200, 500)) - font = QtGui.QFont() - font.setFamily("Palatino Linotype") - font.setPointSize(16) - font.setBold(True) - font.setWeight(75) - self.button_PerpanjangD.setFont(font) - self.button_PerpanjangD.setStyleSheet("color: rgb(213, 213, 213);\n" -"background-color:rgb(222, 135, 124);\n" -"") - self.button_PerpanjangD.setObjectName("button_PerpanjangD") - self.horizontalLayout_8.addWidget(self.button_PerpanjangD) - self.vlayout_Anggota_3.addLayout(self.horizontalLayout_8) - spacerItem17 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - self.vlayout_Anggota_3.addItem(spacerItem17) - self.verticalLayout_4.addLayout(self.vlayout_Anggota_3) - self.stackedWidget.addWidget(self.page_MenuA) - self.page_tambahA = QtWidgets.QWidget() - self.page_tambahA.setObjectName("page_tambahA") - self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.page_tambahA) - self.verticalLayout_3.setObjectName("verticalLayout_3") - self.vlayout_Anggota_2 = QtWidgets.QVBoxLayout() - self.vlayout_Anggota_2.setObjectName("vlayout_Anggota_2") - spacerItem18 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_2.addItem(spacerItem18) - self.label_Anggota_2 = QtWidgets.QLabel(self.page_tambahA) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_2.setFont(font) - self.label_Anggota_2.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota_2.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_2.setObjectName("label_Anggota_2") - self.vlayout_Anggota_2.addWidget(self.label_Anggota_2) - spacerItem19 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_2.addItem(spacerItem19) - self.verticalLayout_2 = QtWidgets.QVBoxLayout() - self.verticalLayout_2.setObjectName("verticalLayout_2") - self.groupBox_3 = QtWidgets.QGroupBox(self.page_tambahA) - self.groupBox_3.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox_3.setTitle("") - self.groupBox_3.setObjectName("groupBox_3") - self.gridLayout_4 = QtWidgets.QGridLayout(self.groupBox_3) - self.gridLayout_4.setObjectName("gridLayout_4") - spacerItem20 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_4.addItem(spacerItem20, 6, 0, 1, 1) - self.label_6 = QtWidgets.QLabel(self.groupBox_3) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_6.setFont(font) - self.label_6.setStyleSheet("color:rgb(255, 201, 162);") - self.label_6.setObjectName("label_6") - self.gridLayout_4.addWidget(self.label_6, 1, 0, 1, 1) - spacerItem21 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_4.addItem(spacerItem21, 0, 0, 1, 1) - self.texteditor_namaTambah = QtWidgets.QLineEdit(self.groupBox_3) - self.texteditor_namaTambah.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") - self.texteditor_namaTambah.setObjectName("texteditor_namaTambah") - self.gridLayout_4.addWidget(self.texteditor_namaTambah, 2, 0, 1, 1) - self.text_editor_noidenTambah = QtWidgets.QLineEdit(self.groupBox_3) - self.text_editor_noidenTambah.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") - self.text_editor_noidenTambah.setObjectName("text_editor_noidenTambah") - self.gridLayout_4.addWidget(self.text_editor_noidenTambah, 4, 0, 1, 1) - self.label_8 = QtWidgets.QLabel(self.groupBox_3) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_8.setFont(font) - self.label_8.setStyleSheet("color:rgb(255, 201, 162)") - self.label_8.setObjectName("label_8") - self.gridLayout_4.addWidget(self.label_8, 3, 0, 1, 1) - self.horizontalLayout_7 = QtWidgets.QHBoxLayout() - self.horizontalLayout_7.setObjectName("horizontalLayout_7") - spacerItem22 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_7.addItem(spacerItem22) - self.button_tambahData_2 = QtWidgets.QPushButton(self.groupBox_3) - font = QtGui.QFont() - font.setPointSize(9) - self.button_tambahData_2.setFont(font) - self.button_tambahData_2.setStyleSheet("background-color: rgb(233, 175, 127);\n" -"color: rgb(255, 255, 255);") - self.button_tambahData_2.setObjectName("button_tambahData_2") - self.horizontalLayout_7.addWidget(self.button_tambahData_2) - self.gridLayout_4.addLayout(self.horizontalLayout_7, 5, 0, 1, 1) - self.verticalLayout_2.addWidget(self.groupBox_3) - self.vlayout_Anggota_2.addLayout(self.verticalLayout_2) - spacerItem23 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_2.addItem(spacerItem23) - self.verticalLayout_3.addLayout(self.vlayout_Anggota_2) - self.stackedWidget.addWidget(self.page_tambahA) - self.page_HasilData = QtWidgets.QWidget() - self.page_HasilData.setObjectName("page_HasilData") - self.verticalLayout_6 = QtWidgets.QVBoxLayout(self.page_HasilData) - self.verticalLayout_6.setObjectName("verticalLayout_6") - self.vlayout_Anggota_4 = QtWidgets.QVBoxLayout() - self.vlayout_Anggota_4.setObjectName("vlayout_Anggota_4") - spacerItem24 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_4.addItem(spacerItem24) - self.label_Anggota_4 = QtWidgets.QLabel(self.page_HasilData) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_4.setFont(font) - self.label_Anggota_4.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota_4.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_4.setObjectName("label_Anggota_4") - self.vlayout_Anggota_4.addWidget(self.label_Anggota_4) - spacerItem25 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_4.addItem(spacerItem25) - self.verticalLayout_5 = QtWidgets.QVBoxLayout() - self.verticalLayout_5.setObjectName("verticalLayout_5") - self.groupBox_4 = QtWidgets.QGroupBox(self.page_HasilData) - self.groupBox_4.setStyleSheet("background-color: rgb(250, 202, 147);") - self.groupBox_4.setTitle("") - self.groupBox_4.setObjectName("groupBox_4") - self.gridLayout_5 = QtWidgets.QGridLayout(self.groupBox_4) - self.gridLayout_5.setObjectName("gridLayout_5") - self.FileNameLayout = QtWidgets.QHBoxLayout() - self.FileNameLayout.setObjectName("FileNameLayout") - self.label_9 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_9.setFont(font) - self.label_9.setStyleSheet("color:rgb(154, 108, 141);") - self.label_9.setObjectName("label_9") - self.FileNameLayout.addWidget(self.label_9) - self.text_hasilnama = QtWidgets.QLineEdit(self.groupBox_4) - self.text_hasilnama.setStyleSheet("color:rgb(255, 201, 162);\n" -"background-color: rgb(154, 108, 141)") - self.text_hasilnama.setObjectName("text_hasilnama") - self.FileNameLayout.addWidget(self.text_hasilnama) - self.gridLayout_5.addLayout(self.FileNameLayout, 4, 0, 1, 1) - spacerItem26 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_5.addItem(spacerItem26, 2, 0, 1, 1) - spacerItem27 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout_5.addItem(spacerItem27, 14, 0, 1, 1) - self.FileNameLayout_4 = QtWidgets.QHBoxLayout() - self.FileNameLayout_4.setObjectName("FileNameLayout_4") - self.label_12 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_12.setFont(font) - self.label_12.setStyleSheet("color:rgb(154, 108, 141);") - self.label_12.setObjectName("label_12") - self.FileNameLayout_4.addWidget(self.label_12) - self.text_hasilIDA = QtWidgets.QLineEdit(self.groupBox_4) - self.text_hasilIDA.setStyleSheet("color:rgb(255, 201, 162);\n" -"background-color: rgb(154, 108, 141)") - self.text_hasilIDA.setObjectName("text_hasilIDA") - self.FileNameLayout_4.addWidget(self.text_hasilIDA) - self.gridLayout_5.addLayout(self.FileNameLayout_4, 3, 0, 1, 1) - self.FileNameLayout_2 = QtWidgets.QHBoxLayout() - self.FileNameLayout_2.setObjectName("FileNameLayout_2") - self.label_10 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_10.setFont(font) - self.label_10.setStyleSheet("color:rgb(154, 108, 141);") - self.label_10.setObjectName("label_10") - self.FileNameLayout_2.addWidget(self.label_10) - self.text_hasilnoIden = QtWidgets.QLineEdit(self.groupBox_4) - self.text_hasilnoIden.setStyleSheet("color:rgb(255, 201, 162);\n" -"background-color: rgb(154, 108, 141)") - self.text_hasilnoIden.setObjectName("text_hasilnoIden") - self.FileNameLayout_2.addWidget(self.text_hasilnoIden) - self.gridLayout_5.addLayout(self.FileNameLayout_2, 12, 0, 1, 1) - self.horizontalLayout_9 = QtWidgets.QHBoxLayout() - self.horizontalLayout_9.setObjectName("horizontalLayout_9") - spacerItem28 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_9.addItem(spacerItem28) - self.button_kembali = QtWidgets.QPushButton(self.groupBox_4) - font = QtGui.QFont() - font.setPointSize(9) - self.button_kembali.setFont(font) - self.button_kembali.setStyleSheet("background-color: rgb(59, 176, 176);\n" -"color: rgb(255, 255, 255);") - self.button_kembali.setObjectName("button_kembali") - self.horizontalLayout_9.addWidget(self.button_kembali) - self.gridLayout_5.addLayout(self.horizontalLayout_9, 15, 0, 1, 1) - self.FileNameLayout_3 = QtWidgets.QHBoxLayout() - self.FileNameLayout_3.setObjectName("FileNameLayout_3") - self.label_11 = QtWidgets.QLabel(self.groupBox_4) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_11.setFont(font) - self.label_11.setStyleSheet("color:rgb(154, 108, 141);") - self.label_11.setObjectName("label_11") - self.FileNameLayout_3.addWidget(self.label_11) - self.text_hasiltanggal = QtWidgets.QLineEdit(self.groupBox_4) - self.text_hasiltanggal.setStyleSheet("color:rgb(255, 201, 162);\n" -"background-color: rgb(154, 108, 141)") - self.text_hasiltanggal.setObjectName("text_hasiltanggal") - self.FileNameLayout_3.addWidget(self.text_hasiltanggal) - self.gridLayout_5.addLayout(self.FileNameLayout_3, 13, 0, 1, 1) - self.verticalLayout_5.addWidget(self.groupBox_4) - self.vlayout_Anggota_4.addLayout(self.verticalLayout_5) - spacerItem29 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Anggota_4.addItem(spacerItem29) - self.verticalLayout_6.addLayout(self.vlayout_Anggota_4) - self.stackedWidget.addWidget(self.page_HasilData) - self.horizontalLayout.addWidget(self.stackedWidget) - MainWindow.setCentralWidget(self.centralwidget) - - self.retranslateUi(MainWindow) - self.stackedWidget.setCurrentIndex(1) - self.tab_Cari.setCurrentIndex(1) - self.button_CariA.clicked.connect(self.stackedWidget.close) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) - self.button_pemesana.setText(_translate("MainWindow", "Pemesanan")) - self.button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) - self.button_anggota.setText(_translate("MainWindow", "Anggota")) - self.button_kkeluar.setText(_translate("MainWindow", "Keluar")) - self.label_Anggota.setText(_translate("MainWindow", "Cari Anggota")) - self.button_cariID.setText(_translate("MainWindow", "Cari")) - self.label_7.setText(_translate("MainWindow", "ID Anggota")) - self.tab_Cari.setTabText(self.tab_Cari.indexOf(self.tab_IDA), _translate("MainWindow", "Berdasarkan IDAnggota")) - self.button_CariN.setText(_translate("MainWindow", "Cari")) - self.label_3.setText(_translate("MainWindow", "Nomor Identitas")) - self.label_5.setText(_translate("MainWindow", "Nama")) - self.tab_Cari.setTabText(self.tab_Cari.indexOf(self.tab_Nama), _translate("MainWindow", "Berdasarkan Nama")) - self.label_Anggota_3.setText(_translate("MainWindow", "Anggota")) - self.button_CariA.setText(_translate("MainWindow", "Cari Anggota")) - self.button_TambahA.setText(_translate("MainWindow", "Tambah Anggota")) - self.button_PerpanjangD.setText(_translate("MainWindow", "Perpanjang Anggota")) - self.label_Anggota_2.setText(_translate("MainWindow", "Tambah Anggota")) - self.label_6.setText(_translate("MainWindow", "Nama")) - self.label_8.setText(_translate("MainWindow", "Nomor Identitas")) - self.button_tambahData_2.setText(_translate("MainWindow", "Tambah")) - self.label_Anggota_4.setText(_translate("MainWindow", "Data Anggota")) - self.label_9.setText(_translate("MainWindow", "Nama")) - self.label_12.setText(_translate("MainWindow", "ID Anggota")) - self.label_10.setText(_translate("MainWindow", "Nomor Identitas")) - self.button_kembali.setText(_translate("MainWindow", "Kembali")) - self.label_11.setText(_translate("MainWindow", "Tanggal Aktif")) - - -if __name__ == "__main__": - import sys - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Ui_MainWindow() - ui.setupUi(MainWindow) - MainWindow.show() - sys.exit(app.exec_()) diff --git a/docs/contoh.txt b/docs/contoh.txt deleted file mode 100644 index fed2d7ed922c574b885084d5c3649780fd4d206b..0000000000000000000000000000000000000000 --- a/docs/contoh.txt +++ /dev/null @@ -1,20 +0,0 @@ -def createEngine(user, password, host, port, db_name) : - name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name - print("Connecting") - return (db.create_engine(name_engine)) - -engine = createEngine('root', password, 'localhost', '3306', 'RPL') -connection = engine.connect() -metadata = db.MetaData() -ruangan = db.Table('Ruangan', metadata, autoload=True, autoload_with=engine) - -ruangan itu nama table nyaa - -trus kalo mau masukin value ginii : -query = db.insert(ruangan).values(NomorRuangan = 2, Jenis = "VIP", Ukuran = "Small", Harga = 50000) - -trus kalo mau select dari table nya ginii : -query1 = db.select([ruangan]).where(ruangan.columns.NomorRuangan == 1) -result1 = connection.execute(query1) -result1set = result1.fetchall() -print(result1set[0]) #ini kalo mau ngeprint data nya diff --git a/docs/requirements.txt b/docs/requirements.txt deleted file mode 100644 index 9f2228adfbf180201e4f83006b813a5b30aa4eb3..0000000000000000000000000000000000000000 --- a/docs/requirements.txt +++ /dev/null @@ -1,2 +0,0 @@ -PyMySQL==0.9.3 -SQLAlchemy==1.3.15 diff --git a/docs/sansk.sql b/docs/sansk.sql deleted file mode 100644 index b30f10234b897ca3c1cd030843b9434bbc4090c2..0000000000000000000000000000000000000000 --- a/docs/sansk.sql +++ /dev/null @@ -1,116 +0,0 @@ --- MySQL dump 10.13 Distrib 8.0.19, for Win64 (x86_64) --- --- Host: localhost Database: sansk --- ------------------------------------------------------ --- Server version 8.0.19 - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!50503 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `daftarpemesanan` --- - -DROP TABLE IF EXISTS `daftarpemesanan`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `daftarpemesanan` ( - `NomorAntrian` int NOT NULL AUTO_INCREMENT, - `Nama` char(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, - `Durasi` int DEFAULT NULL, - `Tanggal` date DEFAULT NULL, - `Waktu` time DEFAULT NULL, - `NomorRuangan` int NOT NULL, - `StatusPemesanan` char(20) DEFAULT NULL, - `Harga` int DEFAULT NULL, - PRIMARY KEY (`NomorAntrian`), - KEY `NomorRuangan` (`NomorRuangan`), - CONSTRAINT `daftarpemesanan_ibfk_1` FOREIGN KEY (`NomorRuangan`) REFERENCES `daftarruangan` (`NomorRuangan`) -) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `daftarpemesanan` --- - -LOCK TABLES `daftarpemesanan` WRITE; -/*!40000 ALTER TABLE `daftarpemesanan` DISABLE KEYS */; -INSERT INTO `daftarpemesanan` VALUES (1,'Hasna',3,'2020-04-08','22:00:00',3,'melakukan pembayaran',30000); -/*!40000 ALTER TABLE `daftarpemesanan` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `daftarruangan` --- - -DROP TABLE IF EXISTS `daftarruangan`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `daftarruangan` ( - `NomorRuangan` int NOT NULL AUTO_INCREMENT, - `Jenis` char(6) NOT NULL, - `ukuran` char(6) NOT NULL, - `HargaPerJam` int NOT NULL, - PRIMARY KEY (`NomorRuangan`) -) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `daftarruangan` --- - -LOCK TABLES `daftarruangan` WRITE; -/*!40000 ALTER TABLE `daftarruangan` DISABLE KEYS */; -INSERT INTO `daftarruangan` VALUES (1,'VIP','Small',60000),(2,'VIP','Medium',60000),(3,'VIP','Medium',60000); -/*!40000 ALTER TABLE `daftarruangan` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `riwayattransaksi` --- - -DROP TABLE IF EXISTS `riwayattransaksi`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `riwayattransaksi` ( - `NomorTransaksi` int NOT NULL AUTO_INCREMENT, - `NomorAntrian` int NOT NULL, - `Nama` varchar(20) NOT NULL, - `Durasi` int NOT NULL, - `Tanggal` date NOT NULL, - `Waktu` time NOT NULL, - `NomorRuangan` int NOT NULL, - `Harga` int NOT NULL, - `WaktuPembayaran` datetime NOT NULL, - PRIMARY KEY (`NomorTransaksi`) -) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `riwayattransaksi` --- - -LOCK TABLES `riwayattransaksi` WRITE; -/*!40000 ALTER TABLE `riwayattransaksi` DISABLE KEYS */; -INSERT INTO `riwayattransaksi` VALUES (1,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-09 00:13:55'),(2,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:37:56'),(3,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:49:17'),(4,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:49:56'),(5,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:51:28'),(6,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:00:04'),(7,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:02:27'),(8,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:16:18'),(9,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:17:07'),(10,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:19:26'),(11,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:19:53'),(12,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:23:17'),(13,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:24:35'),(14,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:24:56'),(15,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:25:33'),(16,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:28:43'),(17,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:30:40'),(18,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:31:10'),(19,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:32:02'),(20,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:34:50'),(21,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:38:25'),(22,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:30:26'),(23,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:32:47'),(24,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:33:37'),(25,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:39:47'),(26,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:45:14'),(27,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:46:51'),(28,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:42:26'),(29,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:44:26'),(30,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:45:27'),(31,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:45:36'),(32,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:46:11'),(33,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:52:11'),(34,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:52:37'),(35,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:55:11'),(36,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 07:11:54'); -/*!40000 ALTER TABLE `riwayattransaksi` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2020-04-12 7:15:38 diff --git a/engine.py b/engine.py deleted file mode 100644 index 9ab40b1bf9db5de77221ae5d6116daa562aabee2..0000000000000000000000000000000000000000 --- a/engine.py +++ /dev/null @@ -1,16 +0,0 @@ -import sqlalchemy as db -import Keanggotaan as anggota -import pembayaran as bayar -import Pemesanan as pesan -import RiwayatTransaksi as transaksi - -user = input("Root : ") -db_name = input("database name : ") -password = input("password : ") -host = "localhost" -port = "3306" -name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name -engine = db.create_engine(name_engine) -connection = engine.connect() -metadata = db.MetaData() - diff --git a/engine_needed.py b/engine_needed.py deleted file mode 100644 index 8ad96d5536d231df448773196b91a81ab9abb40a..0000000000000000000000000000000000000000 --- a/engine_needed.py +++ /dev/null @@ -1,12 +0,0 @@ -import sqlalchemy as db - -user = input("Root : ") -password = input("password : ") -db_name = input("database name : ") -host = "localhost" -port = "3306" -name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name -engine = db.create_engine(name_engine) -metadata = db.MetaData() -connection = engine.connect() - diff --git a/gitlab-ci.yml b/gitlab-ci.yml deleted file mode 100644 index 70b783918b4a3163c7874b20db17e2ad6597d231..0000000000000000000000000000000000000000 --- a/gitlab-ci.yml +++ /dev/null @@ -1,22 +0,0 @@ -# This file is a template, and might need editing before it works on your project. -# Official language image. Look for the different tagged releases at: -# https://hub.docker.com/r/library/python/tags/ -image: "python:3.7" - -before_script: - - python --version - - pip install -r requirements.txt - -stages: - - Static Analysis - - Test - -pylint: - stage: Static Analysis - script: - - pylint -d C0301 src/*.py - -pytest: - stage: Test - script: - - cd test/;pytest -v \ No newline at end of file diff --git a/layoutpembayaran.ui b/layoutpembayaran.ui deleted file mode 100644 index 69626a1c9b83d2967952eda99dc27b97438054ef..0000000000000000000000000000000000000000 --- a/layoutpembayaran.ui +++ /dev/null @@ -1,957 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<ui version="4.0"> - <class>MainWindow</class> - <widget class="QMainWindow" name="MainWindow"> - <property name="geometry"> - <rect> - <x>0</x> - <y>0</y> - <width>1269</width> - <height>846</height> - </rect> - </property> - <property name="windowTitle"> - <string>SansK</string> - </property> - <property name="styleSheet"> - <string notr="true">background-color: rgb(237, 231, 226); - -</string> - </property> - <widget class="QWidget" name="centralwidget"> - <layout class="QHBoxLayout" name="horizontalLayout"> - <item> - <layout class="QVBoxLayout" name="vlayout_Menu"> - <item> - <widget class="QLabel" name="label_4"> - <property name="enabled"> - <bool>true</bool> - </property> - <property name="maximumSize"> - <size> - <width>500</width> - <height>460</height> - </size> - </property> - <property name="focusPolicy"> - <enum>Qt::WheelFocus</enum> - </property> - <property name="styleSheet"> - <string notr="true"/> - </property> - <property name="text"> - <string/> - </property> - <property name="pixmap"> - <pixmap>logo.jpg</pixmap> - </property> - <property name="scaledContents"> - <bool>true</bool> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_3"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <spacer name="verticalSpacer_6"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QPushButton" name="button_pemesana"> - <property name="minimumSize"> - <size> - <width>0</width> - <height>50</height> - </size> - </property> - <property name="font"> - <font> - <family>Constantia</family> - <pointsize>15</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color:rgb(135, 126, 93); -background-color: rgb(191, 215, 152);</string> - </property> - <property name="text"> - <string>Pemesanan</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="button_pembayaran"> - <property name="minimumSize"> - <size> - <width>0</width> - <height>50</height> - </size> - </property> - <property name="font"> - <font> - <family>Constantia</family> - <pointsize>15</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color:rgb(135, 126, 93); -background-color: rgb(191, 215, 152);</string> - </property> - <property name="text"> - <string>Pembayaran</string> - </property> - </widget> - </item> - <item> - <widget class="QPushButton" name="button_anggota"> - <property name="minimumSize"> - <size> - <width>0</width> - <height>50</height> - </size> - </property> - <property name="font"> - <font> - <family>Constantia</family> - <pointsize>15</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color:rgb(135, 126, 93); -background-color: rgb(191, 215, 152);</string> - </property> - <property name="text"> - <string>Anggota</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Minimum</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>0</width> - <height>100</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QPushButton" name="button_kkeluar"> - <property name="minimumSize"> - <size> - <width>0</width> - <height>50</height> - </size> - </property> - <property name="maximumSize"> - <size> - <width>100</width> - <height>16777215</height> - </size> - </property> - <property name="font"> - <font> - <family>Microsoft New Tai Lue</family> - <pointsize>10</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">background-color:rgb(135, 182, 166); -color:rgb(255, 220, 179);</string> - </property> - <property name="text"> - <string>Keluar</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_2"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - <item> - <spacer name="hspacer_layout"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="Line" name="line"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - </widget> - </item> - <item> - <spacer name="hspacer_layout2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <layout class="QVBoxLayout" name="verticalLayout_6"> - <item> - <widget class="QStackedWidget" name="mainstack"> - <property name="currentIndex"> - <number>1</number> - </property> - <widget class="QWidget" name="entry"> - <widget class="QWidget" name="layoutWidget"> - <property name="geometry"> - <rect> - <x>0</x> - <y>-7</y> - <width>611</width> - <height>901</height> - </rect> - </property> - <layout class="QVBoxLayout" name="vlayout_pembayaran"> - <item> - <spacer name="verticalSpacer_7"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_Anggota"> - <property name="font"> - <font> - <family>Constantia</family> - <pointsize>26</pointsize> - <weight>75</weight> - <bold>true</bold> - <stylestrategy>PreferDefault</stylestrategy> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color:rgb(91, 88, 66);</string> - </property> - <property name="text"> - <string>Pembayaran</string> - </property> - <property name="alignment"> - <set>Qt::AlignCenter</set> - </property> - </widget> - </item> - <item> - <layout class="QVBoxLayout" name="verticalLayout"> - <item> - <spacer name="verticalSpacer_5"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QGroupBox" name="groupBox"> - <property name="styleSheet"> - <string notr="true">background-color: rgb(135, 195, 190);</string> - </property> - <property name="title"> - <string/> - </property> - <layout class="QGridLayout" name="gridLayout"> - <item row="6" column="0"> - <spacer name="verticalSpacer_9"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item row="1" column="0"> - <widget class="QLineEdit" name="inputOrderId"> - <property name="styleSheet"> - <string notr="true">color:rgb(254, 209, 134); -background-color: rgb(230, 131, 116)</string> - </property> - </widget> - </item> - <item row="5" column="0"> - <layout class="QHBoxLayout" name="horizontalLayout_2"> - <item> - <spacer name="horizontalSpacer"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </item> - <item row="0" column="0"> - <widget class="QLabel" name="label_2"> - <property name="font"> - <font> - <family>Segoe MDL2 Assets</family> - <pointsize>10</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color: rgb(237, 231, 226);</string> - </property> - <property name="text"> - <string>Masukkan nomor antrian pemesanan:</string> - </property> - </widget> - </item> - <item row="2" column="0"> - <spacer name="verticalSpacer_8"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - </item> - </layout> - </item> - <item> - <spacer name="verticalSpacer_4"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QStackedWidget" name="stackedWidget"> - <property name="styleSheet"> - <string notr="true">background-color: rgb(135, 195, 190);</string> - </property> - <property name="currentIndex"> - <number>0</number> - </property> - <widget class="QWidget" name="orderfound"> - <widget class="QWidget" name="verticalLayoutWidget"> - <property name="geometry"> - <rect> - <x>80</x> - <y>20</y> - <width>160</width> - <height>51</height> - </rect> - </property> - <layout class="QVBoxLayout" name="verticalLayout_4"> - <item> - <widget class="QLabel" name="label"> - <property name="font"> - <font> - <family>Segoe MDL2 Assets</family> - <pointsize>11</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">background-color: rgb(255, 255, 255);</string> - </property> - <property name="text"> - <string>order_id</string> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_2"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - <widget class="QWidget" name="verticalLayoutWidget_2"> - <property name="geometry"> - <rect> - <x>290</x> - <y>20</y> - <width>271</width> - <height>51</height> - </rect> - </property> - <layout class="QVBoxLayout" name="verticalLayout_5"> - <item> - <widget class="QLabel" name="label_3"> - <property name="font"> - <font> - <family>Segoe MDL2 Assets</family> - <pointsize>11</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">background-color: rgb(255, 255, 255);</string> - </property> - <property name="text"> - <string>Nama pelanggan</string> - </property> - </widget> - </item> - <item> - <spacer name="horizontalSpacer_3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - <widget class="QWidget" name="horizontalLayoutWidget"> - <property name="geometry"> - <rect> - <x>100</x> - <y>80</y> - <width>451</width> - <height>31</height> - </rect> - </property> - <layout class="QHBoxLayout" name="horizontalLayout_4"> - <item> - <spacer name="horizontalSpacer_4"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QPushButton" name="buttonProses"> - <property name="font"> - <font> - <family>Segoe MDL2 Assets</family> - <pointsize>9</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">background-color: rgb(237, 231, 226); -color: rgb(135, 195, 190);</string> - </property> - <property name="text"> - <string>Bayar</string> - </property> - </widget> - </item> - </layout> - </widget> - </widget> - <widget class="QWidget" name="ordernotfound"> - <widget class="QLabel" name="label_5"> - <property name="geometry"> - <rect> - <x>120</x> - <y>40</y> - <width>341</width> - <height>51</height> - </rect> - </property> - <property name="font"> - <font> - <family>Segoe MDL2 Assets</family> - <pointsize>12</pointsize> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color: rgb(237, 231, 226);</string> - </property> - <property name="text"> - <string>Nomor antrian tidak ditemukan</string> - </property> - <property name="alignment"> - <set>Qt::AlignCenter</set> - </property> - </widget> - </widget> - </widget> - </item> - <item> - <spacer name="verticalSpacer_10"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - </widget> - <widget class="QWidget" name="invoice"> - <widget class="QWidget" name="verticalLayoutWidget_4"> - <property name="geometry"> - <rect> - <x>19</x> - <y>9</y> - <width>571</width> - <height>801</height> - </rect> - </property> - <layout class="QVBoxLayout" name="verticalLayout_8"> - <item> - <spacer name="verticalSpacer_11"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_Anggota_2"> - <property name="font"> - <font> - <family>Constantia</family> - <pointsize>26</pointsize> - <weight>75</weight> - <bold>true</bold> - <stylestrategy>PreferDefault</stylestrategy> - </font> - </property> - <property name="styleSheet"> - <string notr="true">color:rgb(91, 88, 66);</string> - </property> - <property name="text"> - <string>Invoice</string> - </property> - <property name="alignment"> - <set>Qt::AlignCenter</set> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_21"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <layout class="QVBoxLayout" name="verticalLayout_9"> - <item> - <widget class="QWidget" name="widget" native="true"/> - </item> - <item> - <widget class="QLabel" name="NomorTransaksi"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>NomorTransaksi</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_13"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="NomorAntrian"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>NomorAntrian</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_14"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="Nama"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>NamaPelanggan</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_16"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_9"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>NomorRuangan</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_17"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_10"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>Durasi</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_18"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_11"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>Waktu</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_19"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_13"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>Harga</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_22"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QLabel" name="label_12"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>Waktu Pembayaran</string> - </property> - </widget> - </item> - <item> - <spacer name="verticalSpacer_15"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <layout class="QHBoxLayout" name="horizontalLayout_5"> - <item> - <spacer name="horizontalSpacer_5"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - <item> - <widget class="QPushButton" name="pushButton_2"> - <property name="font"> - <font> - <pointsize>12</pointsize> - </font> - </property> - <property name="text"> - <string>Bayar</string> - </property> - </widget> - </item> - </layout> - </item> - </layout> - </item> - <item> - <spacer name="verticalSpacer_20"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - <item> - <spacer name="verticalSpacer_12"> - <property name="orientation"> - <enum>Qt::Vertical</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>20</width> - <height>40</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - </widget> - </widget> - </item> - </layout> - </item> - <item> - <spacer name="hspacer_layout3"> - <property name="orientation"> - <enum>Qt::Horizontal</enum> - </property> - <property name="sizeType"> - <enum>QSizePolicy::Fixed</enum> - </property> - <property name="sizeHint" stdset="0"> - <size> - <width>40</width> - <height>20</height> - </size> - </property> - </spacer> - </item> - </layout> - </widget> - </widget> - <resources/> - <connections> - <connection> - <sender>buttonProses</sender> - <signal>clicked(bool)</signal> - <receiver>mainstack</receiver> - <slot>update()</slot> - <hints> - <hint type="sourcelabel"> - <x>1130</x> - <y>673</y> - </hint> - <hint type="destinationlabel"> - <x>912</x> - <y>422</y> - </hint> - </hints> - </connection> - </connections> -</ui> diff --git a/logo.jpg b/logo.jpg deleted file mode 100644 index dfdc4b9fc9967e8b1c5f7acf7fcb9f08ebe04e2b..0000000000000000000000000000000000000000 Binary files a/logo.jpg and /dev/null differ diff --git a/pembayaran.py b/pembayaran.py deleted file mode 100644 index 832dfe3d56e3a50200e1c641e59ba6c461cb0bd5..0000000000000000000000000000000000000000 --- a/pembayaran.py +++ /dev/null @@ -1,115 +0,0 @@ -# MODUL PEMBAYARAN -# PENANGGUNG JAWAB: 13518008 HASNA ROIHAN NAFIISAH - -''' -Modul ini mengimplementasikan pembayaran dengan menggunakan tabel data pemesanan, mencetak bukti transaksi, -dan menyimpan hasil pembayaran ke dalam tabel data riwayat transaksi. Modul ini juga akan mengganti status pemesanan -pada pemesanan terkait menjadi "melakukan pembayaran." - -''' -import sqlalchemy as db -from sqlalchemy.sql.expression import func -from datetime import datetime -from engine_needed import metadata, engine, connection - -# INSIALISASI DATABASE -# user = "root" -# host = "localhost" -# port = "3306" -# db_name = "sansK" - -# def createEngine(user, host, port, db_name) : -# # root, password, localhost, 3306 -# print("Enter password: ", end="") -# password = str(input()) -# name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name -# print("Connecting") -# return (db.create_engine(name_engine)) - -# engine = createEngine(user,host,port,db_name) -# print("Creating engine success") -# connection = engine.connect() -# print("Connecting engine success") -# metadata = db.MetaData() -# print("Connecting metadata success") - -# INISIALISASI TABEL -DaftarPemesanan = db.Table('daftarpemesanan', metadata, autoload = True, autoload_with = engine) -RiwayatTransaksi = db.Table('riwayattransaksi', metadata, autoload = True, autoload_with = engine) - -# Mengecek keberadaan nomor antrian dalam daftar pemesanan -def is_order_exist(order_id): - result = False - query = db.select([DaftarPemesanan.columns.NomorAntrian]).where(db.and_(DaftarPemesanan.columns.NomorAntrian == order_id, DaftarPemesanan.columns.StatusPemesanan != "melakukan pembayaran")) - query_result = connection.execute(query) - resultset = query_result.fetchall() - if len(resultset) > 0: - result = True - return result - -# Mengambil tuple field yang memiliki nomor antrian yang diinginkan -# Mengembalikan True jika berhasil -# resultset yang dihasilkan harus hanya memiliki satu tuple -def fetch_order(order_id, resultset): - exist = is_order_exist(order_id) - if exist: - query = query = db.select([DaftarPemesanan]).where(db.and_(DaftarPemesanan.columns.NomorAntrian == order_id, DaftarPemesanan.columns.StatusPemesanan != "melakukan pembayaran")) - query_result = connection.execute(query) - temp = query_result.fetchall() - resultset = resultset.append(temp[0]) - - # mengubah status pemesanan - #query = db.update(DaftarPemesanan).values(StatusPemesanan = "melakukan pembayaran").where(DaftarPemesanan.columns.NomorAntrian == order_id) - #query_result = connection.execute(query) - return exist - -# Memasukkan daftar pemesanan yang sudah dibayar ke dalam tabel riwayat transaksi -def update_invoice(resultset,result): - query = db.update(DaftarPemesanan).values(StatusPemesanan = "melakukan pembayaran").where(DaftarPemesanan.columns.NomorAntrian == resultset[0][0]) - query_result = connection.execute(query) - exist = False - if len(resultset) == 1: - resultorder = resultset[0] - for i in range(len(resultorder)): - if not (i == 6 or i == 8): - result.append(resultorder[i]) - result.append(datetime.now()) - if len(resultorder) < 8: - result.append(None) - else: - result.append(resultorder[8]) - print(len(result)) - query = db.insert(RiwayatTransaksi).values(NomorAntrian = result[0], Nama = result[1], Durasi = result[2], Tanggal = result[3], Waktu = result[4], NomorRuangan = result[5], Harga = result[6], WaktuPembayaran = result[7], IDAnggota = result[8]) - proxy = connection.execute(query) - # get the latest transaction record - transactionno = db.func.max(RiwayatTransaksi.columns.NomorTransaksi) - proxy2 = connection.execute(transactionno) - trans_no = proxy2.fetchall() - print(trans_no) - result.insert(0,trans_no[0][0]) - exist = True - return exist - -def print_invoice(result): - for i in range(len(result)): - print(result[i]) - -# MAIN PROG -# order_id = int(input("Masukkan nomor antrian: ")) -# resultset = [] -# success = fetch_order(order_id, resultset) -# if success: -# result = [] -# success2 = update_invoice(resultset,result) -# print(resultset) -# if success2: -# print_invoice(result) -# else: -# print("Pembayaran gagal") -# else: -# print("Nomor antrian tidak ditemukan") - - - - - diff --git a/pembayaran_display.py b/pembayaran_display.py deleted file mode 100644 index bc22c5e38ed270e3128af6677afd415e87aa655c..0000000000000000000000000000000000000000 --- a/pembayaran_display.py +++ /dev/null @@ -1,457 +0,0 @@ -# MODUL PEMBAYARAN -# PENANGGUNG JAWAB: 13518008 HASNA ROIHAN NAFIISAH - -''' -Modul ini mengimplementasikan pembayaran dengan menggunakan tabel data pemesanan, mencetak bukti transaksi, -dan menyimpan hasil pembayaran ke dalam tabel data riwayat transaksi. Modul ini juga akan mengganti status pemesanan -pada pemesanan terkait menjadi "melakukan pembayaran." - -''' -from PyQt5 import QtCore, QtGui, QtWidgets - - -import sys -import pembayaran as data - -app = QtWidgets.QApplication(sys.argv) - -# SETUP MAIN WINDOW -MainWindow = QtWidgets.QMainWindow() -MainWindow.setObjectName("MainWindow") -MainWindow.resize(1269, 846) -MainWindow.setStyleSheet("background-color: rgb(237, 231, 226)") -MainWindow.show() - -# SETUP SIDE MENU -centralwidget = QtWidgets.QWidget(MainWindow) -centralwidget.setObjectName("centralwidget") -horizontalLayout = QtWidgets.QHBoxLayout(centralwidget) -horizontalLayout.setObjectName("horizontalLayout") -vlayout_Menu = QtWidgets.QVBoxLayout() -vlayout_Menu.setObjectName("vlayout_Menu") -label_4 = QtWidgets.QLabel(centralwidget) -label_4.setEnabled(True) -label_4.setMaximumSize(QtCore.QSize(500, 460)) -label_4.setFocusPolicy(QtCore.Qt.WheelFocus) -label_4.setStyleSheet("") -label_4.setText("") -label_4.setPixmap(QtGui.QPixmap("logo.jpg")) -label_4.setScaledContents(True) -label_4.setObjectName("label_4") -vlayout_Menu.addWidget(label_4) -spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) -vlayout_Menu.addItem(spacerItem) -spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -vlayout_Menu.addItem(spacerItem1) -button_pemesana = QtWidgets.QPushButton(centralwidget) -button_pemesana.setMinimumSize(QtCore.QSize(0, 50)) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(15) -button_pemesana.setFont(font) -button_pemesana.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") -button_pemesana.setObjectName("button_pemesana") -vlayout_Menu.addWidget(button_pemesana) -button_pembayaran = QtWidgets.QPushButton(centralwidget) -button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(15) -button_pembayaran.setFont(font) -button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") -button_pembayaran.setObjectName("button_pembayaran") -vlayout_Menu.addWidget(button_pembayaran) -button_anggota = QtWidgets.QPushButton(centralwidget) -button_anggota.setMinimumSize(QtCore.QSize(0, 50)) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(15) -button_anggota.setFont(font) -button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") -button_anggota.setObjectName("button_anggota") -vlayout_Menu.addWidget(button_anggota) -spacerItem2 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) -vlayout_Menu.addItem(spacerItem2) -button_kkeluar = QtWidgets.QPushButton(centralwidget) -button_kkeluar.setMinimumSize(QtCore.QSize(0, 50)) -button_kkeluar.setMaximumSize(QtCore.QSize(100, 16777215)) -font = QtGui.QFont() -font.setFamily("Microsoft New Tai Lue") -font.setPointSize(10) -button_kkeluar.setFont(font) -button_kkeluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" -"color:rgb(255, 220, 179);") -button_kkeluar.setObjectName("button_kkeluar") -vlayout_Menu.addWidget(button_kkeluar) -spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -vlayout_Menu.addItem(spacerItem3) -horizontalLayout.addLayout(vlayout_Menu) -spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) -horizontalLayout.addItem(spacerItem4) -line = QtWidgets.QFrame(centralwidget) -line.setFrameShape(QtWidgets.QFrame.VLine) -line.setFrameShadow(QtWidgets.QFrame.Sunken) -line.setObjectName("line") -horizontalLayout.addWidget(line) -spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) -horizontalLayout.addItem(spacerItem5) -verticalLayout_6 = QtWidgets.QVBoxLayout() -verticalLayout_6.setObjectName("verticalLayout_6") - -# MENU PEMBAYARAN -mainstack = QtWidgets.QStackedWidget(centralwidget) -mainstack.setObjectName("mainstack") -entry = QtWidgets.QWidget() -entry.setObjectName("entry") -widget = QtWidgets.QWidget(entry) -widget.setGeometry(QtCore.QRect(0, -7, 611, 901)) -widget.setObjectName("widget") -vlayout_pembayaran = QtWidgets.QVBoxLayout(widget) -vlayout_pembayaran.setContentsMargins(0, 0, 0, 0) -vlayout_pembayaran.setObjectName("vlayout_pembayaran") -spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -vlayout_pembayaran.addItem(spacerItem6) -label_Anggota = QtWidgets.QLabel(widget) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(26) -font.setBold(True) -font.setWeight(75) -font.setStyleStrategy(QtGui.QFont.PreferDefault) -label_Anggota.setFont(font) -label_Anggota.setStyleSheet("color:rgb(91, 88, 66);") -label_Anggota.setAlignment(QtCore.Qt.AlignCenter) -label_Anggota.setObjectName("label_Anggota") -vlayout_pembayaran.addWidget(label_Anggota) -verticalLayout = QtWidgets.QVBoxLayout() -verticalLayout.setObjectName("verticalLayout") -spacerItem7 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout.addItem(spacerItem7) -groupBox = QtWidgets.QGroupBox(widget) -groupBox.setStyleSheet("background-color: rgb(135, 195, 190);") -groupBox.setTitle("") -groupBox.setObjectName("groupBox") -gridLayout = QtWidgets.QGridLayout(groupBox) -gridLayout.setObjectName("gridLayout") -spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -gridLayout.addItem(spacerItem8, 6, 0, 1, 1) -inputOrderId = QtWidgets.QLineEdit(groupBox) -inputOrderId.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") -inputOrderId.setObjectName("inputOrderId") -gridLayout.addWidget(inputOrderId, 1, 0, 1, 1) -horizontalLayout_2 = QtWidgets.QHBoxLayout() -horizontalLayout_2.setObjectName("horizontalLayout_2") -spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) -horizontalLayout_2.addItem(spacerItem9) -gridLayout.addLayout(horizontalLayout_2, 5, 0, 1, 1) -label_2 = QtWidgets.QLabel(groupBox) -font = QtGui.QFont() -font.setFamily("Segoe MDL2 Assets") -font.setPointSize(10) -label_2.setFont(font) -label_2.setStyleSheet("color: rgb(237, 231, 226);") -label_2.setObjectName("label_2") -gridLayout.addWidget(label_2, 0, 0, 1, 1) -spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -gridLayout.addItem(spacerItem10, 2, 0, 1, 1) -verticalLayout.addWidget(groupBox) -vlayout_pembayaran.addLayout(verticalLayout) -spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -vlayout_pembayaran.addItem(spacerItem11) - -# Order ID found or not found -stackedWidget = QtWidgets.QStackedWidget(widget) -stackedWidget.setStyleSheet("background-color: rgb(135, 195, 190);") -stackedWidget.setObjectName("stackedWidget") -orderfound = QtWidgets.QWidget() -orderfound.setObjectName("orderfound") -verticalLayoutWidget = QtWidgets.QWidget(orderfound) -verticalLayoutWidget.setGeometry(QtCore.QRect(80, 20, 160, 51)) -verticalLayoutWidget.setObjectName("verticalLayoutWidget") -verticalLayout_4 = QtWidgets.QVBoxLayout(verticalLayoutWidget) -verticalLayout_4.setContentsMargins(0, 0, 0, 0) -verticalLayout_4.setObjectName("verticalLayout_4") -label = QtWidgets.QLabel(verticalLayoutWidget) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(11) -label.setFont(font) -label.setStyleSheet("background-color: rgb(255, 255, 255);") -label.setObjectName("label") -verticalLayout_4.addWidget(label) -spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) -verticalLayout_4.addItem(spacerItem12) -verticalLayoutWidget_2 = QtWidgets.QWidget(orderfound) -verticalLayoutWidget_2.setGeometry(QtCore.QRect(290, 20, 271, 51)) -verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") -verticalLayout_5 = QtWidgets.QVBoxLayout(verticalLayoutWidget_2) -verticalLayout_5.setContentsMargins(0, 0, 0, 0) -verticalLayout_5.setObjectName("verticalLayout_5") -label_3 = QtWidgets.QLabel(verticalLayoutWidget_2) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(11) -label_3.setFont(font) -label_3.setStyleSheet("background-color: rgb(255, 255, 255);") -label_3.setObjectName("label_3") -verticalLayout_5.addWidget(label_3) -spacerItem13 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) -verticalLayout_5.addItem(spacerItem13) -horizontalLayoutWidget = QtWidgets.QWidget(orderfound) -horizontalLayoutWidget.setGeometry(QtCore.QRect(100, 80, 451, 31)) -horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") -horizontalLayout_4 = QtWidgets.QHBoxLayout(horizontalLayoutWidget) -horizontalLayout_4.setContentsMargins(0, 0, 0, 0) -horizontalLayout_4.setObjectName("horizontalLayout_4") -spacerItem14 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) -horizontalLayout_4.addItem(spacerItem14) -buttonProses = QtWidgets.QPushButton(horizontalLayoutWidget) -font = QtGui.QFont() -font.setFamily("Segoe MDL2 Assets") -font.setPointSize(9) -buttonProses.setFont(font) -buttonProses.setStyleSheet("background-color: rgb(237, 231, 226);\n" -"color: rgb(135, 195, 190);") -buttonProses.setObjectName("buttonProses") -horizontalLayout_4.addWidget(buttonProses) -stackedWidget.addWidget(orderfound) -ordernotfound = QtWidgets.QWidget() -ordernotfound.setObjectName("ordernotfound") -label_5 = QtWidgets.QLabel(ordernotfound) -label_5.setGeometry(QtCore.QRect(120, 40, 341, 51)) -font = QtGui.QFont() -font.setFamily("Segoe MDL2 Assets") -font.setPointSize(12) -label_5.setFont(font) -label_5.setStyleSheet("color: rgb(237, 231, 226);") -label_5.setAlignment(QtCore.Qt.AlignCenter) -label_5.setObjectName("label_5") -stackedWidget.addWidget(ordernotfound) -vlayout_pembayaran.addWidget(stackedWidget) -spacerItem15 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -vlayout_pembayaran.addItem(spacerItem15) - -# Cetak Invoice -mainstack.addWidget(entry) -invoice = QtWidgets.QWidget() -invoice.setObjectName("invoice") -verticalLayoutWidget_4 = QtWidgets.QWidget(invoice) -verticalLayoutWidget_4.setGeometry(QtCore.QRect(19, 9, 571, 801)) -verticalLayoutWidget_4.setObjectName("verticalLayoutWidget_4") -verticalLayout_8 = QtWidgets.QVBoxLayout(verticalLayoutWidget_4) -verticalLayout_8.setContentsMargins(0, 0, 0, 0) -verticalLayout_8.setObjectName("verticalLayout_8") -spacerItem16 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_8.addItem(spacerItem16) -labelinvoice = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setFamily("Constantia") -font.setPointSize(26) -font.setBold(True) -font.setWeight(75) -font.setStyleStrategy(QtGui.QFont.PreferDefault) -labelinvoice.setFont(font) -labelinvoice.setStyleSheet("color:rgb(91, 88, 66);") -labelinvoice.setAlignment(QtCore.Qt.AlignCenter) -labelinvoice.setObjectName("labelinvoice") -verticalLayout_8.addWidget(labelinvoice) -spacerItem17 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_8.addItem(spacerItem17) -verticalLayout_9 = QtWidgets.QVBoxLayout() -verticalLayout_9.setObjectName("verticalLayout_9") -widget1 = QtWidgets.QWidget(verticalLayoutWidget_4) -widget1.setObjectName("widget1") -verticalLayout_9.addWidget(widget1) - -# label nomor transaksi -NomorTransaksi = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -NomorTransaksi.setFont(font) -NomorTransaksi.setObjectName("NomorTransaksi") -verticalLayout_9.addWidget(NomorTransaksi) -spacerItem18 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem18) - -# label nomor antrian -NomorAntrian = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -NomorAntrian.setFont(font) -NomorAntrian.setObjectName("NomorAntrian") -verticalLayout_9.addWidget(NomorAntrian) -spacerItem19 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem19) - -# label nama pelanggan -Nama = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -Nama.setFont(font) -Nama.setObjectName("Nama") -verticalLayout_9.addWidget(Nama) -spacerItem20 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem20) - -# label nomor ruangan -noRuangan = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -noRuangan.setFont(font) -noRuangan.setObjectName("noRuangan") -verticalLayout_9.addWidget(noRuangan) -spacerItem21 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem21) - -# label durasi -durasi = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -durasi.setFont(font) -durasi.setObjectName("durasi") -verticalLayout_9.addWidget(durasi) -spacerItem22 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem22) - -# label waktu -waktu = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -waktu.setFont(font) -waktu.setObjectName("waktu") -verticalLayout_9.addWidget(waktu) -spacerItem23 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem23) - -# labelharga -labelharga = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -labelharga.setFont(font) -labelharga.setObjectName("labelharga") -verticalLayout_9.addWidget(labelharga) -spacerItemHarga = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItemHarga) - -#label waktu pembayaran -waktubayar = QtWidgets.QLabel(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(11) -waktubayar.setFont(font) -waktubayar.setObjectName("waktubayar") -verticalLayout_9.addWidget(waktubayar) -spacerItem24 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_9.addItem(spacerItem24) - -# button bayar -horizontalLayout_5 = QtWidgets.QHBoxLayout() -horizontalLayout_5.setObjectName("horizontalLayout_5") -spacerItem25 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) -horizontalLayout_5.addItem(spacerItem25) -buttonBayar = QtWidgets.QPushButton(verticalLayoutWidget_4) -font = QtGui.QFont() -font.setPointSize(12) -buttonBayar.setFont(font) -buttonBayar.setObjectName("buttonBayar") -horizontalLayout_5.addWidget(buttonBayar) -verticalLayout_9.addLayout(horizontalLayout_5) -verticalLayout_8.addLayout(verticalLayout_9) -spacerItem26 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_8.addItem(spacerItem26) -spacerItem27 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) -verticalLayout_8.addItem(spacerItem27) - -mainstack.addWidget(invoice) -verticalLayout_6.addWidget(mainstack) -horizontalLayout.addLayout(verticalLayout_6) -spacerItem28 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) -horizontalLayout.addItem(spacerItem28) -MainWindow.setCentralWidget(centralwidget) - -# SET TEXT -_translate = QtCore.QCoreApplication.translate -MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) -button_pemesana.setText(_translate("MainWindow", "Pemesanan")) -button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) -button_anggota.setText(_translate("MainWindow", "Anggota")) -button_kkeluar.setText(_translate("MainWindow", "Keluar")) -label_Anggota.setText(_translate("MainWindow", "Pembayaran")) -label_2.setText(_translate("MainWindow", "Masukkan nomor antrian pemesanan:")) -label.setText(_translate("MainWindow", "order_id")) -label_3.setText(_translate("MainWindow", "Nama pelanggan")) -buttonProses.setText(_translate("MainWindow", "Proses")) -label_5.setText(_translate("MainWindow", "Nomor antrian tidak ditemukan")) -labelinvoice.setText(_translate("MainWindow", "Invoice")) -NomorTransaksi.setText(_translate("MainWindow", "NomorTransaksi")) -NomorAntrian.setText(_translate("MainWindow", "NomorAntrian")) -Nama.setText(_translate("MainWindow", "NamaPelanggan")) -noRuangan.setText(_translate("MainWindow", "NomorRuangan")) -durasi.setText(_translate("MainWindow", "Durasi")) -waktu.setText(_translate("MainWindow", "Waktu")) -waktubayar.setText(_translate("MainWindow", "Waktu Pembayaran")) -labelharga.setText(_translate("MainWindow", "Harga")) -buttonBayar.setText(_translate("MainWindow", "Bayar")) - -mainstack.setCurrentIndex(0) -stackedWidget.setCurrentIndex(1) -stackedWidget.hide() -inputOrderId.setValidator(QtGui.QIntValidator(1,999)) -resultset = [] -result = [] - -# INPUT ORDER -def inputID(): - order_id = int(inputOrderId.text()) - - success = data.fetch_order(order_id, resultset) - if success: - success2 = data.update_invoice(resultset,result) - print(resultset) - label.setText(str(resultset[0][0])) - label_3.setText(str(resultset[0][1])) - stackedWidget.setCurrentIndex(0) - if success2: - data.print_invoice(result) - else: - print("Pembayaran gagal") - else: - stackedWidget.setCurrentIndex(1) - print("Nomor antrian tidak ditemukan") - - stackedWidget.show() - -# DISPLAY INVOICE IF FOUND -def display_invoice(): - NomorTransaksi.setText("Nomor Transaksi: " + str(result[0])) - NomorAntrian.setText("Nomor Antrian: " + str(result[1])) - Nama.setText("Nama Pelanggan: " + str(result[2])) - durasi.setText("Durasi: " + str(result[3])) - waktu.setText("Waktu: " + str(result[5])) - noRuangan.setText("Nomor Ruangan: " + str(result[6])) - labelharga.setText("Harga: " + str(result[7])) - waktubayar.setText("Waktu Pembayaran: " + str(result[8])) - mainstack.setCurrentIndex(1) - -# BACK ON SEARCH MENU -def display_input(): - mainstack.setCurrentIndex(0) - stackedWidget.hide() - -# SIGNALS -inputOrderId.returnPressed.connect(inputID) -buttonProses.clicked.connect(display_invoice) -buttonBayar.clicked.connect(display_input) -button_pembayaran.clicked.connect(display_input) -QtCore.QMetaObject.connectSlotsByName(MainWindow) - - -sys.exit(app.exec_()) - - - - - diff --git a/pembayaran_display_only.py b/pembayaran_display_only.py deleted file mode 100644 index 1bf9fea951651a8cf32e8fbf21211f37824f5719..0000000000000000000000000000000000000000 --- a/pembayaran_display_only.py +++ /dev/null @@ -1,382 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file 'layoutpembayaran.ui' -# -# Created by: PyQt5 UI code generator 5.13.2 -# -# WARNING! All changes made in this file will be lost! - - -from PyQt5 import QtCore, QtGui, QtWidgets - - -class Ui_MainWindow(object): - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1269, 846) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n" -"\n" -"") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.vlayout_Menu = QtWidgets.QVBoxLayout() - self.vlayout_Menu.setObjectName("vlayout_Menu") - self.label_4 = QtWidgets.QLabel(self.centralwidget) - self.label_4.setEnabled(True) - self.label_4.setMaximumSize(QtCore.QSize(500, 460)) - self.label_4.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_4.setStyleSheet("") - self.label_4.setText("") - self.label_4.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_4.setScaledContents(True) - self.label_4.setObjectName("label_4") - self.vlayout_Menu.addWidget(self.label_4) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - self.vlayout_Menu.addItem(spacerItem) - spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem1) - self.button_pemesana = QtWidgets.QPushButton(self.centralwidget) - self.button_pemesana.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pemesana.setFont(font) - self.button_pemesana.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") - self.button_pemesana.setObjectName("button_pemesana") - self.vlayout_Menu.addWidget(self.button_pemesana) - self.button_pembayaran = QtWidgets.QPushButton(self.centralwidget) - self.button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pembayaran.setFont(font) - self.button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") - self.button_pembayaran.setObjectName("button_pembayaran") - self.vlayout_Menu.addWidget(self.button_pembayaran) - self.button_anggota = QtWidgets.QPushButton(self.centralwidget) - self.button_anggota.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_anggota.setFont(font) - self.button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n" -"background-color: rgb(191, 215, 152);") - self.button_anggota.setObjectName("button_anggota") - self.vlayout_Menu.addWidget(self.button_anggota) - spacerItem2 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu.addItem(spacerItem2) - self.button_kkeluar = QtWidgets.QPushButton(self.centralwidget) - self.button_kkeluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_kkeluar.setMaximumSize(QtCore.QSize(100, 16777215)) - font = QtGui.QFont() - font.setFamily("Microsoft New Tai Lue") - font.setPointSize(10) - self.button_kkeluar.setFont(font) - self.button_kkeluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" -"color:rgb(255, 220, 179);") - self.button_kkeluar.setObjectName("button_kkeluar") - self.vlayout_Menu.addWidget(self.button_kkeluar) - spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem3) - self.horizontalLayout.addLayout(self.vlayout_Menu) - spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem4) - self.line = QtWidgets.QFrame(self.centralwidget) - self.line.setFrameShape(QtWidgets.QFrame.VLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.horizontalLayout.addWidget(self.line) - spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem5) - self.verticalLayout_6 = QtWidgets.QVBoxLayout() - self.verticalLayout_6.setObjectName("verticalLayout_6") - self.mainstack = QtWidgets.QStackedWidget(self.centralwidget) - self.mainstack.setObjectName("mainstack") - self.entry = QtWidgets.QWidget() - self.entry.setObjectName("entry") - self.layoutWidget = QtWidgets.QWidget(self.entry) - self.layoutWidget.setGeometry(QtCore.QRect(0, -7, 611, 901)) - self.layoutWidget.setObjectName("layoutWidget") - self.vlayout_pembayaran = QtWidgets.QVBoxLayout(self.layoutWidget) - self.vlayout_pembayaran.setContentsMargins(0, 0, 0, 0) - self.vlayout_pembayaran.setObjectName("vlayout_pembayaran") - spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_pembayaran.addItem(spacerItem6) - self.label_Anggota = QtWidgets.QLabel(self.layoutWidget) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota.setFont(font) - self.label_Anggota.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota.setObjectName("label_Anggota") - self.vlayout_pembayaran.addWidget(self.label_Anggota) - self.verticalLayout = QtWidgets.QVBoxLayout() - self.verticalLayout.setObjectName("verticalLayout") - spacerItem7 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout.addItem(spacerItem7) - self.groupBox = QtWidgets.QGroupBox(self.layoutWidget) - self.groupBox.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox.setTitle("") - self.groupBox.setObjectName("groupBox") - self.gridLayout = QtWidgets.QGridLayout(self.groupBox) - self.gridLayout.setObjectName("gridLayout") - spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout.addItem(spacerItem8, 6, 0, 1, 1) - self.inputOrderId = QtWidgets.QLineEdit(self.groupBox) - self.inputOrderId.setStyleSheet("color:rgb(254, 209, 134);\n" -"background-color: rgb(230, 131, 116)") - self.inputOrderId.setObjectName("inputOrderId") - self.gridLayout.addWidget(self.inputOrderId, 1, 0, 1, 1) - self.horizontalLayout_2 = QtWidgets.QHBoxLayout() - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem9) - self.gridLayout.addLayout(self.horizontalLayout_2, 5, 0, 1, 1) - self.label_2 = QtWidgets.QLabel(self.groupBox) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(10) - self.label_2.setFont(font) - self.label_2.setStyleSheet("color: rgb(237, 231, 226);") - self.label_2.setObjectName("label_2") - self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1) - spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout.addItem(spacerItem10, 2, 0, 1, 1) - self.verticalLayout.addWidget(self.groupBox) - self.vlayout_pembayaran.addLayout(self.verticalLayout) - spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_pembayaran.addItem(spacerItem11) - self.stackedWidget = QtWidgets.QStackedWidget(self.layoutWidget) - self.stackedWidget.setStyleSheet("background-color: rgb(135, 195, 190);") - self.stackedWidget.setObjectName("stackedWidget") - self.orderfound = QtWidgets.QWidget() - self.orderfound.setObjectName("orderfound") - self.verticalLayoutWidget = QtWidgets.QWidget(self.orderfound) - self.verticalLayoutWidget.setGeometry(QtCore.QRect(80, 20, 160, 51)) - self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") - self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget) - self.verticalLayout_4.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.label = QtWidgets.QLabel(self.verticalLayoutWidget) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(11) - self.label.setFont(font) - self.label.setStyleSheet("background-color: rgb(255, 255, 255);") - self.label.setObjectName("label") - self.verticalLayout_4.addWidget(self.label) - spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.verticalLayout_4.addItem(spacerItem12) - self.verticalLayoutWidget_2 = QtWidgets.QWidget(self.orderfound) - self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(290, 20, 271, 51)) - self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") - self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2) - self.verticalLayout_5.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_5.setObjectName("verticalLayout_5") - self.label_3 = QtWidgets.QLabel(self.verticalLayoutWidget_2) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(11) - self.label_3.setFont(font) - self.label_3.setStyleSheet("background-color: rgb(255, 255, 255);") - self.label_3.setObjectName("label_3") - self.verticalLayout_5.addWidget(self.label_3) - spacerItem13 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.verticalLayout_5.addItem(spacerItem13) - self.horizontalLayoutWidget = QtWidgets.QWidget(self.orderfound) - self.horizontalLayoutWidget.setGeometry(QtCore.QRect(100, 80, 451, 31)) - self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget) - self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - spacerItem14 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_4.addItem(spacerItem14) - self.buttonProses = QtWidgets.QPushButton(self.horizontalLayoutWidget) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(9) - self.buttonProses.setFont(font) - self.buttonProses.setStyleSheet("background-color: rgb(237, 231, 226);\n" -"color: rgb(135, 195, 190);") - self.buttonProses.setObjectName("buttonProses") - self.horizontalLayout_4.addWidget(self.buttonProses) - self.stackedWidget.addWidget(self.orderfound) - self.ordernotfound = QtWidgets.QWidget() - self.ordernotfound.setObjectName("ordernotfound") - self.label_5 = QtWidgets.QLabel(self.ordernotfound) - self.label_5.setGeometry(QtCore.QRect(120, 40, 341, 51)) - font = QtGui.QFont() - font.setFamily("Segoe MDL2 Assets") - font.setPointSize(12) - self.label_5.setFont(font) - self.label_5.setStyleSheet("color: rgb(237, 231, 226);") - self.label_5.setAlignment(QtCore.Qt.AlignCenter) - self.label_5.setObjectName("label_5") - self.stackedWidget.addWidget(self.ordernotfound) - self.vlayout_pembayaran.addWidget(self.stackedWidget) - spacerItem15 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_pembayaran.addItem(spacerItem15) - self.mainstack.addWidget(self.entry) - self.invoice = QtWidgets.QWidget() - self.invoice.setObjectName("invoice") - self.verticalLayoutWidget_4 = QtWidgets.QWidget(self.invoice) - self.verticalLayoutWidget_4.setGeometry(QtCore.QRect(19, 9, 571, 801)) - self.verticalLayoutWidget_4.setObjectName("verticalLayoutWidget_4") - self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_4) - self.verticalLayout_8.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_8.setObjectName("verticalLayout_8") - spacerItem16 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(spacerItem16) - self.label_Anggota_2 = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(26) - font.setBold(True) - font.setWeight(75) - font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota_2.setFont(font) - self.label_Anggota_2.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota_2.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota_2.setObjectName("label_Anggota_2") - self.verticalLayout_8.addWidget(self.label_Anggota_2) - spacerItem17 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(spacerItem17) - self.verticalLayout_9 = QtWidgets.QVBoxLayout() - self.verticalLayout_9.setObjectName("verticalLayout_9") - self.widget = QtWidgets.QWidget(self.verticalLayoutWidget_4) - self.widget.setObjectName("widget") - self.verticalLayout_9.addWidget(self.widget) - self.NomorTransaksi = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.NomorTransaksi.setFont(font) - self.NomorTransaksi.setObjectName("NomorTransaksi") - self.verticalLayout_9.addWidget(self.NomorTransaksi) - spacerItem18 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem18) - self.NomorAntrian = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.NomorAntrian.setFont(font) - self.NomorAntrian.setObjectName("NomorAntrian") - self.verticalLayout_9.addWidget(self.NomorAntrian) - spacerItem19 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem19) - self.Nama = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.Nama.setFont(font) - self.Nama.setObjectName("Nama") - self.verticalLayout_9.addWidget(self.Nama) - spacerItem20 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem20) - self.label_9 = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.label_9.setFont(font) - self.label_9.setObjectName("label_9") - self.verticalLayout_9.addWidget(self.label_9) - spacerItem21 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem21) - self.label_10 = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.label_10.setFont(font) - self.label_10.setObjectName("label_10") - self.verticalLayout_9.addWidget(self.label_10) - spacerItem22 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem22) - self.label_11 = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.label_11.setFont(font) - self.label_11.setObjectName("label_11") - self.verticalLayout_9.addWidget(self.label_11) - spacerItem23 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem23) - self.label_13 = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.label_13.setFont(font) - self.label_13.setObjectName("label_13") - self.verticalLayout_9.addWidget(self.label_13) - spacerItem24 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem24) - self.label_12 = QtWidgets.QLabel(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.label_12.setFont(font) - self.label_12.setObjectName("label_12") - self.verticalLayout_9.addWidget(self.label_12) - spacerItem25 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(spacerItem25) - self.horizontalLayout_5 = QtWidgets.QHBoxLayout() - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - spacerItem26 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_5.addItem(spacerItem26) - self.pushButton_2 = QtWidgets.QPushButton(self.verticalLayoutWidget_4) - font = QtGui.QFont() - font.setPointSize(12) - self.pushButton_2.setFont(font) - self.pushButton_2.setObjectName("pushButton_2") - self.horizontalLayout_5.addWidget(self.pushButton_2) - self.verticalLayout_9.addLayout(self.horizontalLayout_5) - self.verticalLayout_8.addLayout(self.verticalLayout_9) - spacerItem27 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(spacerItem27) - spacerItem28 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(spacerItem28) - self.mainstack.addWidget(self.invoice) - self.verticalLayout_6.addWidget(self.mainstack) - self.horizontalLayout.addLayout(self.verticalLayout_6) - spacerItem29 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem29) - MainWindow.setCentralWidget(self.centralwidget) - - self.retranslateUi(MainWindow) - self.mainstack.setCurrentIndex(1) - self.stackedWidget.setCurrentIndex(0) - self.buttonProses.clicked['bool'].connect(self.mainstack.update) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) - self.button_pemesana.setText(_translate("MainWindow", "Pemesanan")) - self.button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) - self.button_anggota.setText(_translate("MainWindow", "Anggota")) - self.button_kkeluar.setText(_translate("MainWindow", "Keluar")) - self.label_Anggota.setText(_translate("MainWindow", "Pembayaran")) - self.label_2.setText(_translate("MainWindow", "Masukkan nomor antrian pemesanan:")) - self.label.setText(_translate("MainWindow", "order_id")) - self.label_3.setText(_translate("MainWindow", "Nama pelanggan")) - self.buttonProses.setText(_translate("MainWindow", "Bayar")) - self.label_5.setText(_translate("MainWindow", "Nomor antrian tidak ditemukan")) - self.label_Anggota_2.setText(_translate("MainWindow", "Invoice")) - self.NomorTransaksi.setText(_translate("MainWindow", "NomorTransaksi")) - self.NomorAntrian.setText(_translate("MainWindow", "NomorAntrian")) - self.Nama.setText(_translate("MainWindow", "NamaPelanggan")) - self.label_9.setText(_translate("MainWindow", "NomorRuangan")) - self.label_10.setText(_translate("MainWindow", "Durasi")) - self.label_11.setText(_translate("MainWindow", "Waktu")) - self.label_13.setText(_translate("MainWindow", "Harga")) - self.label_12.setText(_translate("MainWindow", "Waktu Pembayaran")) - self.pushButton_2.setText(_translate("MainWindow", "Bayar")) - - -if __name__ == "__main__": - import sys - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Ui_MainWindow() - ui.setupUi(MainWindow) - MainWindow.show() - sys.exit(app.exec_()) diff --git a/pembayaran_display_oo.py b/pembayaran_display_oo.py deleted file mode 100644 index 0ca83665444f47c07b789d25f484beb768877a9a..0000000000000000000000000000000000000000 --- a/pembayaran_display_oo.py +++ /dev/null @@ -1,471 +0,0 @@ -# MODUL PEMBAYARAN -# PENANGGUNG JAWAB: 13518008 HASNA ROIHAN NAFIISAH - -''' -Modul ini mengimplementasikan pembayaran dengan menggunakan tabel data pemesanan, mencetak bukti transaksi, -dan menyimpan hasil pembayaran ke dalam tabel data riwayat transaksi. Modul ini juga akan mengganti status pemesanan -pada pemesanan terkait menjadi "melakukan pembayaran." - -''' -from PyQt5 import QtCore, QtGui, QtWidgets - - -import pembayaran as data - -class Pembayaran(object): - def setupUi(self, MainWindow): - # SETUP MAIN WINDOW - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1269, 846) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226)") - #MainWindow.show() - - # SETUP SIDE MENU - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.vlayout_Menu = QtWidgets.QVBoxLayout() - self.vlayout_Menu.setObjectName("vlayout_Menu") - self.label_4 = QtWidgets.QLabel(self.centralwidget) - self.label_4.setEnabled(True) - self.label_4.setMaximumSize(QtCore.QSize(500, 460)) - self.label_4.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_4.setStyleSheet("") - self.label_4.setText("") - self.label_4.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_4.setScaledContents(True) - self.label_4.setObjectName("label_4") - self.vlayout_Menu.addWidget(self.label_4) - self.spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Fixed) - self.vlayout_Menu.addItem(self.spacerItem) - self.spacerItem1 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(self.spacerItem1) - self.button_pemesana = QtWidgets.QPushButton(self.centralwidget) - self.button_pemesana.setMinimumSize(QtCore.QSize(0, 50)) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(15) - self.button_pemesana.setFont(self.font) - self.button_pemesana.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_pemesana.setObjectName("button_pemesana") - self.vlayout_Menu.addWidget(self.button_pemesana) - self.button_pembayaran = QtWidgets.QPushButton(self.centralwidget) - self.button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(15) - self.button_pembayaran.setFont(self.font) - self.button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_pembayaran.setObjectName("button_pembayaran") - self.vlayout_Menu.addWidget(self.button_pembayaran) - self.button_anggota = QtWidgets.QPushButton(self.centralwidget) - self.button_anggota.setMinimumSize(QtCore.QSize(0, 50)) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(15) - self.button_anggota.setFont(self.font) - self.button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_anggota.setObjectName("button_anggota") - self.vlayout_Menu.addWidget(self.button_anggota) - self.spacerItem2 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu.addItem(self.spacerItem2) - self.button_kkeluar = QtWidgets.QPushButton(self.centralwidget) - self.button_kkeluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_kkeluar.setMaximumSize(QtCore.QSize(100, 16777215)) - self.font = QtGui.QFont() - self.font.setFamily("Microsoft New Tai Lue") - self.font.setPointSize(10) - self.button_kkeluar.setFont(self.font) - self.button_kkeluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" - "color:rgb(255, 220, 179);") - self.button_kkeluar.setObjectName("button_kkeluar") - self.vlayout_Menu.addWidget(self.button_kkeluar) - self.spacerItem3 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(self.spacerItem3) - self.horizontalLayout.addLayout(self.vlayout_Menu) - self.spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(self.spacerItem4) - self.line = QtWidgets.QFrame(self.centralwidget) - self.line.setFrameShape(QtWidgets.QFrame.VLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.horizontalLayout.addWidget(self.line) - self.spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(self.spacerItem5) - self.verticalLayout_6 = QtWidgets.QVBoxLayout() - self.verticalLayout_6.setObjectName("verticalLayout_6") - - # MENU PEMBAYARAN - self.mainstack = QtWidgets.QStackedWidget(self.centralwidget) - self.mainstack.setObjectName("mainstack") - self.entry = QtWidgets.QWidget() - self.entry.setObjectName("entry") - self.widget = QtWidgets.QWidget(self.entry) - self.widget.setGeometry(QtCore.QRect(0, -7, 611, 901)) - self.widget.setObjectName("widget") - self.vlayout_pembayaran = QtWidgets.QVBoxLayout(self.widget) - self.vlayout_pembayaran.setContentsMargins(0, 0, 0, 0) - self.vlayout_pembayaran.setObjectName("vlayout_pembayaran") - self.spacerItem6 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_pembayaran.addItem(self.spacerItem6) - self.label_Anggota = QtWidgets.QLabel(self.widget) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(26) - self.font.setBold(True) - self.font.setWeight(75) - self.font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.label_Anggota.setFont(self.font) - self.label_Anggota.setStyleSheet("color:rgb(91, 88, 66);") - self.label_Anggota.setAlignment(QtCore.Qt.AlignCenter) - self.label_Anggota.setObjectName("label_Anggota") - self.vlayout_pembayaran.addWidget(self.label_Anggota) - self.verticalLayout = QtWidgets.QVBoxLayout() - self.verticalLayout.setObjectName("verticalLayout") - self.spacerItem7 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout.addItem(self.spacerItem7) - self.groupBox = QtWidgets.QGroupBox(self.widget) - self.groupBox.setStyleSheet("background-color: rgb(135, 195, 190);") - self.groupBox.setTitle("") - self.groupBox.setObjectName("groupBox") - self.gridLayout = QtWidgets.QGridLayout(self.groupBox) - self.gridLayout.setObjectName("gridLayout") - self.spacerItem8 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout.addItem(self.spacerItem8, 6, 0, 1, 1) - self.inputOrderId = QtWidgets.QLineEdit(self.groupBox) - self.inputOrderId.setStyleSheet("color:rgb(254, 209, 134);\n" - "background-color: rgb(230, 131, 116)") - self.inputOrderId.setObjectName("inputOrderId") - self.gridLayout.addWidget(self.inputOrderId, 1, 0, 1, 1) - self.horizontalLayout_2 = QtWidgets.QHBoxLayout() - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - self.spacerItem9 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(self.spacerItem9) - self.gridLayout.addLayout(self.horizontalLayout_2, 5, 0, 1, 1) - self.label_2 = QtWidgets.QLabel(self.groupBox) - self.font = QtGui.QFont() - self.font.setFamily("Segoe MDL2 Assets") - self.font.setPointSize(10) - self.label_2.setFont(self.font) - self.label_2.setStyleSheet("color: rgb(237, 231, 226);") - self.label_2.setObjectName("label_2") - self.gridLayout.addWidget(self.label_2, 0, 0, 1, 1) - self.spacerItem10 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.gridLayout.addItem(self.spacerItem10, 2, 0, 1, 1) - self.verticalLayout.addWidget(self.groupBox) - self.vlayout_pembayaran.addLayout(self.verticalLayout) - self.spacerItem11 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_pembayaran.addItem(self.spacerItem11) - - # Order ID found or not found - self.stackedWidget = QtWidgets.QStackedWidget(self.widget) - self.stackedWidget.setStyleSheet("background-color: rgb(135, 195, 190);") - self.stackedWidget.setObjectName("stackedWidget") - self.orderfound = QtWidgets.QWidget() - self.orderfound.setObjectName("orderfound") - self.verticalLayoutWidget = QtWidgets.QWidget(self.orderfound) - self.verticalLayoutWidget.setGeometry(QtCore.QRect(80, 20, 160, 51)) - self.verticalLayoutWidget.setObjectName("verticalLayoutWidget") - self.verticalLayout_4 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget) - self.verticalLayout_4.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_4.setObjectName("verticalLayout_4") - self.label = QtWidgets.QLabel(self.verticalLayoutWidget) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(11) - self.label.setFont(self.font) - self.label.setStyleSheet("background-color: rgb(255, 255, 255);") - self.label.setObjectName("label") - self.verticalLayout_4.addWidget(self.label) - self.spacerItem12 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.verticalLayout_4.addItem(self.spacerItem12) - self.verticalLayoutWidget_2 = QtWidgets.QWidget(self.orderfound) - self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(290, 20, 271, 51)) - self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") - self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2) - self.verticalLayout_5.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_5.setObjectName("verticalLayout_5") - self.label_3 = QtWidgets.QLabel(self.verticalLayoutWidget_2) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(11) - self.label_3.setFont(self.font) - self.label_3.setStyleSheet("background-color: rgb(255, 255, 255);") - self.label_3.setObjectName("label_3") - self.verticalLayout_5.addWidget(self.label_3) - self.spacerItem13 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.verticalLayout_5.addItem(self.spacerItem13) - self.horizontalLayoutWidget = QtWidgets.QWidget(self.orderfound) - self.horizontalLayoutWidget.setGeometry(QtCore.QRect(100, 80, 451, 31)) - self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget) - self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.spacerItem14 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_4.addItem(self.spacerItem14) - self.buttonProses = QtWidgets.QPushButton(self.horizontalLayoutWidget) - self.font = QtGui.QFont() - self.font.setFamily("Segoe MDL2 Assets") - self.font.setPointSize(9) - self.buttonProses.setFont(self.font) - self.buttonProses.setStyleSheet("background-color: rgb(237, 231, 226);\n" - "color: rgb(135, 195, 190);") - self.buttonProses.setObjectName("buttonProses") - self.horizontalLayout_4.addWidget(self.buttonProses) - self.stackedWidget.addWidget(self.orderfound) - self.ordernotfound = QtWidgets.QWidget() - self.ordernotfound.setObjectName("ordernotfound") - self.label_5 = QtWidgets.QLabel(self.ordernotfound) - self.label_5.setGeometry(QtCore.QRect(120, 40, 341, 51)) - self.font = QtGui.QFont() - self.font.setFamily("Segoe MDL2 Assets") - self.font.setPointSize(12) - self.label_5.setFont(self.font) - self.label_5.setStyleSheet("color: rgb(237, 231, 226);") - self.label_5.setAlignment(QtCore.Qt.AlignCenter) - self.label_5.setObjectName("label_5") - self.stackedWidget.addWidget(self.ordernotfound) - self.vlayout_pembayaran.addWidget(self.stackedWidget) - self.spacerItem15 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_pembayaran.addItem(self.spacerItem15) - - # Cetak Invoice - self.mainstack.addWidget(self.entry) - self.invoice = QtWidgets.QWidget() - self.invoice.setObjectName("invoice") - self.verticalLayoutWidget_4 = QtWidgets.QWidget(self.invoice) - self.verticalLayoutWidget_4.setGeometry(QtCore.QRect(19, 9, 571, 801)) - self.verticalLayoutWidget_4.setObjectName("verticalLayoutWidget_4") - self.verticalLayout_8 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_4) - self.verticalLayout_8.setContentsMargins(0, 0, 0, 0) - self.verticalLayout_8.setObjectName("verticalLayout_8") - self.spacerItem16 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(self.spacerItem16) - self.labelinvoice = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setFamily("Constantia") - self.font.setPointSize(26) - self.font.setBold(True) - self.font.setWeight(75) - self.font.setStyleStrategy(QtGui.QFont.PreferDefault) - self.labelinvoice.setFont(self.font) - self.labelinvoice.setStyleSheet("color:rgb(91, 88, 66);") - self.labelinvoice.setAlignment(QtCore.Qt.AlignCenter) - self.labelinvoice.setObjectName("labelinvoice") - self.verticalLayout_8.addWidget(self.labelinvoice) - self.spacerItem17 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(self.spacerItem17) - self.verticalLayout_9 = QtWidgets.QVBoxLayout() - self.verticalLayout_9.setObjectName("verticalLayout_9") - self.widget1 = QtWidgets.QWidget(self.verticalLayoutWidget_4) - self.widget1.setObjectName("widget1") - self.verticalLayout_9.addWidget(self.widget1) - - # label nomor transaksi - self.NomorTransaksi = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.NomorTransaksi.setFont(self.font) - self.NomorTransaksi.setObjectName("NomorTransaksi") - self.verticalLayout_9.addWidget(self.NomorTransaksi) - self.spacerItem18 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem18) - - # label nomor antrian - self.NomorAntrian = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.NomorAntrian.setFont(self.font) - self.NomorAntrian.setObjectName("NomorAntrian") - self.verticalLayout_9.addWidget(self.NomorAntrian) - self.spacerItem19 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem19) - - # label nama pelanggan - self.Nama = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.Nama.setFont(self.font) - self.Nama.setObjectName("Nama") - self.verticalLayout_9.addWidget(self.Nama) - self.spacerItem20 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem20) - - # label nomor ruangan - self.noRuangan = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.noRuangan.setFont(self.font) - self.noRuangan.setObjectName("noRuangan") - self.verticalLayout_9.addWidget(self.noRuangan) - self.spacerItem21 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem21) - - # label durasi - self.durasi = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.durasi.setFont(self.font) - self.durasi.setObjectName("durasi") - self.verticalLayout_9.addWidget(self.durasi) - self.spacerItem22 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem22) - - # label waktu - self.waktu = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.waktu.setFont(self.font) - self.waktu.setObjectName("waktu") - self.verticalLayout_9.addWidget(self.waktu) - self.spacerItem23 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem23) - - # labelharga - self.labelharga = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.labelharga.setFont(self.font) - self.labelharga.setObjectName("labelharga") - self.verticalLayout_9.addWidget(self.labelharga) - self.spacerItemHarga = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItemHarga) - - #label waktu pembayaran - self.waktubayar = QtWidgets.QLabel(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(11) - self.waktubayar.setFont(self.font) - self.waktubayar.setObjectName("waktubayar") - self.verticalLayout_9.addWidget(self.waktubayar) - self.spacerItem24 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_9.addItem(self.spacerItem24) - - # button bayar - self.horizontalLayout_5 = QtWidgets.QHBoxLayout() - self.horizontalLayout_5.setObjectName("horizontalLayout_5") - self.spacerItem25 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_5.addItem(self.spacerItem25) - self.buttonBayar = QtWidgets.QPushButton(self.verticalLayoutWidget_4) - self.font = QtGui.QFont() - self.font.setPointSize(12) - self.buttonBayar.setFont(self.font) - self.buttonBayar.setObjectName("buttonBayar") - self.horizontalLayout_5.addWidget(self.buttonBayar) - self.verticalLayout_9.addLayout(self.horizontalLayout_5) - self.verticalLayout_8.addLayout(self.verticalLayout_9) - self.spacerItem26 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(self.spacerItem26) - self.spacerItem27 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.verticalLayout_8.addItem(self.spacerItem27) - - self.mainstack.addWidget(self.invoice) - self.verticalLayout_6.addWidget(self.mainstack) - self.horizontalLayout.addLayout(self.verticalLayout_6) - self.spacerItem28 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(self.spacerItem28) - MainWindow.setCentralWidget(self.centralwidget) - - self.retranslateUi(MainWindow) - self.mainstack.setCurrentIndex(0) - self.stackedWidget.setCurrentIndex(1) - self.stackedWidget.hide() - self.inputOrderId.setValidator(QtGui.QIntValidator(1,999)) - - # SIGNALS - self.inputOrderId.returnPressed.connect(self.inputID) - self.buttonProses.clicked.connect(self.display_invoice) - self.buttonBayar.clicked.connect(self.display_input) - self.button_pembayaran.clicked.connect(self.display_input) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def retranslateUi(self, MainWindow): - # SET TEXT - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) - self.button_pemesana.setText(_translate("MainWindow", "Pemesanan")) - self.button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) - self.button_anggota.setText(_translate("MainWindow", "Anggota")) - self.button_kkeluar.setText(_translate("MainWindow", "Keluar")) - self.label_Anggota.setText(_translate("MainWindow", "Pembayaran")) - self.label_2.setText(_translate("MainWindow", "Masukkan nomor antrian pemesanan:")) - self.label.setText(_translate("MainWindow", "order_id")) - self.label_3.setText(_translate("MainWindow", "Nama pelanggan")) - self.buttonProses.setText(_translate("MainWindow", "Proses")) - self.label_5.setText(_translate("MainWindow", "Nomor antrian tidak ditemukan")) - self.labelinvoice.setText(_translate("MainWindow", "Invoice")) - self.NomorTransaksi.setText(_translate("MainWindow", "NomorTransaksi")) - self.NomorAntrian.setText(_translate("MainWindow", "NomorAntrian")) - self.Nama.setText(_translate("MainWindow", "NamaPelanggan")) - self.noRuangan.setText(_translate("MainWindow", "NomorRuangan")) - self.durasi.setText(_translate("MainWindow", "Durasi")) - self.waktu.setText(_translate("MainWindow", "Waktu")) - self.waktubayar.setText(_translate("MainWindow", "Waktu Pembayaran")) - self.labelharga.setText(_translate("MainWindow", "Harga")) - self.buttonBayar.setText(_translate("MainWindow", "Cetak")) - - # INPUT ORDER - def inputID(self): - self.resultset = [] - self.result = [] - self.order_id = int(self.inputOrderId.text()) - - success = data.fetch_order(self.order_id, self.resultset) - if success: - #success2 = data.update_invoice(self.resultset,self.result) - print(self.resultset) - self.label.setText(str(self.resultset[0][0])) - self.label_3.setText(str(self.resultset[0][1])) - self.stackedWidget.setCurrentIndex(0) - #if success2: - # data.print_invoice(self.result) - #else: - # print("Pembayaran gagal") - else: - self.stackedWidget.setCurrentIndex(1) - print("Nomor antrian tidak ditemukan") - - self.stackedWidget.show() - - # DISPLAY INVOICE IF FOUND - def display_invoice(self): - success2 = data.update_invoice(self.resultset,self.result) - if success2: - data.print_invoice(self.result) - else: - print("Pembayaran gagal") - - self.NomorTransaksi.setText("Nomor Transaksi: " + str(self.result[0])) - self.NomorAntrian.setText("Nomor Antrian: " + str(self.result[1])) - self.Nama.setText("Nama Pelanggan: " + str(self.result[2])) - self.durasi.setText("Durasi: " + str(self.result[3])) - self.waktu.setText("Waktu: " + str(self.result[5])) - self.noRuangan.setText("Nomor Ruangan: " + str(self.result[6])) - self.labelharga.setText("Harga: " + str(self.result[7])) - self.waktubayar.setText("Waktu Pembayaran: " + str(self.result[8])) - self.mainstack.setCurrentIndex(1) - - # BACK ON SEARCH MENU - def display_input(self): - self.mainstack.setCurrentIndex(0) - self.stackedWidget.hide() - - - -if __name__ == "__main__": - import sys - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Pembayaran() - ui.setupUi(MainWindow) - MainWindow.show() - sys.exit(app.exec_()) - - - - - diff --git a/pemesanan_ui_fix.py b/pemesanan_ui_fix.py deleted file mode 100644 index 9d164933ca00fe50f0a12fa16a2a4152f688c2e3..0000000000000000000000000000000000000000 --- a/pemesanan_ui_fix.py +++ /dev/null @@ -1,418 +0,0 @@ -# -*- coding: utf-8 -*- - -# Form implementation generated from reading ui file 'ui_fix.ui' -# -# Created by: PyQt5 UI code generator 5.14.2 -# -# WARNING! All changes made in this file will be lost! - - -from PyQt5 import QtCore, QtGui, QtWidgets -from PyQt5.QtCore import QRegExp -from PyQt5.QtGui import QRegExpValidator -import Pemesanan as func -import datetime - - -class Pemesanan(object): - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1269, 846) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n" - "\n" - "") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.horizontalLayout = QtWidgets.QHBoxLayout(self.centralwidget) - self.horizontalLayout.setObjectName("horizontalLayout") - self.vlayout_Menu = QtWidgets.QVBoxLayout() - self.vlayout_Menu.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint) - self.vlayout_Menu.setObjectName("vlayout_Menu") - self.label_4 = QtWidgets.QLabel(self.centralwidget) - self.label_4.setEnabled(True) - self.label_4.setMaximumSize(QtCore.QSize(100, 100)) - self.label_4.setFocusPolicy(QtCore.Qt.WheelFocus) - self.label_4.setStyleSheet("") - self.label_4.setText("") - self.label_4.setPixmap(QtGui.QPixmap("logo.jpg")) - self.label_4.setScaledContents(True) - self.label_4.setObjectName("label_4") - self.vlayout_Menu.addWidget(self.label_4) - spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem) - self.button_pemesanan = QtWidgets.QPushButton(self.centralwidget) - self.button_pemesanan.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pemesanan.setFont(font) - self.button_pemesanan.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_pemesanan.setObjectName("button_pemesanan") - self.button_pemesanan.clicked.connect(self.kembalimenu_clicked) - self.vlayout_Menu.addWidget(self.button_pemesanan) - self.button_pembayaran = QtWidgets.QPushButton(self.centralwidget) - self.button_pembayaran.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_pembayaran.setFont(font) - self.button_pembayaran.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_pembayaran.setObjectName("button_pembayaran") - self.vlayout_Menu.addWidget(self.button_pembayaran) - self.button_anggota = QtWidgets.QPushButton(self.centralwidget) - self.button_anggota.setMinimumSize(QtCore.QSize(0, 50)) - font = QtGui.QFont() - font.setFamily("Constantia") - font.setPointSize(15) - self.button_anggota.setFont(font) - self.button_anggota.setStyleSheet("color:rgb(135, 126, 93);\n" - "background-color: rgb(191, 215, 152);") - self.button_anggota.setObjectName("button_anggota") - self.vlayout_Menu.addWidget(self.button_anggota) - spacerItem1 = QtWidgets.QSpacerItem(0, 100, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum) - self.vlayout_Menu.addItem(spacerItem1) - self.button_kkeluar = QtWidgets.QPushButton(self.centralwidget) - self.button_kkeluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_kkeluar.setMaximumSize(QtCore.QSize(100, 16777215)) - font = QtGui.QFont() - font.setFamily("Microsoft New Tai Lue") - font.setPointSize(10) - self.button_kkeluar.setFont(font) - self.button_kkeluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" - "color:rgb(255, 220, 179);") - self.button_kkeluar.setObjectName("button_kkeluar") - self.vlayout_Menu.addWidget(self.button_kkeluar) - spacerItem2 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding) - self.vlayout_Menu.addItem(spacerItem2) - self.horizontalLayout.addLayout(self.vlayout_Menu) - spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem3) - self.vlayout_pemesanan = QtWidgets.QVBoxLayout() - self.vlayout_pemesanan.setObjectName("vlayout_pemesanan") - spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.vlayout_pemesanan.addItem(spacerItem4) - self.stackedWidget = QtWidgets.QStackedWidget(self.centralwidget) - font = QtGui.QFont() - font.setFamily("Apple Braille") - self.Tambah_pemesanan = QtWidgets.QWidget() - self.Tambah_pemesanan.setObjectName("Tambah_pemesanan") - - #groupbox - self.groupBox = QtWidgets.QGroupBox(self.Tambah_pemesanan) - self.groupBox.setGeometry(QtCore.QRect(20, 160, 991, 541)) - self.groupBox.setStyleSheet("background-color: rgb(112, 174, 167);") - self.groupBox.setTitle("") - self.groupBox.setObjectName("groupBox") - self.label_err = QtWidgets.QLabel(self.groupBox) - self.label_err.hide() - self.label1_err = QtWidgets.QLabel(self.groupBox) - self.label1_err.hide() - self.label2_err = QtWidgets.QLabel(self.groupBox) - self.label2_err.hide() - self.label3_err = QtWidgets.QLabel(self.groupBox) - self.label3_err.hide() - self.label4_err = QtWidgets.QLabel(self.groupBox) - self.label4_err.hide() - - self.label_err.setGeometry(QtCore.QRect(40, 400, 500, 16)) - self.label1_err.setGeometry(QtCore.QRect(40, 400, 500, 16)) - self.label2_err.setGeometry(QtCore.QRect(40, 400, 500, 16)) - self.label3_err.setGeometry(QtCore.QRect(40, 400, 500, 16)) - self.label4_err.setGeometry(QtCore.QRect(40, 400, 500, 16)) - - self.label_IDAnggota = QtWidgets.QLabel(self.groupBox) - self.label_IDAnggota.setGeometry(QtCore.QRect(40, 70, 91, 16)) - self.label_IDAnggota.setObjectName("label_IDAnggota") - self.label_Tanggal = QtWidgets.QLabel(self.groupBox) - self.label_Tanggal.setGeometry(QtCore.QRect(40, 170, 59, 16)) - self.label_Tanggal.setObjectName("label_Tanggal") - self.label_Waktu = QtWidgets.QLabel(self.groupBox) - self.label_Waktu.setGeometry(QtCore.QRect(40, 220, 400, 16)) - self.label_Waktu.setObjectName("label_Waktu") - self.lineEdit_durasi = QtWidgets.QLineEdit(self.groupBox) - self.lineEdit_durasi.setGeometry(QtCore.QRect(40, 140, 59, 21)) - self.lineEdit_durasi.setStyleSheet("background-color: rgb(255, 255, 255);") - self.lineEdit_durasi.setObjectName("lineEdit_durasi") - self.Tanggal = QtWidgets.QDateEdit(self.groupBox) - self.Tanggal.setGeometry(QtCore.QRect(40, 190, 110, 22)) - self.Tanggal.setStyleSheet("background-color: rgb(255, 255, 255);") - self.Tanggal.setObjectName("Tanggal") - self.Jumlah_org = QtWidgets.QSpinBox(self.groupBox) - self.Jumlah_org.setGeometry(QtCore.QRect(40, 290, 42, 21)) - self.Jumlah_org.setStyleSheet("background-color: rgb(255, 255, 255);") - self.Jumlah_org.setObjectName("Jumlah_org") - self.Jumlah_org.setMaximum(15) - self.Jumlah_org.setDisplayIntegerBase(10) - self.pushButton_next = QtWidgets.QPushButton(self.groupBox) - self.pushButton_next.setGeometry(QtCore.QRect(790, 440, 81, 31)) - self.pushButton_next.setStyleSheet("background-color: rgb(222, 109, 97);\n" - "alternate-background-color: rgb(222, 109, 97);") - self.pushButton_next.setObjectName("pushButton_next") - self.pushButton_next.clicked.connect(self.next_clicked) - self.label_Nama = QtWidgets.QLabel(self.groupBox) - self.label_Nama.setGeometry(QtCore.QRect(40, 20, 59, 16)) - self.label_Nama.setObjectName("label_Nama") - self.lineEdit_ID = QtWidgets.QLineEdit(self.groupBox) - self.lineEdit_ID.setGeometry(QtCore.QRect(40, 90, 831, 21)) - self.lineEdit_ID.setStyleSheet("background-color: rgb(255, 255, 255);") - self.lineEdit_ID.setObjectName("lineEdit_ID") - self.lineEdit_Name = QtWidgets.QLineEdit(self.groupBox) - self.lineEdit_Name.setGeometry(QtCore.QRect(40, 40, 831, 21)) - self.lineEdit_Name.setStyleSheet("background-color: rgb(255, 255, 255);") - self.lineEdit_Name.setObjectName("lineEdit_Name") - self.label_Durasi = QtWidgets.QLabel(self.groupBox) - self.label_Durasi.setGeometry(QtCore.QRect(40, 120, 300, 16)) - self.label_Durasi.setObjectName("label_Durasi") - self.Waktu = QtWidgets.QTimeEdit(self.groupBox) - self.Waktu.setGeometry(QtCore.QRect(40, 240, 61, 22)) - self.Waktu.setStyleSheet("background-color: rgb(255, 255, 255);") - self.Waktu.setObjectName("Waktu") - self.label_Jumlahorg = QtWidgets.QLabel(self.groupBox) - self.label_Jumlahorg.setGeometry(QtCore.QRect(40, 270, 91, 16)) - self.label_Jumlahorg.setObjectName("label_Jumlahorg") - self.label_7 = QtWidgets.QLabel(self.Tambah_pemesanan) - self.label_7.setGeometry(QtCore.QRect(210, 60, 551, 71)) - font = QtGui.QFont() - font.setPointSize(30) - self.label_7.setFont(font) - self.label_7.setStyleSheet("") - self.label_7.setAlignment(QtCore.Qt.AlignCenter) - self.label_7.setObjectName("label_7") - self.stackedWidget.addWidget(self.Tambah_pemesanan) - self.Ruangan = QtWidgets.QWidget() - self.Ruangan.setObjectName("Ruangan") - self.groupBox_3 = QtWidgets.QGroupBox(self.Ruangan) - self.groupBox_3.setGeometry(QtCore.QRect(70, 120, 831, 561)) - self.groupBox_3.setStyleSheet("background-color: rgb(79, 144, 132);") - self.groupBox_3.setTitle("") - self.groupBox_3.setObjectName("groupBox_3") - self.label_6 = QtWidgets.QLabel(self.groupBox_3) - self.label_6.setGeometry(QtCore.QRect(220, 290, 401, 81)) - font = QtGui.QFont() - font.setPointSize(40) - self.label_6.setFont(font) - self.label_6.setStyleSheet("background-color: rgb(95, 160, 150);") - self.label_6.setAlignment(QtCore.Qt.AlignCenter) - self.label_6.setObjectName("label_6") - self.label = QtWidgets.QLabel(self.groupBox_3) - self.label.setGeometry(QtCore.QRect(150, 30, 551, 41)) - font = QtGui.QFont() - font.setPointSize(30) - self.label.setFont(font) - self.label.setStyleSheet("background-color: rgb(95, 160, 150);") - self.label.setAlignment(QtCore.Qt.AlignCenter) - self.label.setObjectName("label") - self.ENTER = QtWidgets.QPushButton(self.groupBox_3) - self.ENTER.setGeometry(QtCore.QRect(370, 490, 113, 32)) - self.ENTER.setObjectName("ENTER") - self.ENTER.clicked.connect(self.ruangan_clicked) - - self.labelruang5_err = QtWidgets.QLabel(self.groupBox_3) - self.labelruang5_err.hide() - self.labelruang5_err.setGeometry(QtCore.QRect(330, 530, 190, 16)) - - self.tableView = QtWidgets.QTableWidget(self.groupBox_3) - self.tableView.setGeometry(QtCore.QRect(200, 120, 431, 261)) - sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.tableView.sizePolicy().hasHeightForWidth()) - self.tableView.setSizePolicy(sizePolicy) - self.tableView.setStyleSheet("background-color: rgb(255, 255, 255);") - self.tableView.setObjectName("tableView") - self.lineEdit = QtWidgets.QLineEdit(self.groupBox_3) - self.lineEdit.setGeometry(QtCore.QRect(370, 440, 113, 21)) - self.lineEdit.setStyleSheet("background-color: rgb(255, 255, 255);\n" - "gridline-color: rgb(112, 174, 167);\n" - "border-color: rgb(112, 174, 167);") - self.lineEdit.setText("") - self.lineEdit.setObjectName("lineEdit") - self.label_10 = QtWidgets.QLabel(self.groupBox_3) - self.label_10.setGeometry(QtCore.QRect(370, 420, 111, 20)) - self.label_10.setAlignment(QtCore.Qt.AlignCenter) - self.label_10.setObjectName("label_10") - self.stackedWidget.addWidget(self.Ruangan) - self.berhasil = QtWidgets.QWidget() - self.berhasil.setObjectName("berhasil") - self.groupBox_2 = QtWidgets.QGroupBox(self.berhasil) - self.groupBox_2.setGeometry(QtCore.QRect(60, 140, 831, 561)) - self.groupBox_2.setStyleSheet("background-color: rgb(222, 109, 97);") - self.groupBox_2.setTitle("") - self.groupBox_2.setObjectName("groupBox_2") - self.label_3 = QtWidgets.QLabel(self.groupBox_2) - self.label_3.setGeometry(QtCore.QRect(220, 290, 401, 81)) - font = QtGui.QFont() - font.setPointSize(40) - self.label_3.setFont(font) - self.label_3.setStyleSheet("background-color: rgb(95, 160, 150);") - self.label_3.setAlignment(QtCore.Qt.AlignCenter) - self.label_3.setObjectName("label_3") - self.label_5 = QtWidgets.QLabel(self.groupBox_2) - self.label_5.setGeometry(QtCore.QRect(220, 390, 401, 61)) - font = QtGui.QFont() - font.setPointSize(40) - self.label_5.setFont(font) - self.label_5.setStyleSheet("background-color: rgb(95, 160, 150);") - self.label_5.setAlignment(QtCore.Qt.AlignCenter) - self.label_5.setObjectName("label_5") - self.label_2 = QtWidgets.QLabel(self.groupBox_2) - self.label_2.setGeometry(QtCore.QRect(50, 50, 731, 111)) - font = QtGui.QFont() - font.setPointSize(40) - self.label_2.setFont(font) - self.label_2.setStyleSheet("background-color: rgb(112, 174, 167);") - self.label_2.setAlignment(QtCore.Qt.AlignCenter) - self.label_2.setObjectName("label_2") - self.pushButton_5 = QtWidgets.QPushButton(self.groupBox_2) - self.pushButton_5.setGeometry(QtCore.QRect(360, 500, 141, 31)) - self.pushButton_5.setObjectName("pushButton_5") - self.pushButton_5.clicked.connect(self.kembalimenu_clicked) - self.stackedWidget.addWidget(self.berhasil) - self.vlayout_pemesanan.addWidget(self.stackedWidget) - self.horizontalLayout.addLayout(self.vlayout_pemesanan) - self.line = QtWidgets.QFrame(self.centralwidget) - self.line.setFrameShape(QtWidgets.QFrame.VLine) - self.line.setFrameShadow(QtWidgets.QFrame.Sunken) - self.line.setObjectName("line") - self.horizontalLayout.addWidget(self.line) - spacerItem5 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem5) - spacerItem6 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout.addItem(spacerItem6) - MainWindow.setCentralWidget(self.centralwidget) - self.retranslateUi(MainWindow) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - reg_ex = QRegExp("[0-9]+.?[0-9]{,1}") - input_validator = QRegExpValidator(reg_ex, self.lineEdit_durasi) - input_validator1 = QRegExpValidator(reg_ex, self.lineEdit_ID) - self.lineEdit_durasi.setValidator(input_validator) - self.lineEdit_ID.setValidator(input_validator1) - self.lineEdit.setValidator(QtGui.QIntValidator(1,30)) - - def ruangan_clicked(self) : - jumlahorg = int(self.Jumlah_org.text()) - waktu = func.parserTime(self.Waktu.text()) - tanggal = func.parserDate(self.Tanggal.text()) - durasi = int(self.lineEdit_durasi.text()) - tersedia = func.tersedia(jumlahorg, waktu, tanggal, durasi) - - if (tersedia.get(int(self.lineEdit.text())) != None) : - self.stackedWidget.setCurrentIndex(2) - harga = int(self.lineEdit_durasi.text()) * func.getHargaRuangan(self.lineEdit.text()) - func.tambahPesanan(self.lineEdit_Name.text(), int(self.lineEdit_durasi.text()), func.parserDate(self.Tanggal.text()), func.Time(self.Waktu.text()),int(self.lineEdit.text()), int(self.lineEdit_ID.text()),harga) - self.label_5.setText(str(func.getMaxNomorAntrian())) - else : - self.stackedWidget.setCurrentIndex(1) - self.labelruang5_err.show() - self.lineEdit.clear() - - - def next_clicked(self): - try : - valid = 0 - if ((func.parserDate(self.Tanggal.text())) != datetime.date.today()) : - valid = 1 - elif (func.findAnggota(int(self.lineEdit_ID.text())) == False) : - valid = 2 - elif (func.Time(self.Waktu.text()) <= datetime.datetime.now().time()) : - valid = 3 - - if (valid == 0) : - self.stackedWidget.setCurrentIndex(1) - jumlahorg = int(self.Jumlah_org.text()) - waktu = func.parserTime(self.Waktu.text()) - tanggal = func.parserDate(self.Tanggal.text()) - durasi = int(self.lineEdit_durasi.text()) - tersedia = func.tersedia(jumlahorg, waktu, tanggal, durasi) - - if (len(tersedia) > 0) : - self.tableView.setColumnCount(3) - self.tableView.setHorizontalHeaderLabels(['Nomor Ruangan', 'Jenis', 'Ukuran']) - data1 = [] - data2 = [] - data3 = [] - for i in (tersedia) : - data1.append(i) - data2.append(tersedia[i]["jenis"]) - data3.append(tersedia[i]["ukuran"]) - self.tableView.setRowCount(len(tersedia)) - for index in range(len(tersedia)): - item = QtWidgets.QTableWidgetItem(str(data1[index])) - self.tableView.setItem(index,0,item) - item2 = QtWidgets.QTableWidgetItem(data2[index]) - self.tableView.setItem(index,1,item2) - item3 = QtWidgets.QTableWidgetItem(data3[index]) - self.tableView.setItem(index,2,item3) - else : - self.label3_err.show() - elif (valid == 1): - self.stackedWidget.setCurrentIndex(0) - self.label_err.show() - elif (valid == 2) : - self.stackedWidget.setCurrentIndex(0) - self.label1_err.show() - self.lineEdit_ID.clear() - elif (valid == 3) : - self.stackedWidget.setCurrentIndex(0) - self.label2_err.show() - except : - self.stackedWidget.setCurrentIndex(0) - self.label4_err.show() - - - - def kembalimenu_clicked(self) : - self.stackedWidget.setCurrentIndex(0) - self.lineEdit_durasi.clear() - self.lineEdit_ID.clear() - self.lineEdit_Name.clear() - self.Jumlah_org.clear() - self.label_err.hide() - self.label1_err.hide() - self.label2_err.hide() - self.label3_err.hide() - - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "SansK")) - self.button_pemesanan.setText(_translate("MainWindow", "Pemesanan")) - self.button_pembayaran.setText(_translate("MainWindow", "Pembayaran")) - self.button_anggota.setText(_translate("MainWindow", "Anggota")) - self.button_kkeluar.setText(_translate("MainWindow", "Keluar")) - self.label_IDAnggota.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" color:#ffffff;\">ID Anggota</span></p></body></html>")) - self.Tanggal.setDisplayFormat(_translate("MainWindow",str(datetime.date))) - self.label_Tanggal.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" color:#ffffff;\">Tanggal</span></p></body></html>")) - self.Waktu.setDisplayFormat(_translate("MainWindow","HH")) - self.label_Waktu.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" color:#fbfbfb;\">Waktu (Hanya dapat memasuki jam)</span></p></body></html>")) - self.pushButton_next.setText(_translate("MainWindow", "Next")) - self.label_Nama.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" color:#ffffff;\">Nama </span></p></body></html>")) - self.label_Durasi.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" color:#ffffff;\">Durasi (Dalam jam)</span></p></body></html>")) - self.label_Jumlahorg.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" color:#ffffff;\">Jumlah Orang</span></p></body></html>")) - self.label_7.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:64pt;\">PEMESANAN</span></p></body></html>")) - self.label_6.setText(_translate("MainWindow", "NOMOR ANTRIAN")) - self.label.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-weight:600;\">RUANGAN YANG TERSEDIA</span></p></body></html>")) - self.lineEdit.setText(_translate("MainWindow", "")) - self.label_3.setText(_translate("MainWindow", "NOMOR ANTRIAN")) - self.label_2.setText(_translate("MainWindow", "PESANAN BERHASIL !!")) - self.pushButton_5.setText(_translate("MainWindow", "kembali ke menu")) - self.label_err.setText(_translate("MainWindow", "Tidak bisa pesan selain hari ini!")) - self.label1_err.setText(_translate("MainWindow", "IDAnggota tidak ada!")) - self.label2_err.setText(_translate("MainWindow", "Waktu sudah lewat!")) - self.label3_err.setText(_translate("MainWindow", "Tidak ada ruangan yang tersedia!")) - self.label4_err.setText(_translate("MainWindow", "Masukan tidak valid!")) - self.labelruang5_err.setText(_translate("MainWindow", "Nomor Ruangan tidak tersedia!")) - self.ENTER.setText(_translate("MainWindow", "ENTER")) - self.label_10.setText(_translate("MainWindow", "Nomor Ruangan:")) - -if __name__ == "__main__": - import sys - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Pemesanan() - ui.setupUi(MainWindow) - MainWindow.show() - sys.exit(app.exec_()) diff --git a/riwayatTransaksi/README_ rt.md b/riwayatTransaksi/README_ rt.md deleted file mode 100644 index 61d61d8c269db6072ee1cb1e4876b140b30b8ee1..0000000000000000000000000000000000000000 --- a/riwayatTransaksi/README_ rt.md +++ /dev/null @@ -1,22 +0,0 @@ -# IF2250-2020-K02-2-SansKManajemen - -MODUL RIWAYAT TRANSAKSI -Penanggung jawab: Annisa Rahim - -fungsi modul ini antara lain: -1. Menampilkan Riwayat Transaksi yang mengacu pada database Manajemen Karaoke Sans K -2. Menampilkan hasil pencarian berdasarkan input nomorTransaksi dari user -3. Menampilkan riwayat transaksi berdasarkan tanggal yang dipilih oleh user - -cara memanggil fungsi: -1. fungsi pertama akan muncul saat program pertama dijalankan -2. fungsi kedua akan dijalankan saat user memasukkan input di textedit searchInput dan -menekan button 'search' -3. fungsi ketiga akan dijalankan saat user menekan button 'ganti tanggal' dan mengganti -tanggal pada dateEdit - -catatan tambahan: --program akan meminta input password mysql sebelum menjalankan gui --pada fungsi ke-2, jika tidak ada input dari user fungsi akan menghasilkan -seluruh data riwayat transaksi yang ada di database --pada fungsi ke-3 default date yang muncul pertama adalah tanggal hari ini diff --git a/riwayatTransaksi/RiwayatTransaksi.py b/riwayatTransaksi/RiwayatTransaksi.py deleted file mode 100644 index edee699939f29d8015491248f3817cb5d5222b40..0000000000000000000000000000000000000000 --- a/riwayatTransaksi/RiwayatTransaksi.py +++ /dev/null @@ -1,241 +0,0 @@ -# -*- coding: utf-8 -*- -# Form implementation generated from reading ui file 'C:\Users\Annisa Rahim\Desktop\if2250-2020-k02-2-sanskmanajemen\gui.ui' -# Created by: PyQt5 UI code generator 5.13.0 -''' -MODUL RIWAYAT TRANSAKSI --Kelompok 2 k2 sansK Management- -Penanggung jawab: -Nama: Annisa Rahim -NIM : 13518089 - -fungsi modul ini antara lain: -1. Menampilkan Riwayat Transaksi yang mengacu pada database Manajemen Karaoke Sans K (selectall,loadData) -2. Menampilkan hasil pencarian berdasarkan input nomorTransaksi dari user (search, searchbyNum) -3. Menampilkan riwayat transaksi berdasarkan tanggal yang dipilih oleh user (searchbyDate, dateMode, onDateChanged) - -catatan tambahan: --pada fungsi ke-2, jika tidak ada input dari user fungsi akan menghasilkan -seluruh data riwayat transaksi yang ada di database --pada fungsi ke-3 default date yang muncul pertama adalah tanggal hari ini -''' -import sqlalchemy as db -from sqlalchemy import func -from sqlalchemy import cast, Date -from datetime import datetime - -from PyQt5 import QtCore, QtGui, QtWidgets -from PyQt5.QtCore import Qt - -class Ui_MainWindow(object): - - def setupUi(self, MainWindow): - MainWindow.setObjectName("MainWindow") - MainWindow.resize(1237, 860) - MainWindow.setStyleSheet("background-color: rgb(237, 231, 226);\n" -"\n" -"") - self.centralwidget = QtWidgets.QWidget(MainWindow) - self.centralwidget.setObjectName("centralwidget") - self.verticalLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget) - self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(160, 160, 1051, 631)) - self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2") - self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2) - self.verticalLayout.setContentsMargins(0, 0, 0, 0) - self.verticalLayout.setObjectName("verticalLayout") - self.tableWidget = QtWidgets.QTableWidget(self.verticalLayoutWidget_2) - self.tableWidget.setStyleSheet("background-color: rgb();\n" -"\n" -"") - self.tableWidget.setColumnCount(10) - self.tableWidget.setObjectName("tableWidget") - self.tableWidget.horizontalHeader().setCascadingSectionResizes(False) - self.tableWidget.setHorizontalHeaderLabels(["No. Transaksi", "No. Antrian","Nama", "ID Anggota", "Durasi", "Tanggal", "Waktu", "No. Ruangan", "Harga", "Waktu Pembayaran"]) - self.verticalLayout.addWidget(self.tableWidget) - self.horizontalLayoutWidget = QtWidgets.QWidget(self.centralwidget) - self.horizontalLayoutWidget.setGeometry(QtCore.QRect(430, 110, 781, 51)) - self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget") - self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget) - self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_2.setObjectName("horizontalLayout_2") - self.searchButton = QtWidgets.QPushButton(self.horizontalLayoutWidget) - self.searchButton.setObjectName("searchButton") - self.searchButton.clicked.connect(self.search) - self.horizontalLayout_2.addWidget(self.searchButton) - spacerItem = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum) - self.horizontalLayout_2.addItem(spacerItem) - self.dateButton = QtWidgets.QPushButton(self.horizontalLayoutWidget) - self.dateButton.setObjectName("dateButton") - self.horizontalLayout_2.addWidget(self.dateButton) - self.dateButton.clicked.connect(self.dateMode) - self.tanggal = QtWidgets.QLabel(self.horizontalLayoutWidget) - self.tanggal.hide() - self.tanggal.setObjectName("tanggal") - self.horizontalLayout_2.addWidget(self.tanggal) - self.dateEdit = QtWidgets.QDateEdit(self.horizontalLayoutWidget) - self.dateEdit.hide() - self.dateEdit.setObjectName("dateEdit") - - self.horizontalLayout_2.addWidget(self.dateEdit) - self.button_keluar = QtWidgets.QPushButton(self.centralwidget) - self.button_keluar.setGeometry(QtCore.QRect(20, 720, 100, 51)) - self.button_keluar.setMinimumSize(QtCore.QSize(0, 50)) - self.button_keluar.setMaximumSize(QtCore.QSize(100, 16777215)) - font = QtGui.QFont() - font.setFamily("Microsoft New Tai Lue") - font.setPointSize(10) - self.button_keluar.setFont(font) - self.button_keluar.setStyleSheet("background-color:rgb(135, 182, 166);\n" -"color:rgb(255, 220, 179);") - self.button_keluar.setObjectName("button_keluar") - self.searchInput = QtWidgets.QPlainTextEdit(self.centralwidget) - self.searchInput.setGeometry(QtCore.QRect(310, 120, 111, 31)) - self.searchInput.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.AdjustToContents) - self.searchInput.setObjectName("searchInput") - self.horizontalLayoutWidget_2 = QtWidgets.QWidget(self.centralwidget) - self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(160, 110, 131, 51)) - self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2") - self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2) - self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_3.setObjectName("horizontalLayout_3") - self.no_antrian = QtWidgets.QLabel(self.horizontalLayoutWidget_2) - font = QtGui.QFont() - font.setPointSize(8) - self.no_antrian.setFont(font) - self.no_antrian.setObjectName("no_antrian") - self.horizontalLayout_3.addWidget(self.no_antrian) - self.horizontalLayoutWidget_3 = QtWidgets.QWidget(self.centralwidget) - self.horizontalLayoutWidget_3.setGeometry(QtCore.QRect(140, 10, 1071, 91)) - self.horizontalLayoutWidget_3.setObjectName("horizontalLayoutWidget_3") - self.horizontalLayout_4 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_3) - self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0) - self.horizontalLayout_4.setObjectName("horizontalLayout_4") - self.RiwayatTransaksi = QtWidgets.QLabel(self.horizontalLayoutWidget_3) - font = QtGui.QFont() - font.setFamily("MS Sans Serif") - font.setPointSize(20) - font.setBold(True) - font.setWeight(75) - self.RiwayatTransaksi.setFont(font) - self.RiwayatTransaksi.setStyleSheet("color:rgb(95, 81, 94)") - self.RiwayatTransaksi.setAlignment(QtCore.Qt.AlignCenter) - self.RiwayatTransaksi.setObjectName("RiwayatTransaksi") - self.horizontalLayout_4.addWidget(self.RiwayatTransaksi) - self.label = QtWidgets.QLabel(self.centralwidget) - self.label.setGeometry(QtCore.QRect(10, 10, 131, 121)) - self.label.setText("") - self.label.setPixmap(QtGui.QPixmap(":/logo.jpg")) - self.label.setScaledContents(True) - self.label.setObjectName("label") - MainWindow.setCentralWidget(self.centralwidget) - - self.retranslateUi(MainWindow) - QtCore.QMetaObject.connectSlotsByName(MainWindow) - - def retranslateUi(self, MainWindow): - _translate = QtCore.QCoreApplication.translate - MainWindow.setWindowTitle(_translate("MainWindow", "Riwayat Transaksi")) - self.searchButton.setText(_translate("MainWindow", "search")) - self.dateButton.setText(_translate("MainWindow", "Ganti Tanggal")) - self.tanggal.setText(_translate("MainWindow", "Tanggal")) - self.dateEdit.setDisplayFormat(_translate("MainWindow", "dd/MM/yyyy")) - self.button_keluar.setText(_translate("MainWindow", "Keluar")) - self.no_antrian.setText(_translate("MainWindow", "Nomor Transaksi:")) - self.RiwayatTransaksi.setText(_translate("MainWindow", "Riwayat Transaksi")) - - def loadData(self,result): - self.tableWidget.setRowCount(0) - if (result!=[]): - ir=0 - for row in (result): - self.tableWidget.insertRow(ir) - ic=0 - for column in row: - item=QtWidgets.QTableWidgetItem(str(column)) - item.setTextAlignment(Qt.AlignCenter) - self.tableWidget.setItem(ir,ic, item) - ic+=1 - ir+=1 - # change the alignment - header=self.tableWidget.horizontalHeader() - header.setSectionResizeMode(0, QtWidgets.QHeaderView.ResizeToContents) - for i in range (1,ic): - header.setSectionResizeMode(i, QtWidgets.QHeaderView.ResizeToContents) - - def search(self): - table=[] - input = self.searchInput.toPlainText() - if (input==""): - table=selectall() - else: - table=searchByNum(input) - self.loadData(table) - - def dateMode(self): - table=[] - - year=int(datetime.today().strftime('%Y')) - month=int(datetime.today().strftime('%m')) - day=int(datetime.today().strftime('%d')) - self.dateEdit.setDateTime(QtCore.QDateTime(QtCore.QDate(year, month, day), QtCore.QTime(0, 0, 0))) - self.dateEdit.show() - self.tanggal.show() - - fulldate=datetime.today().strftime('%Y/%m/%d') - table=searchByDate(fulldate) - self.loadData(table) - self.dateEdit.dateChanged.connect(self.onDateChanged) - - def onDateChanged(self): - table=[] - fulldate=str(self.dateEdit.date().toPyDate()) - table=searchByDate(fulldate) - self.loadData(table) - - - - - -def createEngine(user, password, host, port, db_name) : - name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name - return (db.create_engine(name_engine)) - -def searchByNum(number): - query=db.select([rt]).where(rt.columns.NomorTransaksi == number) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -def selectall(): - query=db.select([rt]) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -def searchByDate(date): - query=db.select([rt]).where(func.DATE(rt.columns.WaktuPembayaran) == date) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -if __name__ == "__main__": - import sys - - # database setup - password=input("masukkan password: ") - engine = createEngine('root',password,'localhost','3306','sansK') - connection = engine.connect() - metadata = db.MetaData() - rt = db.Table ('riwayattransaksi', metadata, autoload=True, autoload_with=engine) - - # ui setup - app = QtWidgets.QApplication(sys.argv) - MainWindow = QtWidgets.QMainWindow() - ui = Ui_MainWindow() - ui.setupUi(MainWindow) - - # inisialisasi table - fulltable=selectall() - ui.loadData(fulltable) - - MainWindow.show() - sys.exit(app.exec_()) diff --git a/riwayatTransaksi/__pycache__/test_rc.cpython-37.pyc b/riwayatTransaksi/__pycache__/test_rc.cpython-37.pyc deleted file mode 100644 index 885c86c00504549f0533f9cf7681d3e241c8130f..0000000000000000000000000000000000000000 Binary files a/riwayatTransaksi/__pycache__/test_rc.cpython-37.pyc and /dev/null differ diff --git a/riwayatTransaksi/functions.py b/riwayatTransaksi/functions.py deleted file mode 100644 index 8d20f122daa78fbad34b6d3aab36fa94a9d6ff6c..0000000000000000000000000000000000000000 --- a/riwayatTransaksi/functions.py +++ /dev/null @@ -1,73 +0,0 @@ -import sqlalchemy as db -from sqlalchemy import func -from sqlalchemy import cast, Date - -def createEngine(user, password, host, port, db_name) : - name_engine = "mysql+pymysql://" + user + ":" + password + "@" + host + ":" + port + "/" + db_name - print("Connecting") - return (db.create_engine(name_engine)) - -# search by datetime -def searchByDatetime(datetime): - query=db.select([rt]).where(rt.columns.WaktuPembayaran == datetime) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -# search by date -def searchByDate(date): - query=db.select([rt]).where(func.DATE(rt.columns.WaktuPembayaran) == date) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -# search by nomor antrian -def searchByNum(number): - query=db.select([rt]).where(rt.columns.NomorAntrian == number) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -# search by name -def searchByName(name): - query=db.select([rt]).where(rt.columns.Nama == name) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - -# select * from riwayat transaksi -def tampilkan(): - query=db.select([rt]) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet - - -def countrow(): - query=db.select([func.count()]).select_from(rt) - ResultProxy = connection.execute(query) - ResultSet = ResultProxy.fetchall() - return ResultSet[0][0] - -# main - -''' -password=input("masukkan password:") -engine = createEngine('root',password,'localhost','3306','RPL') -connection = engine.connect() -metadata = db.MetaData() - -rt = db.Table ('riwayat_transaksi', metadata, autoload=True, autoload_with=engine) -d = input("masukkan tanggal pembayaran: ") -hasil=searchByDate(d) -for row in (hasil): - for column in row: - print (column) -n = input("masukkan nomor antrian: ") -if (searchByNum(n)==[]): - print("tida ada gais") - - -name = input("masukkan nama: ") -print(searchByName(name)) -''' \ No newline at end of file diff --git a/riwayatTransaksi/logo.jpg b/riwayatTransaksi/logo.jpg deleted file mode 100644 index dfdc4b9fc9967e8b1c5f7acf7fcb9f08ebe04e2b..0000000000000000000000000000000000000000 Binary files a/riwayatTransaksi/logo.jpg and /dev/null differ diff --git a/riwayatTransaksi/sansK2020.sql b/riwayatTransaksi/sansK2020.sql deleted file mode 100644 index b64406601fc9eb30c405b2aeaf2528c623c3528f..0000000000000000000000000000000000000000 --- a/riwayatTransaksi/sansK2020.sql +++ /dev/null @@ -1,186 +0,0 @@ -# ************************************************************ -# Sequel Pro SQL dump -# Version 5446 -# -# https://www.sequelpro.com/ -# https://github.com/sequelpro/sequelpro -# -# Host: 127.0.0.1 (MySQL 8.0.19) -# Database: rpl -# Generation Time: 2020-04-12 07:04:42 +0000 -# ************************************************************ - - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!40101 SET NAMES utf8 */; -SET NAMES utf8mb4; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - - -# Dump of table DaftarPemesanan -# ------------------------------------------------------------ - -DROP TABLE IF EXISTS `DaftarPemesanan`; - -CREATE TABLE `DaftarPemesanan` ( - `NomorAntrian` int NOT NULL AUTO_INCREMENT, - `Nama` char(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, - `Durasi` int DEFAULT NULL, - `Tanggal` date DEFAULT NULL, - `Waktu` time DEFAULT NULL, - `NomorRuangan` int NOT NULL, - `StatusPemesanan` char(20) DEFAULT NULL, - `Harga` int DEFAULT NULL, - `IDAnggota` bigint DEFAULT NULL, - PRIMARY KEY (`NomorAntrian`), - KEY `NomorRuangan` (`NomorRuangan`), - KEY `IDAnggota` (`IDAnggota`), - CONSTRAINT `daftarpemesanan_ibfk_1` FOREIGN KEY (`NomorRuangan`) REFERENCES `DaftarRuangan` (`NomorRuangan`), - CONSTRAINT `daftarpemesanan_ibfk_2` FOREIGN KEY (`IDAnggota`) REFERENCES `keanggotaan` (`IDAnggota`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; - -LOCK TABLES `DaftarPemesanan` WRITE; -/*!40000 ALTER TABLE `DaftarPemesanan` DISABLE KEYS */; - -INSERT INTO `DaftarPemesanan` (`NomorAntrian`, `Nama`, `Durasi`, `Tanggal`, `Waktu`, `NomorRuangan`, `StatusPemesanan`, `Harga`, `IDAnggota`) -VALUES - (1,'yuhu',2,'2020-04-08','08:00:00',1,'memesan',NULL,NULL), - (2,'lucu',2,'2020-04-08','10:00:00',1,'memesan',NULL,NULL), - (3,'hihu',3,'2020-04-08','08:00:00',6,'memesan',NULL,NULL), - (4,'hilu',2,'2020-04-12','15:00:00',3,'memesan',NULL,2), - (5,'cyn',2,'2020-04-12','20:00:00',11,'memesan',NULL,1), - (6,'Aya',2,'2020-04-12','15:00:00',1,'memesan',100000,1), - (7,'athena',2,'2020-04-12','20:00:00',1,'memesan',100000,5), - (8,'yey',2,'2020-04-12','14:00:00',21,'memesan',220000,2), - (9,'qwerty',2,'2020-04-12','20:00:00',30,'memesan',190000,2), - (10,'aya',1,'2020-04-12','14:00:00',22,'memesan',110000,5), - (11,'asd',2,'2020-04-12','19:00:00',2,'memesan',100000,2), - (12,'lilu',2,'2020-04-12','20:00:00',10,'memesan',70000,2), - (13,'qwerty',2,'2020-04-12','20:00:00',9,'memesan',70000,4); - -/*!40000 ALTER TABLE `DaftarPemesanan` ENABLE KEYS */; -UNLOCK TABLES; - - -# Dump of table DaftarRuangan -# ------------------------------------------------------------ -DROP TABLE IF EXISTS `DaftarRuangan`; - -CREATE TABLE `DaftarRuangan` ( - `NomorRuangan` int NOT NULL AUTO_INCREMENT, - `Jenis` char(6) DEFAULT NULL, - `Ukuran` char(6) DEFAULT NULL, - `Harga` int DEFAULT NULL, - PRIMARY KEY (`NomorRuangan`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; - -LOCK TABLES `DaftarRuangan` WRITE; -/*!40000 ALTER TABLE `DaftarRuangan` DISABLE KEYS */; - -INSERT INTO `DaftarRuangan` (`NomorRuangan`, `Jenis`, `Ukuran`, `Harga`) -VALUES - (1,'VIP','Small',50000), - (2,'VIP','Small',50000), - (3,'VIP','Small',50000), - (4,'VIP','Small',50000), - (5,'VIP','Small',50000), - (6,'nonVIP','Small',35000), - (7,'nonVIP','Small',35000), - (8,'nonVIP','Small',35000), - (9,'nonVIP','Small',35000), - (10,'nonVIP','Small',35000), - (11,'VIP','Medium',80000), - (12,'VIP','Medium',80000), - (13,'VIP','Medium',80000), - (14,'VIP','Medium',80000), - (15,'VIP','Medium',80000), - (16,'nonVIP','Medium',65000), - (17,'nonVIP','Medium',65000), - (18,'nonVIP','Medium',65000), - (19,'nonVIP','Medium',65000), - (20,'nonVIP','Medium',65000), - (21,'VIP','Large',110000), - (22,'VIP','Large',110000), - (23,'VIP','Large',110000), - (24,'VIP','Large',110000), - (25,'VIP','Large',110000), - (26,'nonVIP','Large',95000), - (27,'nonVIP','Large',95000), - (28,'nonVIP','Large',95000), - (29,'nonVIP','Large',95000), - (30,'nonVIP','Large',95000); - -/*!40000 ALTER TABLE `DaftarRuangan` ENABLE KEYS */; -UNLOCK TABLES; - - -# Dump of table Keanggotaan -# ------------------------------------------------------------ - -DROP TABLE IF EXISTS `Keanggotaan`; - -CREATE TABLE `Keanggotaan` ( - `IDAnggota` bigint NOT NULL, - `Nama` varchar(20) NOT NULL, - `NomorIdentitas` bigint NOT NULL, - `TanggalAktif` date NOT NULL, - PRIMARY KEY (`IDAnggota`), - UNIQUE KEY `NomorIdentitas` (`NomorIdentitas`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; - -LOCK TABLES `Keanggotaan` WRITE; -/*!40000 ALTER TABLE `keanggotaan` DISABLE KEYS */; - -INSERT INTO `Keanggotaan` (`IDAnggota`, `Nama`, `NomorIdentitas`, `TanggalAktif`) -VALUES - (1,'Joe Benjamin',3244012333456760,'2020-12-02'), - (2,'Lucy Jackson',3324400000034650,'2019-07-23'), - (3,'Avery Hope',3702156934560010,'2019-08-15'), - (4,'Ted Harold',3620012340012130,'2020-01-22'), - (5,'Vey Gerald',3020017740012127,'2020-02-20'); - -/*!40000 ALTER TABLE `Keanggotaan` ENABLE KEYS */; -UNLOCK TABLES; - -# Dump of table RiwayatTransaksi -# ------------------------------------------------------------ - -DROP TABLE IF EXISTS `RiwayatTransaksi`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `RiwayatTransaksi` ( - `NomorTransaksi` int NOT NULL AUTO_INCREMENT, - `NomorAntrian` int NOT NULL, - `Nama` varchar(20) NOT NULL, - `Durasi` int NOT NULL, - `Tanggal` date NOT NULL, - `Waktu` time NOT NULL, - `NomorRuangan` int NOT NULL, - `Harga` int NOT NULL, - `WaktuPembayaran` datetime NOT NULL, - PRIMARY KEY (`NomorTransaksi`) -) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `riwayattransaksi` --- - -LOCK TABLES `riwayattransaksi` WRITE; -/*!40000 ALTER TABLE `riwayattransaksi` DISABLE KEYS */; -INSERT INTO `riwayattransaksi` VALUES (1,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-09 00:13:55'),(2,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:37:56'),(3,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:49:17'),(4,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:49:56'),(5,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 22:51:28'),(6,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:00:04'),(7,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:02:27'),(8,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:16:18'),(9,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:17:07'),(10,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:19:26'),(11,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:19:53'),(12,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:23:17'),(13,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:24:35'),(14,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:24:56'),(15,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:25:33'),(16,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:28:43'),(17,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:30:40'),(18,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:31:10'),(19,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:32:02'),(20,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:34:50'),(21,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-11 23:38:25'),(22,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:30:26'),(23,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:32:47'),(24,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:33:37'),(25,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:39:47'),(26,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:45:14'),(27,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 05:46:51'),(28,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:42:26'),(29,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:44:26'),(30,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:45:27'),(31,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:45:36'),(32,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:46:11'),(33,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:52:11'),(34,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:52:37'),(35,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 06:55:11'),(36,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-12 07:11:54'); -/*!40000 ALTER TABLE `riwayattransaksi` ENABLE KEYS */; -UNLOCK TABLES; - - - -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; diff --git a/riwayatTransaksi/test.qrc b/riwayatTransaksi/test.qrc deleted file mode 100644 index 0df3def5b0df95ba7de972ef72d9a14b57a6b085..0000000000000000000000000000000000000000 --- a/riwayatTransaksi/test.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<RCC> - <qresource> - <file>logo.jpg</file> - </qresource> -</RCC> diff --git a/riwayatTransaksi/test_rc.py b/riwayatTransaksi/test_rc.py deleted file mode 100644 index e29a01e116e96be6df577668995ab69f5f53cebb..0000000000000000000000000000000000000000 --- a/riwayatTransaksi/test_rc.py +++ /dev/null @@ -1,2587 +0,0 @@ -# -*- coding: utf-8 -*- - -# Resource object code -# -# Created by: The Resource Compiler for PyQt5 (Qt v5.13.0) -# -# WARNING! All changes made in this file will be lost! - -from PyQt5 import QtCore - -qt_resource_data = b"\ -\x00\x00\x9e\x92\ -\xff\ -\xd8\xff\xe0\x00\x10\x4a\x46\x49\x46\x00\x01\x01\x00\x00\x01\x00\ -\x01\x00\x00\xff\xdb\x00\x43\x00\x0a\x07\x07\x08\x07\x06\x0a\x08\ -\x08\x08\x0b\x0a\x0a\x0b\x0e\x18\x10\x0e\x0d\x0d\x0e\x1d\x15\x16\ -\x11\x18\x23\x1f\x25\x24\x22\x1f\x22\x21\x26\x2b\x37\x2f\x26\x29\ -\x34\x29\x21\x22\x30\x41\x31\x34\x39\x3b\x3e\x3e\x3e\x25\x2e\x44\ -\x49\x43\x3c\x48\x37\x3d\x3e\x3b\xff\xdb\x00\x43\x01\x0a\x0b\x0b\ -\x0e\x0d\x0e\x1c\x10\x10\x1c\x3b\x28\x22\x28\x3b\x3b\x3b\x3b\x3b\ -\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\ -\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\ -\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\x3b\xff\xc0\x00\ -\x11\x08\x05\x00\x05\x00\x03\x01\x22\x00\x02\x11\x01\x03\x11\x01\ -\xff\xc4\x00\x1c\x00\x01\x00\x02\x02\x03\x01\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x01\x06\x05\x07\x02\x03\x04\x08\xff\xc4\ -\x00\x53\x10\x01\x00\x01\x02\x03\x03\x09\x05\x04\x06\x06\x06\x09\ -\x04\x02\x03\x00\x01\x02\x03\x04\x05\x11\x06\x07\x21\x12\x17\x31\ -\x36\x41\x55\x71\xb3\xd2\x13\x22\x51\x83\x93\x32\x61\x81\xa4\x14\ -\x42\x52\x72\x91\xa1\x15\x23\x33\x35\xb1\xb2\x34\x54\x62\x73\x74\ -\x75\x16\x24\x25\x37\x82\x92\xc1\xc2\xd1\x26\x43\x53\x95\x56\xe1\ -\x94\xd3\xf0\xff\xc4\x00\x17\x01\x01\x01\x01\x01\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x02\x03\xff\xc4\x00\x1d\ -\x11\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\ -\x00\x00\x01\x11\x31\x02\x12\x21\x41\x22\x51\xff\xda\x00\x0c\x03\ -\x01\x00\x02\x11\x03\x11\x00\x3f\x00\xdb\xe0\x39\x34\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x03\xcd\x98\xe6\x38\x4c\xa7\x01\ -\x73\x1d\x8e\xbd\xec\x70\xf6\xb4\xe5\xd7\xc9\x9a\xb4\xd6\x62\x23\ -\x84\x44\xcf\x4c\xc0\x3d\x22\xb3\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\ -\x93\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x2b\x95\x56\x61\x59\xe7\x1f\ -\x64\xbb\xde\x3e\x85\xdf\x49\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\ -\x28\xb3\x0a\xcf\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4e\x71\xf6\x4b\ -\xbd\xe3\xe8\x5d\xf4\x99\x45\x98\x56\x79\xc7\xd9\x2e\xf7\x8f\xa1\ -\x77\xd2\x73\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xca\x2c\xc2\xb3\xce\ -\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x9c\x7d\x92\xef\x78\xfa\x17\x7d\ -\x26\x51\x66\x15\x9e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x9c\xe3\xec\ -\x97\x7b\xc7\xd0\xbb\xe9\x32\x8b\x30\xac\xf3\x8f\xb2\x5d\xef\x1f\ -\x42\xef\xa4\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\x94\x59\x85\x67\ -\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x27\x38\xfb\x25\xde\xf1\xf4\x2e\ -\xfa\x4c\xa2\xcc\x2b\x3c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x39\xc7\ -\xd9\x2e\xf7\x8f\xa1\x77\xd2\x65\x16\x61\x59\xe7\x1f\x64\xbb\xde\ -\x3e\x85\xdf\x49\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x28\xb3\x0a\ -\xcf\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4e\x71\xf6\x4b\xbd\xe3\xe8\ -\x5d\xf4\x99\x45\x98\x56\x79\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x73\ -\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xca\x2c\xc2\xb3\xce\x3e\xc9\x77\ -\xbc\x7d\x0b\xbe\x93\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x26\x51\x66\ -\x15\x9e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x9c\xe3\xec\x97\x7b\xc7\ -\xd0\xbb\xe9\x32\x8b\x30\xac\xf3\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\ -\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\x94\x59\x85\x67\x9c\x7d\x92\ -\xef\x78\xfa\x17\x7d\x27\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4c\xa2\ -\xcc\x2b\x3c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x39\xc7\xd9\x2e\xf7\ -\x8f\xa1\x77\xd2\x65\x16\x61\x59\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\ -\x49\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x28\xb3\x0a\xcf\x38\xfb\ -\x25\xde\xf1\xf4\x2e\xfa\x4e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x99\ -\x45\x98\x56\x79\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x73\x8f\xb2\x5d\ -\xef\x1f\x42\xef\xa4\xca\x2c\xc2\xb3\xce\x3e\xc9\x77\xbc\x7d\x0b\ -\xbe\x93\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x26\x51\x66\x15\x9e\x71\ -\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x9c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\ -\x32\x8b\x30\xac\xf3\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xe7\x1f\x64\ -\xbb\xde\x3e\x85\xdf\x49\x94\x59\x85\x67\x9c\x7d\x92\xef\x78\xfa\ -\x17\x7d\x27\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4c\xa2\xcc\x2b\x3c\ -\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x39\xc7\xd9\x2e\xf7\x8f\xa1\x77\ -\xd2\x65\x16\x61\x59\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\xce\x3e\ -\xc9\x77\xbc\x7d\x0b\xbe\x93\x28\xb3\x0a\xcf\x38\xfb\x25\xde\xf1\ -\xf4\x2e\xfa\x4e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x99\x45\x98\x56\ -\x79\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x73\x8f\xb2\x5d\xef\x1f\x42\ -\xef\xa4\xca\x2c\xc2\xb3\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x9c\ -\x7d\x92\xef\x78\xfa\x17\x7d\x26\x51\x66\x15\x9e\x71\xf6\x4b\xbd\ -\xe3\xe8\x5d\xf4\x9c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x32\x8b\x30\ -\xac\xf3\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xe7\x1f\x64\xbb\xde\x3e\ -\x85\xdf\x49\x94\x59\x85\x67\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x27\ -\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4c\xa2\xcc\x2b\x3c\xe3\xec\x97\ -\x7b\xc7\xd0\xbb\xe9\x39\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x65\x16\ -\x61\x59\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\xce\x3e\xc9\x77\xbc\ -\x7d\x0b\xbe\x93\x28\xb3\x0a\xcf\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\ -\x4e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x99\x45\x98\x56\x79\xc7\xd9\ -\x2e\xf7\x8f\xa1\x77\xd2\x73\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xca\ -\x2c\xc2\xb3\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x9c\x7d\x92\xef\ -\x78\xfa\x17\x7d\x26\x51\x66\x15\x9e\x71\xf6\x4b\xbd\xe3\xe8\x5d\ -\xf4\x9c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x32\x8b\x30\xac\xf3\x8f\ -\xb2\x5d\xef\x1f\x42\xef\xa4\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\ -\x94\x59\x85\x67\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x27\x38\xfb\x25\ -\xde\xf1\xf4\x2e\xfa\x4c\xa2\xcc\x2b\x3c\xe3\xec\x97\x7b\xc7\xd0\ -\xbb\xe9\x39\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x65\x16\x61\x59\xe7\ -\x1f\x64\xbb\xde\x3e\x85\xdf\x49\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\ -\x93\x28\xb3\x0a\xcf\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4e\x71\xf6\ -\x4b\xbd\xe3\xe8\x5d\xf4\x99\x45\x98\x56\x79\xc7\xd9\x2e\xf7\x8f\ -\xa1\x77\xd2\x73\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xca\x2c\xc2\xb3\ -\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x9c\x7d\x92\xef\x78\xfa\x17\ -\x7d\x26\x51\x66\x15\x9e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x9c\xe3\ -\xec\x97\x7b\xc7\xd0\xbb\xe9\x32\x8b\x30\xac\xf3\x8f\xb2\x5d\xef\ -\x1f\x42\xef\xa4\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\x94\x59\x85\ -\x67\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x27\x38\xfb\x25\xde\xf1\xf4\ -\x2e\xfa\x4c\xa2\xcc\x2b\x3c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x39\ -\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x65\x16\x61\x59\xe7\x1f\x64\xbb\ -\xde\x3e\x85\xdf\x49\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x28\xb3\ -\x0a\xcf\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4e\x71\xf6\x4b\xbd\xe3\ -\xe8\x5d\xf4\x99\x45\x98\x56\x79\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\ -\x73\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xca\x2c\xc2\xb3\xce\x3e\xc9\ -\x77\xbc\x7d\x0b\xbe\x93\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x26\x51\ -\x66\x15\x9e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x9c\xe3\xec\x97\x7b\ -\xc7\xd0\xbb\xe9\x32\x8b\x30\xac\xf3\x8f\xb2\x5d\xef\x1f\x42\xef\ -\xa4\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\x94\x59\x85\x67\x9c\x7d\ -\x92\xef\x78\xfa\x17\x7d\x27\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4c\ -\xa2\xcc\x2b\x3c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x39\xc7\xd9\x2e\ -\xf7\x8f\xa1\x77\xd2\x65\x16\x61\x59\xe7\x1f\x64\xbb\xde\x3e\x85\ -\xdf\x49\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x28\xb3\x0a\xcf\x38\ -\xfb\x25\xde\xf1\xf4\x2e\xfa\x4e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\ -\x99\x45\x98\x56\x79\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x73\x8f\xb2\ -\x5d\xef\x1f\x42\xef\xa4\xca\x2c\xc2\xb3\xce\x3e\xc9\x77\xbc\x7d\ -\x0b\xbe\x93\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x26\x51\x66\x15\x9e\ -\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x9c\xe3\xec\x97\x7b\xc7\xd0\xbb\ -\xe9\x32\x8b\x30\xac\xf3\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xe7\x1f\ -\x64\xbb\xde\x3e\x85\xdf\x49\x94\x59\x85\x67\x9c\x7d\x92\xef\x78\ -\xfa\x17\x7d\x27\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4c\xa2\xcc\x2b\ -\x3c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x39\xc7\xd9\x2e\xf7\x8f\xa1\ -\x77\xd2\x65\x16\x61\x59\xe7\x1f\x64\xbb\xde\x3e\x85\xdf\x49\xce\ -\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\x28\xb3\x0a\xcf\x38\xfb\x25\xde\ -\xf1\xf4\x2e\xfa\x4e\x71\xf6\x4b\xbd\xe3\xe8\x5d\xf4\x99\x45\x98\ -\x56\x79\xc7\xd9\x2e\xf7\x8f\xa1\x77\xd2\x73\x8f\xb2\x5d\xef\x1f\ -\x42\xef\xa4\xca\x2c\xc2\xb3\xce\x3e\xc9\x77\xbc\x7d\x0b\xbe\x93\ -\x9c\x7d\x92\xef\x78\xfa\x17\x7d\x26\x51\x66\x15\x9e\x71\xf6\x4b\ -\xbd\xe3\xe8\x5d\xf4\x9c\xe3\xec\x97\x7b\xc7\xd0\xbb\xe9\x32\x8b\ -\x30\xac\xf3\x8f\xb2\x5d\xef\x1f\x42\xef\xa4\xe7\x1f\x64\xbb\xde\ -\x3e\x85\xdf\x49\x94\x59\x85\x67\x9c\x7d\x92\xef\x78\xfa\x17\x7d\ -\x27\x38\xfb\x25\xde\xf1\xf4\x2e\xfa\x4c\xa2\xcc\x3c\xd9\x6e\x65\ -\x84\xcd\xf0\x16\xf1\xd8\x1b\xde\xdb\x0f\x77\x5e\x45\x7c\x99\xa7\ -\x5d\x26\x62\x78\x4c\x44\xf4\xc4\xbd\x28\x80\x00\x00\x00\x00\x00\ -\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\ -\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\ -\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\ -\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\ -\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\ -\xb4\x30\x0e\xca\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\xef\ -\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\ -\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\ -\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\ -\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\ -\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\ -\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\ -\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\ -\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\ -\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\ -\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\ -\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\ -\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\ -\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\ -\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\ -\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\ -\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\ -\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\ -\x0e\xca\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\ -\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\ -\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\ -\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\ -\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\ -\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\ -\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\ -\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\ -\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\ -\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\ -\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\ -\xb4\x30\x0e\xca\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\xef\ -\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\ -\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\ -\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\ -\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x02\x50\ -\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x68\x90\x1c\x79\x33\xfb\ -\x52\x72\x67\xf6\xa5\xc8\x04\x44\x09\x00\x00\x00\x00\x00\x00\x00\ -\x00\x10\x8d\x27\xe3\x2e\x40\x38\xf2\x67\xf6\xa4\x8a\x7e\xf9\x72\ -\x01\x02\x40\x00\x00\x00\x40\x94\x00\x02\x80\x00\x00\x00\x00\x00\ -\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\ -\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\ -\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\ -\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\ -\x02\x50\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\ -\x50\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\x85\x96\xfc\ -\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\x38\xde\ -\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\xfa\x87\x99\ -\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\ -\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\x42\x50\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\x00\x00\x00\ -\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\x5f\x76\xdd\ -\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\x00\x00\x00\ -\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x66\x56\x77\ -\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\xa0\x00\x00\ -\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x04\x25\x00\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\ -\x6f\xcd\xf3\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\ -\x8d\xea\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\ -\x79\x97\x85\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\ -\x2b\x3a\xad\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x94\x00\x02\x80\x00\x00\ -\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\ -\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\ -\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\ -\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\ -\x00\x00\x00\x02\x50\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x42\x50\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\ -\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\ -\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\ -\xfa\x87\x99\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\ -\xe6\x52\xb3\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\x42\x50\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\ -\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\ -\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\ -\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\ -\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\ -\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x72\xb7\x4c\x55\x76\x9a\x67\xa2\x66\x21\xc5\xce\xcf\xf6\ -\xf6\xff\x00\x7a\x3f\xc4\x16\xcd\xbf\xd9\xcc\xbb\x67\xae\xe5\xf4\ -\xe5\xf4\x57\x4c\x62\x2c\xcd\x75\xf2\xab\x9a\xb5\x9e\x1f\x15\x41\ -\xbd\xb6\xab\x63\xac\x6d\x56\x55\x87\xd2\xe7\xb1\xc5\xd8\xb7\xfd\ -\x55\xc9\xe3\x1c\x63\xa2\x63\xe0\xd3\x59\xd6\x41\x99\x64\x18\xbf\ -\xd1\xf3\x0c\x3d\x56\xe6\x7e\xcd\x71\xc6\x9a\xe3\xe3\x12\xcc\xa3\ -\x1c\x03\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\ -\x9a\x01\x11\x33\xd1\x06\x92\xf6\xe1\xad\x72\xe8\x9e\x10\xf3\xdc\ -\xa3\x4b\xbc\x9f\xbc\x1c\x69\xb3\x72\xb8\xd6\x9a\x66\x5c\x6a\xa6\ -\xaa\x67\x4a\xa3\x45\x8f\x2e\xb5\x63\xd8\xc4\x70\xe5\x68\xf2\xe6\ -\xb4\x59\xd7\x93\x4c\x46\xa9\xa3\x08\x97\x3b\x96\xaa\xa3\x8c\xc7\ -\x07\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x25\x00\ -\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\x6f\xcd\xf3\ -\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\x8d\xea\x00\ -\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\x79\x97\x85\ -\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\x2b\x3a\xad\ -\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x01\xce\xcf\xf6\xf6\xff\x00\x7a\x3f\xc5\xc1\xce\ -\xcf\xf6\xf6\xff\x00\x7a\x3f\xc4\x1f\x4b\xe1\xe6\x3f\x47\xb5\x1a\ -\xf1\xe4\x47\x0f\xc1\xe5\xce\x72\x6c\x16\x7b\x97\xdc\xc1\x63\xad\ -\x45\x74\x57\x1c\x27\xb6\x89\xf8\xc4\xfc\x5a\xfb\x79\x59\xae\x3b\ -\x28\xcc\x32\x7c\x4e\x5f\x8a\xb9\x87\xbb\x18\x7a\xbd\xea\x27\xa7\ -\x8c\x74\xc7\x6b\xbf\x65\x77\xa5\x4e\x2e\xf5\x18\x2c\xf6\x8a\x2d\ -\x57\x56\x94\xd3\x89\xa3\x85\x33\x3f\xed\x47\x67\x8b\x9e\x5e\xa3\ -\x5e\x6d\x0e\x47\x89\xd9\xec\xe2\xf6\x5f\x88\xe3\xc8\x9d\x68\xae\ -\x3a\x2b\xa6\x7a\x25\x8c\x6d\x9d\xee\xe5\xd6\xaf\x65\x18\x3c\xd2\ -\x8d\x3d\xa5\xbb\xbe\xca\x6a\x8f\xd6\xa6\xa8\x99\xff\x00\x18\xfe\ -\x6d\x4c\xdc\xbb\x14\x01\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x20\xd5\x24\x46\xb2\x0e\xeb\x77\xea\xa2\x9f\x75\xd7\x55\xc9\ -\x9a\xb5\x9e\x96\x63\x26\xc9\xaa\xc6\xd5\xca\xd3\xdd\x87\x4e\x75\ -\x83\xb5\x86\xbd\xc9\xb7\xd3\x09\xa3\xc9\x63\x17\x5d\x1f\x66\x74\ -\x76\xc5\x73\x76\xe7\x2a\xb9\xd5\xe3\xa2\x9e\x2e\xea\x6a\xe4\xcc\ -\x40\x27\x17\x5f\x2b\x84\x3c\xd4\xd3\x35\x74\x3d\x57\x6d\xf2\xa9\ -\xd5\x18\x5b\x53\x55\xd8\xf8\x03\xcb\x31\x34\xce\x92\x3d\xb9\x95\ -\xba\x29\xae\x26\x9e\x9e\xd7\x89\x40\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x10\x94\x00\x02\x80\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\ -\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\ -\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\ -\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\ -\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x02\x50\x94\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x82\ -\x42\x29\xaa\xae\x88\x99\xf0\x82\x63\x4e\x98\x00\x00\x00\x00\x00\ -\x00\x00\x00\x16\xdd\x85\xd8\xbf\xfa\x51\x88\xb9\x88\xc5\x57\x55\ -\xbc\x0d\x89\x88\xaa\x69\xe9\xae\xaf\xd9\x8f\x82\xa4\xdb\xbb\xa3\ -\xcc\x70\xf7\x32\x4c\x46\x5d\xca\xa6\x9c\x45\xab\xd3\x72\x69\xed\ -\xaa\x99\x88\xe3\xfc\x92\xf0\x5b\x30\x3b\x31\x91\xe5\xd6\x62\xd6\ -\x1b\x2b\xc3\x44\x47\xeb\x55\x6e\x2a\xaa\x7f\x19\xe2\xf3\xe6\xbb\ -\x17\x90\xe6\xd4\x7f\x5b\x97\xda\xb3\x72\x38\xd3\x76\xc5\x31\x45\ -\x51\x3f\x87\x4f\xe2\xce\x8e\x7a\x8d\x4f\xbe\x0a\x22\x8c\x66\x55\ -\x44\x71\x8a\x6c\xd7\x1f\xce\x1a\xe5\x7d\xde\xd6\x63\x63\x17\x9f\ -\xe1\xf0\x96\x6b\x8a\xaa\xc2\xda\x98\xb9\xa7\x65\x53\x3a\xe9\xfc\ -\x34\x50\x9d\x27\x15\x60\xc6\xed\x5e\x23\x1d\xb1\xf8\x6c\x8a\xfc\ -\xd7\x72\xab\x17\xf9\x7e\xd6\xa9\xfd\x48\x8d\x29\xa7\xf9\xcf\xf0\ -\x85\x7c\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x76\ -\x5b\xb7\x55\x7c\x22\x1d\xb5\x61\xaa\xb5\x1a\xd5\x1a\x27\x0b\x76\ -\x9a\x2b\x89\x9e\xc7\xbf\x13\x8b\xb3\x88\xb5\xc9\xd2\x22\x74\x41\ -\xd9\x96\xe7\x55\x60\x2c\xd5\x45\x3d\xac\x6e\x37\x13\x56\x2a\xf4\ -\xd7\x3d\x33\x2e\xaa\xb4\xa6\x66\x21\x36\xf9\x33\x56\xb2\x60\x8a\ -\x68\xaa\x23\x59\x3a\x2a\xd5\xe8\xaa\xaa\x74\xe0\xf3\xce\xb3\x57\ -\x05\x19\x3c\x37\xb1\xbb\x6f\x4a\xf8\x3b\x6c\x5a\xb7\x46\xbc\x98\ -\xd5\x8b\x8a\x6e\x69\xa5\x3a\xc3\x37\x95\xe1\xae\xd7\x44\xc7\x26\ -\x66\x74\x64\x62\xb1\x96\x66\x66\xaa\xa6\x7a\x18\xf6\x67\x34\xa2\ -\xab\x35\x55\x4d\x71\xa4\xb0\xcb\x00\x05\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x04\x25\x00\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\ -\xa8\x59\x6f\xcd\xf3\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\ -\x6b\x43\x8d\xea\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\ -\x1f\xa8\x79\x97\x85\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\ -\x7e\x65\x2b\x3a\xad\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x9d\x26\ -\x67\x48\x7b\x70\x98\x0f\x6d\xa4\xce\xbe\x0f\x3e\x1a\xf4\x59\xaa\ -\x6a\xd2\x26\x7b\x35\x64\xf0\x98\x9a\xaf\x53\x31\xa4\x51\xc3\x5d\ -\x50\x64\xe3\x24\xc2\x51\x80\x9b\xb4\x62\xf9\x17\x29\xa7\x59\xa5\ -\x5a\x8f\xf4\x8d\x27\x4a\xb8\xbd\x74\xe2\xab\x8a\xaa\xa2\xba\xe6\ -\x69\x99\x71\xc1\xd8\xa3\x11\x8e\xa6\x98\xe1\x13\x50\x38\x66\x16\ -\xed\x45\x74\x7b\x3a\x39\x33\x31\xc6\x21\xe3\x98\x98\x9d\x26\x34\ -\x95\x87\x19\x96\xc5\x38\xe8\x89\x9f\x76\x23\xb5\xe4\xce\x30\x94\ -\xd1\x4d\x37\xa8\x98\xf8\x4e\x80\xc4\x80\xa0\x00\x00\x00\x00\x0f\ -\x46\x03\x1f\x8b\xcb\x31\x74\x62\xf0\x57\xeb\xb3\x7a\xdc\xeb\x4d\ -\x54\xcf\xff\x00\xf6\xb0\xf3\x80\xbf\xe0\xb7\xbd\x9b\xd8\xb7\x14\ -\xe2\xf0\x58\x7c\x4c\xc7\xeb\x44\xcd\x13\x3f\xc3\x58\x74\x66\xbb\ -\xd6\xce\xb1\xf6\x2a\xb3\x84\xb5\x67\x03\x15\x46\x93\x55\x1a\xd5\ -\x57\xf1\x9e\x85\x1c\x4c\x82\x6b\xae\xab\x95\xd5\x5d\x75\x4d\x55\ -\x55\x3a\xcd\x53\x3a\xcc\xca\x01\x40\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x23\x58\xe8\x72\x89\x98\xed\x26\x89\x89\ -\x4e\x91\xa0\x38\xcc\xbd\x18\x7c\x2d\xcb\xd4\xcc\xd2\xf3\xf0\x66\ -\x72\xdb\x94\x4c\x72\x62\x61\x06\x36\x69\xb9\x6a\xae\x4d\x50\x53\ -\x3a\x57\x13\x31\xc1\x6b\xb5\x97\x58\xc4\x53\x3c\xbd\x22\x65\x89\ -\xcc\xf2\xaa\xb0\xba\xcd\x3c\x60\xd1\xe6\x8c\x45\xaa\x66\x9d\x21\ -\x6d\xca\x31\x58\x2b\x18\x1a\xaf\x55\x31\xcb\x88\xe1\x0a\x04\xf2\ -\xa9\xa9\xdb\x18\x9b\x9c\x9e\x44\x55\x31\x1e\x26\x0c\x8e\x71\x8a\ -\xfd\x36\xed\xcb\xdd\x14\xc4\xf0\xfb\xd8\x77\xa7\x11\x7e\x26\xcd\ -\x36\x69\xec\xe9\x79\x80\x01\x40\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\ -\x09\x40\x00\x28\x00\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\ -\xf3\x7c\xda\xd6\x85\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\ -\x7a\x80\x08\x80\x00\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\ -\x65\xe1\x6f\xcc\xa5\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\ -\xce\xab\x43\x00\xec\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x3d\x16\x2c\xd1\x72\ -\x35\xaa\xad\x1d\x93\x54\xd1\x1c\x9a\x25\xee\xcb\x68\xc3\x5c\xc1\ -\xcf\xb4\xd3\x95\x1f\x16\x32\xfc\xe9\x76\x62\x9e\x8d\x78\x20\xe5\ -\x6e\x8e\x5c\xf1\x9e\x2e\xec\x2d\x53\x6b\x1b\x44\xf2\xb9\x3a\x39\ -\x46\x55\x8c\x8b\x1e\xde\x28\x9e\x46\x9a\xea\xf1\xd7\x15\x55\xe3\ -\x00\xca\x66\x99\x8d\x55\xcd\x3c\x8a\xb5\x9e\xd9\x78\x6e\xde\xbb\ -\x7a\xdc\x45\x53\xc2\x5e\x68\xd6\x7a\x65\xce\x2b\x98\x8d\x27\xb0\ -\x1d\x60\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x51\x54\xcc\x69\x29\x8a\ -\x78\xb8\x3b\x69\xb9\x4c\xd3\xc9\xab\x84\xfc\x40\xaa\xd4\xc4\x6a\ -\xed\xc1\xd1\x5c\x5c\x89\xa6\x65\xd7\x35\xd5\x1c\x26\x75\x8f\x8b\ -\x27\x97\xd1\x45\x73\x1a\x68\x83\xd9\xed\xee\xd1\x6a\x26\x99\x9e\ -\x0f\x35\xcc\xda\xab\xd3\xec\xee\xf4\x32\x17\xa9\xa2\x6d\xf2\x29\ -\x98\xd5\x5f\xc7\xda\x9b\x77\x35\x48\x8f\x55\x78\x4a\x6f\xc6\xb6\ -\xf8\xea\xf0\xe2\x70\xd3\x87\xe1\x5f\x0a\x93\x87\xc7\x5c\xc3\x4e\ -\xb4\xce\xb3\xd9\xab\xa6\xfd\xfb\x98\x8b\x93\x5d\xc9\xd6\x65\x55\ -\xc3\xa6\x40\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x25\x00\ -\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\x6f\xcd\xf3\ -\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\x8d\xea\x00\ -\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\x79\x97\x85\ -\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\x2b\x3a\xad\ -\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x10\x90\x13\x44\xd5\x13\xa4\x4e\x9a\ -\xbd\x17\x2d\xd1\x45\xa8\xab\x95\xad\x4f\x2a\x75\x9f\x10\x64\x28\ -\xce\xb1\x74\xe1\xa7\x0f\xed\x27\x91\x3c\x34\x30\xbe\xc2\xab\x57\ -\x26\xba\xbd\xe9\x8e\x0c\x7a\x79\x53\x1d\x12\x09\xaf\x85\x73\x10\ -\x89\x9d\x69\x88\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x12\x01\ -\xc5\xce\xdd\xeb\x96\xa7\x5a\x2a\x98\x70\x01\xdd\x38\xcc\x44\xf1\ -\xf6\x92\xeb\xae\xe5\x77\x27\x5a\xea\x99\x97\x10\x10\x90\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\x00\ -\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\x5f\ -\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\x00\ -\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x66\ -\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\xa0\ -\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x7b\xb2\xcc\x93\x33\xce\x2f\x45\ -\xac\x06\x0a\xed\xf9\x9e\xda\x69\xf7\x63\xc6\x7a\x20\x1e\x11\xb2\ -\x72\x5d\xd1\x5f\xb9\x34\xdd\xce\x71\x94\xda\xa7\xb6\xcd\x8e\x35\ -\x7f\xe6\xe8\x83\x6e\x77\x7f\x95\xe4\xb9\x05\x59\x96\x5b\x55\xda\ -\x2a\xb3\x5d\x31\x72\x9a\xeb\xe5\x45\x51\x33\xa7\xe1\x3a\xcc\x33\ -\xb0\x6b\x60\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x50\x00\x0a\x00\ -\x00\x00\x00\x00\x00\x37\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\ -\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\x38\xde\xa0\x02\x20\x00\ -\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\ -\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\xaa\xd0\xc0\x3b\ -\x28\x00\x00\x00\x00\x09\x42\x50\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x04\x00\x14\x01\x08\x25\x1a\x87\xe0\x09\x11\x3a\xd3\xd1\x3a\ -\x78\xa2\x26\x7f\x5a\x62\x14\x72\x11\xc6\x7a\x38\x9c\x7b\x41\x28\ -\x3a\x0e\x33\xdb\x00\x94\x6a\x45\x5a\xf0\xe9\x46\x91\x13\xae\x92\ -\x0e\x41\xae\xa2\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\xf6\xe4\ -\xf9\x55\xfc\xef\x35\xb1\x97\x61\xb4\x8b\x97\xaa\xd2\x26\xae\x88\ -\x8e\x99\x97\x89\x68\xdd\xbf\x5d\xf0\x5e\x15\xff\x00\x96\x52\x8d\ -\x85\x92\xee\xbb\x24\xcb\xa2\x9b\x98\xd8\xab\x1f\x7e\x38\xcf\xb4\ -\xe1\x44\x4f\xee\xff\x00\xf2\xb8\x58\xc3\xd9\xc2\xda\x8b\x58\x7b\ -\x54\x5a\xb7\x4f\x45\x34\x53\x11\x11\xf8\x31\xb9\xf6\xd3\x65\x7b\ -\x39\x66\x8b\x99\x8d\xe9\xa2\x6e\x6b\xec\xe8\xa6\x99\x9a\xab\xd3\ -\xa7\x46\xb8\xce\xf7\xb5\x8f\xc5\x72\xad\x65\x18\x7a\x70\x96\xe7\ -\x87\xb4\xb9\xef\x57\xff\x00\xc4\x7f\x36\x32\xd4\x6d\x5c\x6e\x63\ -\x83\xcb\xad\x7b\x5c\x66\x26\xd5\x8a\x3e\x35\xd5\x11\xaa\xb9\xbc\ -\xa9\x89\xd8\x4c\x6c\xc7\x44\xd5\x6b\xfc\xf4\xb4\xc5\xfc\xc3\x19\ -\x99\x63\xe8\xc4\x63\x71\x37\x31\x17\x66\xb8\xd6\xab\x95\x6b\x3d\ -\x2d\xcd\xbc\x7e\xa0\xe2\xfe\x57\xf9\xe9\x33\x2c\x1a\x34\x07\x45\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\x00\x00\x00\x00\ -\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\x5f\x76\xdd\x42\ -\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\x00\x00\x00\x00\ -\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x66\x56\x77\x8f\ -\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\xa0\x00\x00\x00\ -\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x1a\x4c\x9c\ -\x23\xa6\x78\xac\x04\xa2\x3a\x4f\xd6\xe9\xe1\xf1\x00\xe0\xe5\x4d\ -\xaa\xae\xd7\x14\xda\x89\xab\x5f\x84\x33\xf9\x56\xc4\x66\xd9\xad\ -\x71\xfd\x54\xd1\x6e\x7f\x5a\x53\x60\xae\xcd\x51\x09\xa6\x8a\xee\ -\x44\xcd\x14\x55\x54\xc7\x64\x43\x6b\x65\x3b\xaa\xb3\x62\x62\xac\ -\x65\xdf\x69\xf7\x68\xb5\xe0\xb6\x37\x26\xc0\xd3\xfd\x5e\x12\x9d\ -\x7e\x2c\xfd\x44\xd6\x88\xc3\x65\x39\x86\x2e\x7d\xdc\x2d\xc8\xfb\ -\xf9\x2c\x8d\xbd\x8e\xce\x6f\x7b\xb1\x86\x9d\x3e\xf8\x6f\xcb\x78\ -\x0c\x35\xaa\x74\xa2\xcd\x14\xc7\x83\xb7\xd9\xd3\x4f\xd9\xa2\x99\ -\xfc\x19\xfb\x35\xa1\xe9\xdd\xf6\xd0\x55\x1e\xe5\xaa\x62\x11\x5e\ -\xef\xb6\x82\x88\xd6\x6d\x53\x3a\x37\xdc\x45\x3a\x71\xa6\x23\xf0\ -\x26\x69\xe8\x8a\x22\x53\xec\xd7\xcf\xb5\xec\x76\x75\x44\x6b\x5e\ -\x1e\x7f\x08\x63\xf1\x19\x46\x3f\x0d\x3a\x57\x85\xb9\xf8\x52\xfa\ -\x43\x91\x4e\x9c\x6d\xd3\xfc\x1d\x57\x70\x58\x5b\xd1\xef\x59\xa2\ -\x67\xe1\xa1\xf6\x6b\xe6\xa9\xb7\x5d\x8f\xb7\x6a\x69\xf1\x87\x5c\ -\xcd\x53\x3c\xae\xc7\xd0\x98\xdd\x8f\xc9\xf1\xf4\xcf\xb5\xc2\xd3\ -\x13\x2a\xae\x6b\xba\xbc\x35\xde\x55\x58\x2b\xb1\x6f\xe1\x4e\x8d\ -\x4f\x46\xb5\x3e\xbc\xaf\xb8\x58\xf3\x5d\x86\xcd\xf2\xc9\xaa\x66\ -\xd4\xd7\x6e\x3f\x5a\x15\xea\xe8\xb9\x6a\xa9\xa6\xbb\x73\x13\x1d\ -\x3a\xc3\x72\xc3\x50\x22\x26\x3b\x78\x23\xde\x89\xe8\xd6\x05\x4a\ -\x5c\x79\x5e\xf6\x91\x0e\x40\x00\x00\x00\x00\x00\x00\x2d\x1b\xb7\ -\xeb\xbe\x0b\xc2\xbf\xf2\xca\xae\xb4\x6e\xdf\xae\xf8\x2f\x0a\xff\ -\x00\xcb\x29\x78\x2c\x9b\xe5\xfe\xd7\x2a\xfd\xdb\xbf\xfb\x5a\xce\ -\x9a\x6a\xae\xa8\xa6\x98\x99\x99\xec\x86\xcc\xdf\x2f\xf6\xb9\x57\ -\xee\xdd\xff\x00\xda\xab\x6c\x7e\xcb\x5f\xda\x5c\x64\xd1\x66\xb9\ -\xb3\x4d\xaf\x7a\xed\xe9\xe8\xa6\x3b\x22\x3e\x32\x93\x83\x0b\x46\ -\x16\xe5\x9c\x4d\xb8\xbb\x1c\x99\xe5\x44\xe8\xdd\x3b\xc7\xea\x0e\ -\x2f\xe5\x7f\x9e\x97\x45\x7b\xb0\xc9\x6e\xc5\x15\x5c\xbf\x8a\xaa\ -\xed\x3a\x7b\xf1\x5c\x47\xf2\xd1\xe9\xde\x4d\x31\x1b\x09\x8d\xa7\ -\x5e\x89\xb7\xfe\x7a\x52\xdd\xa8\xd1\x60\x36\xa0\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x21\x28\x00\x05\x00\x00\x00\x00\x00\x00\x1b\xdf\x76\xdd\ -\x42\xcb\x7e\x6f\x9b\x5a\xd0\xab\xee\xdb\xa8\x59\x6f\xcd\xf3\x6b\ -\x5a\x1c\x6f\x50\x01\x10\x00\x00\x00\x00\x00\x00\x00\x05\x67\x78\ -\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xca\xce\xf1\xfa\x87\x99\x78\x5b\ -\xf3\x29\x59\xd5\x68\x60\x1d\x94\x00\x00\x00\x00\x04\xa1\x28\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x08\x04\x88\xd3\x5e\x82\x35\x8e\x12\x06\xba\ -\x1c\x9d\x23\x95\xa6\xa5\x5f\x08\xe3\x2f\x46\x07\x05\x89\xc7\x57\ -\xec\xb0\x94\x4d\xca\xe6\x74\xe1\xd8\x9a\x3c\xf1\xef\x4f\x08\x99\ -\x9f\x84\x2c\x99\x16\xc3\xe6\x39\xd5\x71\x55\x56\xaa\xb3\x6e\x7b\ -\x6a\x8e\x95\xd3\x64\x37\x6f\x67\x0b\x6e\x9c\x5e\x65\xef\xdc\x9e\ -\x3c\x89\xe8\x86\xc1\xb3\x62\xd5\x8b\x71\x45\xba\x62\x88\x8e\x88\ -\x88\x62\xd4\xd5\x67\x20\xd8\x2c\xbb\x28\xb7\x4d\x55\xd1\x17\x2e\ -\x76\xeb\xc5\x69\xb3\x66\x8b\x54\xe9\x6a\xdc\x51\x4c\x76\x44\x15\ -\x5c\x8a\x29\xe3\x31\x11\xf1\x96\x03\x39\xdb\x4c\xa7\x26\xa2\x7d\ -\xb6\x22\x2a\xaa\x3b\x29\xe2\x9d\x4a\xb1\x44\xc4\xcf\x17\x4d\xdc\ -\x45\x8c\x3e\xb3\x76\xed\x34\x47\xdf\x2d\x47\x9b\x6f\x5b\x1f\x7e\ -\xec\xda\xc0\x58\xa7\xd9\xcf\x45\x71\x3c\x55\xba\xf3\x1d\xa6\xce\ -\x71\x53\x14\xde\xc4\xcc\x4c\xf4\x69\x3a\x18\x8d\xdb\x8b\xda\xdc\ -\x97\x07\xac\x57\x8d\xb7\x33\xf0\xd5\x8a\xbd\xbc\x7c\x9e\xd7\xd9\ -\xab\x97\xe1\x2d\x69\x67\x77\x9b\x49\x8f\xaa\x2b\xb9\x6b\x5a\x67\ -\xb6\x6a\xe2\xcf\x61\x77\x4b\x7e\xaa\x23\xdb\xdf\xaa\x89\xfb\xa5\ -\x72\x2b\x39\x7f\x7a\xf9\x65\xba\xb4\x8b\x15\xd4\x5a\xde\xd6\x57\ -\x5f\x09\xc3\xd7\x0c\x6c\x6e\x82\x8e\xdc\x5d\x7f\xc8\x9d\xd0\x5b\ -\xd2\x74\xc5\xd7\xa9\xfe\x51\x62\xc3\xef\x23\x28\xbb\x1a\xcc\xcd\ -\x3e\x32\xc8\xe1\x36\xc7\x24\xc5\xcf\xb9\x8d\xb7\x4d\x5f\x09\x95\ -\x0b\x11\xba\x6b\xf4\x5b\x98\xb1\x7e\xaa\xea\xfb\xe5\x83\xc4\x6e\ -\xf3\x3f\xc0\x55\x35\xd1\x62\x34\xf8\xc5\x47\xf9\x56\xef\xb1\x8b\ -\xb1\x8a\xe3\x6e\xf5\x35\xc7\xc6\x25\xe8\x9a\x63\xb1\xf3\xd5\x78\ -\xed\xa4\xc9\x31\x34\xd3\x37\x31\x14\x53\x4f\x65\x31\x3a\x2c\x59\ -\x46\xf5\x33\x2c\x35\x74\xda\xc6\xd9\xa6\x6d\xc7\x4d\x55\x4f\x14\ -\xca\x36\xfd\xcb\x74\x5c\xa3\x93\x5d\x31\x5c\x4f\x64\xc2\xb5\x9e\ -\x6c\x36\x59\x9a\xd1\x35\x45\xb8\xb7\x73\x4f\xd5\x8d\x1d\x99\x1e\ -\xdc\x65\x39\xcd\xbd\x2d\xdf\x8a\x6b\xed\x8a\xb8\x2c\x51\x5d\x35\ -\xd1\x15\x5b\x98\xaa\x27\xb6\x19\xfd\x1a\x33\x68\x76\x17\x31\xca\ -\x35\xb9\x6e\x8f\x6b\x6b\xa7\x58\x8e\x85\x5a\x99\xaa\x99\x9a\x6b\ -\xa6\x69\x98\xec\x97\xd3\x57\x2c\x5b\xc4\x51\x36\xee\xd1\x15\x53\ -\x3d\x31\x2a\x26\xd6\x6e\xef\x0d\x8e\xb7\x5d\xfc\x05\x31\x6e\xec\ -\x71\xe4\xc7\x6b\x73\xd2\xeb\x4f\xc4\x6b\x3a\xa5\xe8\xc6\xe5\xf8\ -\x9c\xb3\x11\x55\x8c\x5d\xb9\xa2\x69\x9d\x35\x98\xe9\x79\xe2\x9a\ -\xa7\x8f\xea\xba\x2a\x44\x4c\xe9\x57\x04\x80\x00\x00\x00\x00\x36\ -\x16\xc3\x6e\xee\xc6\x71\x82\xa3\x35\xcd\xaa\xaf\xd8\x57\x3f\xd5\ -\x58\xa2\x74\xe5\xc7\xc6\x67\xe1\xe0\xd8\x59\x7e\xc7\xe4\x39\x56\ -\x2e\xde\x2f\x05\x80\xa2\xd5\xfb\x5a\xf2\x6b\x8a\xa6\x67\x8c\x69\ -\xf1\x57\xb7\x75\xb5\xb9\x7e\x23\x24\xc3\xe5\x38\x9b\xf4\x58\xc5\ -\xe1\xa3\x91\x4d\x35\xce\x91\x72\x9e\xc9\x89\xf8\xfd\xcb\xb5\xec\ -\x4d\x8c\x35\xaa\xaf\x5f\xbd\x6e\xd5\xba\x63\x59\xaa\xba\xa2\x22\ -\x1c\xed\xba\x8d\x65\xbe\x5f\xed\xb2\xaf\xdd\xbb\xff\x00\xb4\xdd\ -\x36\x77\x83\xc3\xc6\x23\x2c\xbf\x5d\x36\xef\x5d\xaa\x2a\xb7\x33\ -\xc3\x97\xc3\xa3\xc5\x83\xde\x46\xd2\xe1\x76\x83\x37\xb3\x6f\x03\ -\x57\xb4\xc3\xe1\x29\x9a\x62\xe7\x65\x75\x4e\x9a\xcc\x7d\xdc\x21\ -\x51\xb5\x72\xbb\x35\xc5\x74\x4e\x95\x43\x59\xf8\x3e\x9c\x51\x77\ -\xa7\x9c\xe1\xad\x6c\xf5\x79\x5d\x37\x29\xaf\x13\x88\xaa\x99\x9a\ -\x22\x78\xd1\x4c\x4e\xba\xcf\xf0\x6b\x3c\x2e\xd6\x67\x98\x5b\x7e\ -\xca\xde\x67\x8a\x8b\x7f\xb1\xed\x67\x46\x3b\x19\x8c\xb9\x8c\xc4\ -\x57\x7a\xb9\x9e\x55\x7d\x3a\xce\xba\xa4\xf2\x63\xce\x90\x6d\x40\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x42\x50\x00\x0a\x00\x00\x00\x00\x00\x00\ -\x37\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\ -\xdf\x9b\xe6\xd6\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\x00\x00\ -\x00\x0a\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\ -\x0f\x32\xf0\xb7\xe6\x52\xb3\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\ -\x09\x42\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x9c\xbb\ -\x03\x73\x32\xcc\x70\xf8\x1b\x53\x11\x5d\xfb\x91\x44\x4c\xf4\x46\ -\xb3\xd2\x0f\x33\x2d\x94\x6c\xbe\x73\x9e\x55\x1f\xa0\x60\x6e\x57\ -\x46\xba\x4d\xda\xa3\x93\x44\x7e\x32\xdb\xb9\x1e\xee\x72\x1c\xa2\ -\x9a\x6b\xbb\x63\xf4\xdc\x44\x71\x9b\x97\xf8\xc4\x4f\xdd\x4f\x42\ -\xd5\x45\x14\xdb\xa6\x28\xa2\x98\xa6\x98\xe8\x88\x8d\x22\x18\xbe\ -\x93\x5a\xd7\x26\xdd\x0d\xaa\x62\x9b\xb9\xce\x36\x6b\x9e\x99\xb3\ -\x63\x84\x7e\x35\x4f\xfe\x8f\x7e\xd6\xec\x1e\x43\x87\xd9\x7c\x5e\ -\x23\x05\x83\x8c\x35\xfc\x2d\xa9\xb9\x4d\xca\x6a\x99\x9a\xb4\x8d\ -\x74\x9d\x67\xb5\x6d\xcd\x33\xcc\xb3\x26\xb5\xed\x33\x0c\x65\xab\ -\x11\xa6\xb1\x15\x55\xef\x4f\x84\x74\xcb\xc3\xb4\xf7\xed\xe2\xb6\ -\x1f\x32\xc4\x5a\x9d\x6d\xdd\xc1\x57\x5d\x33\x31\xa6\xb1\x34\xeb\ -\x09\xb4\x7c\xfc\x03\xa2\x80\x00\x00\x00\x00\x00\x20\x34\x35\xf7\ -\xb9\x20\x89\x99\x8e\x84\xe9\xca\xed\xfc\x13\xa4\x47\x4b\xd5\x93\ -\x65\x58\x9c\xdf\x33\xa2\xc6\x16\x9d\x66\xa9\xd2\x66\x7a\x22\x19\ -\xb5\x2d\x72\xc9\xf2\x8c\x5e\x77\x8e\xa3\x0b\x85\xa6\x78\xce\x95\ -\x55\xa7\xd9\x6e\xbd\x95\xd8\xfc\x16\xcf\x61\x22\x79\x11\x37\xa7\ -\x8d\x55\x4b\xbf\x65\xf6\x5f\x09\x90\x60\x29\xb7\x45\x11\x37\x66\ -\x35\xaa\xb9\x8e\x2c\xed\x13\x4e\x93\xca\xe3\xa7\xc5\x8b\x51\x34\ -\xd1\x4f\x26\x74\x9e\x12\xc6\x67\x3b\x41\x82\xc9\xf0\xd5\x5c\xc4\ -\xde\xa6\x99\x88\xe1\x4c\xcf\x19\x61\x36\xaf\x6d\xb0\x99\x1d\x9a\ -\xed\xd8\xae\x2b\xc4\x74\x72\x62\x7a\x1a\xaa\x29\xce\x76\xc7\x35\ -\xaa\xe4\x72\xea\xe5\x4f\x44\xfd\x98\x20\xcc\x6d\x06\xf1\xf3\x0c\ -\xd2\xba\xf0\xf9\x7c\x4d\xab\x73\x3c\x9f\x17\x83\x26\xd8\x8c\xf3\ -\x3e\xbd\x37\x2e\xc5\xcb\x34\x55\xc7\x95\x5f\x18\x96\xc2\xd9\x8d\ -\xdd\x60\xf2\xcb\x74\x5f\xc6\x53\x4d\xcb\xd3\xc6\x69\x98\xd6\x21\ -\x76\xb7\x66\x8b\x56\xf9\x16\xe9\x8a\x29\x8e\x88\x85\xbf\x85\x53\ -\x32\x5d\xd9\x65\x58\x0a\x69\xb9\x8b\xa3\xda\xde\x8e\xdd\x78\x2d\ -\xd8\x6c\xb7\x07\x84\xb7\x14\xda\xb1\x6e\x22\x3f\xd9\x87\xa6\x63\ -\x5a\x62\x24\x98\x8e\x4e\x90\xcf\xd2\x22\x29\x8d\x38\x69\x11\xf7\ -\x1a\x6a\x9d\x34\xa7\x81\x1a\xe9\xc5\x9d\x13\xa4\x42\x24\xd3\xef\ -\x34\x04\x72\x75\xe3\x08\xe1\xd1\x31\x15\x7e\x0e\x5c\x62\x78\x1a\ -\x44\xf4\xf0\x07\x9b\x11\x97\xe1\x31\x54\xcf\xb5\xc3\xd1\x31\x3f\ -\xec\xc2\xa7\x9c\x6e\xcf\x29\xcc\x79\x77\x6c\x51\xec\xae\xcf\x6e\ -\xbc\x17\x58\x8d\x23\x43\x59\xd3\x48\x6a\x7a\x56\x85\xce\xb6\x1b\ -\x38\xc8\x6e\xfb\x4c\x34\x5c\xbb\x6e\x27\x59\xae\x8e\x11\x0f\x56\ -\xcf\xef\x13\x33\xca\x2f\x53\x63\x19\x33\x76\xcd\x33\xa6\x93\x1c\ -\x61\xbb\x2b\xb5\x6e\xfd\x33\x6e\xba\x62\xa8\xed\x89\x53\xb6\x9f\ -\x77\xb8\x1c\xda\xdd\x77\xb0\x94\x45\xab\xd1\x1a\xc4\x53\x1a\x44\ -\xcb\x5d\x19\xbc\x93\x68\xf0\x39\xd5\x14\xd7\x63\x11\x4f\x2a\x63\ -\x8d\x1a\xf1\x86\x66\xaa\x69\x98\xf7\xba\x21\xf3\xe5\xdc\x2e\x71\ -\xb1\xf9\x95\x35\xcc\xd7\x44\xc4\xf6\x7d\x96\xce\xd9\x1d\xbd\xc3\ -\xe7\x16\xa9\xc3\xe2\xaa\xa6\x8c\x47\x44\x6b\xda\x96\x23\x2d\xb4\ -\x9b\x29\x81\xda\x1c\x25\x54\xdd\xb7\x14\xdd\xd3\xdc\xaa\x1a\x3f\ -\x3c\xc8\xb1\xbb\x3d\x98\x55\x87\xc4\xd3\x57\xb3\xd7\xdc\xaf\x4e\ -\x15\x3e\x8d\xe1\x34\x44\xc4\xc4\xcc\xb0\xfb\x45\xb3\x98\x4c\xfb\ -\x03\x72\xcd\xea\x23\x97\xa7\xb9\x56\x9c\x62\x49\xe9\x63\xe7\xb9\ -\x9a\xa2\xad\x3a\x62\x78\xa5\xed\xce\x72\x6c\x56\x45\x98\xd7\x87\ -\xc4\xd3\x3a\x44\xfb\x93\xf7\x3c\x31\xc6\x5d\x5a\x48\xe3\xaf\x63\ -\x90\x00\x00\x00\x11\x3a\x4e\xb0\xe5\x37\x2b\x98\xd2\x6b\xaa\x63\ -\xef\x97\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x25\ -\x00\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\x6f\xcd\ -\xf3\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\x8d\xea\ -\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\x79\x97\ -\x85\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\x2b\x3a\ -\xad\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x19\x8d\x90\xeb\x6e\x57\xff\x00\x11\x4b\x0e\ -\xcc\x6c\x87\x5b\x72\xbf\xf8\x8a\x52\x8d\xe1\xb4\x5b\x47\x82\xd9\ -\x9c\xbe\x9c\x66\x36\x2e\x55\x4d\x75\xf2\x28\xa6\xdc\x6b\x33\x3a\ -\x6b\xff\x00\xa3\x57\xe7\x7b\xd4\xce\x33\x0e\x55\xac\xbe\x8a\x70\ -\x16\xa7\x86\xb4\xfb\xd5\xcc\x78\xcf\x47\xe0\xb3\xef\x7f\xab\x98\ -\x3f\xf8\xa8\xff\x00\x2d\x4d\x40\xcf\x99\x11\xd9\x7f\x11\x7f\x15\ -\x76\x6e\xe2\x2f\x57\x76\xe5\x5d\x35\x57\x54\xd5\x33\xf8\xcb\x79\ -\xe6\x7f\xf7\x65\x7f\xfe\x59\xff\x00\xb1\xa2\x1b\xdf\x33\xff\x00\ -\xbb\x2b\xff\x00\xf2\xcf\xfd\x8b\xe8\x68\x80\x1a\x50\x00\x00\x00\ -\x00\x00\x04\x4c\x70\x45\xb9\xe4\xc7\x1e\x99\x4c\xeb\x30\x89\xd3\ -\x8f\xc7\xb0\xa8\xec\xc3\xe1\xeb\xc4\xe2\xa9\xc3\xda\xa6\x6b\xae\ -\xe4\xe9\xc1\xbb\xb6\x23\x65\xac\x64\xd8\x1a\x2e\xdd\xb5\x1f\xa4\ -\x55\x1a\xcc\xcc\x74\x2b\x5b\xb4\xd9\x48\xe4\xce\x67\x8a\xb5\xc6\ -\x7e\xce\xb0\xda\x31\x44\x4d\x11\x11\xc2\x61\xce\xd4\x4d\x5a\x53\ -\x33\x32\xa3\x6d\xbe\xda\x59\xca\xad\x55\x85\xc1\xd7\x13\x88\xaa\ -\x38\xe9\x3d\x0c\x8e\xda\x6d\x5d\x9c\x87\x2f\xaa\x9a\x6b\x8f\xd2\ -\x2a\x8f\x76\x1a\xa3\x22\xc9\xb1\xbb\x5d\x9c\x4d\x77\x39\x55\x51\ -\x35\xf2\xaa\xae\x7e\x1a\xf4\x24\x88\xe5\x91\x6c\xf6\x63\xb5\xd9\ -\x95\x57\xee\x4d\x7c\x89\xab\x5a\xea\x96\xe6\xc8\xb6\x7b\x07\x92\ -\xe1\x69\xb5\x87\xb7\x4f\x2f\x4e\x35\x68\xf4\x65\x19\x3e\x17\x27\ -\xc1\x51\x62\xc5\x11\x4f\x26\x34\x99\xed\x96\x43\xec\xce\xa5\xfc\ -\x54\x44\x44\xf0\x9e\x98\x4f\x43\x8f\x6e\xb1\xda\xe5\xa3\x1b\xa8\ -\x91\x11\x31\x32\x47\x10\x48\x23\x54\xc1\x22\x3a\x52\xa0\x20\x99\ -\x04\x88\x99\xd3\x89\xa9\x81\xaf\x27\x8c\x47\x14\x4f\x1e\x34\xf4\ -\xfc\x0e\x24\x53\xa4\xea\x68\xc6\x67\x59\x06\x0f\x3a\xc2\x55\x6f\ -\x15\x6a\x9d\x74\xe1\x3a\x34\xce\xd3\x6c\xbe\x3f\x65\xf1\xd1\x89\ -\xb3\xca\xf6\x71\x56\xb4\x57\x4f\x63\x7c\xf1\x99\xe9\xe0\xf1\xe6\ -\x39\x76\x1f\x33\xc2\x5c\xc3\x5f\xb7\x4d\x74\xd5\x1a\x71\x8e\x85\ -\x97\x55\x4c\xd8\x7d\xb8\xb7\x99\x5a\xb7\x81\xc6\xd5\xc9\xbf\x11\ -\xc2\x66\x7e\xd2\xfb\xad\x33\xa4\xd3\x3a\xe9\xc5\xa1\x76\x97\x22\ -\xc6\x6c\xa6\x71\xed\xb0\xfc\xa8\xb7\xca\xd6\x9a\xe3\xb2\x3e\x0d\ -\x9b\xb0\x9b\x57\x6b\x3a\xc0\xd3\x66\xed\x71\x18\x8a\x23\xde\x89\ -\x9e\x95\xc1\xe9\xdb\x0d\x9a\xb1\x9f\x65\xd5\xcc\x5b\x88\xc4\x53\ -\x1a\xd3\x31\x0d\x1d\x8b\xc0\xdc\xc1\x62\x6b\xc3\x5d\x89\xa6\xab\ -\x73\xa4\xea\xfa\x5b\x48\xab\x5e\xd6\xb5\xde\x4e\xca\xc5\xdb\x5f\ -\xd2\x58\x4b\x7c\x69\xfb\x71\x11\xd2\xdf\x9a\xb1\xaa\xe2\x62\x22\ -\xa9\x8e\x88\x4c\x4e\xb1\xaa\x34\xd2\x34\xd3\x4d\x3a\x61\x3e\x0d\ -\xaa\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x01\x09\x40\x00\x28\x00\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\ -\x5b\xf3\x7c\xda\xd6\x85\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\ -\xe3\x7a\x80\x08\x80\x00\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\ -\x1e\x65\xe1\x6f\xcc\xa5\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\ -\x4a\xce\xab\x43\x00\xec\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x40\x24\x26\x34\xe9\x00\xd1\x3a\x39\x5a\xa7\x95\x2f\x65\ -\x38\x3a\xaa\xa3\x95\x11\xc0\x1e\x11\xce\xe5\x13\x45\x5a\x4c\x3a\ -\xe6\x41\x2c\xc6\xc8\x47\xff\x00\x56\xe5\x7f\xf1\x14\xad\x3b\xbb\ -\xd8\x6c\x26\x75\x85\xab\x36\xcd\x29\x9b\x96\x22\xb9\xa6\xd5\x98\ -\x9d\x22\xbd\x3a\x66\x7e\xee\xcd\x1b\x2f\x0f\xb3\xd9\x3e\x16\xaa\ -\x2a\xb1\x96\x61\xad\xd5\x6e\x62\x69\xaa\x9b\x71\xac\x4f\x8b\x37\ -\xd2\x2a\x3b\xdf\xea\xe6\x0f\xfe\x2a\x3f\xcb\x53\x5e\x6c\x9e\xcc\ -\xdf\xda\x8c\xda\x30\x94\x57\xec\xac\xd1\x1c\xbb\xd7\x74\xd7\x93\ -\x4f\xdd\xf7\xb6\x2e\xf7\x68\x9a\xf6\x77\x09\x11\xfe\xb5\x1f\xe5\ -\xa9\x4d\xdd\xce\xd1\xe1\xb6\x7b\x3b\xbb\x6f\x1d\x3c\x8b\x18\xba\ -\x62\x89\xb9\xfb\x13\x13\xc2\x67\xee\xe2\x93\x83\x61\x61\xf7\x65\ -\xb2\xf6\x6c\x45\xbb\x98\x3b\x97\xaa\xd3\x8d\xca\xee\xd5\x13\x3f\ -\xc2\x74\x64\x76\x9e\xc5\xbc\x2e\xc3\xe6\x58\x7b\x51\xa5\xbb\x58\ -\x2a\xe8\xa6\x26\x75\xd2\x22\x9d\x21\x98\xb3\x88\xb3\x88\xb7\x17\ -\x2c\x5e\xa2\xed\x13\xc6\x2a\xa2\xa8\x98\x53\xb7\x89\xb5\x38\x0c\ -\x0e\x43\x89\xcb\x2d\x5f\xa2\xee\x2f\x15\x44\xdb\xf6\x74\x55\xaf\ -\x22\x99\xe9\x99\xf8\x70\x67\xf6\xd1\xa5\x80\x75\x50\x00\x00\x00\ -\x00\x01\x00\x8d\x74\x9d\x27\xa1\x97\xd9\xac\x9e\xbc\xeb\x38\xb5\ -\x85\xa6\x9d\x63\x95\xef\xfd\xcc\x4f\x0e\xdf\xc1\xb7\xb7\x5f\x90\ -\xd3\x86\xc0\xce\x65\x76\x9f\x7e\xfc\x6b\x1a\xf6\x31\x6a\x2f\x18\ -\x0c\x1d\xbc\xbf\x05\x6f\x0f\x4c\x69\x14\x53\x11\x3a\x3a\x73\x5c\ -\xca\xce\x55\x80\xbb\x8a\xb9\x5c\x53\x4c\x53\x3a\x6b\xf1\x7b\x27\ -\x5e\x56\xba\xf0\x6a\x7d\xea\x67\xf5\x5d\xbf\x4e\x59\x87\x9d\x68\ -\xfd\x6d\x27\xb5\x94\x55\x33\x0c\x56\x2b\x6b\x76\x86\x22\x2a\xaa\ -\xbf\x6d\x5e\x94\xd3\x1f\xaa\xdd\x7b\x2d\xb3\xf8\x7c\x8b\x2d\xa2\ -\x8a\x29\x8f\x69\x34\xeb\x54\xe9\xda\xa8\x6e\xc3\x66\xa8\xb1\x86\ -\xfe\x94\xc4\xda\xf7\xee\x7d\x88\x9e\xc6\xc9\x8e\x14\x96\xa2\x22\ -\x35\xab\x95\x32\xe4\x8e\x8e\x31\xc6\x25\x2c\x50\x46\x93\xaf\x49\ -\xaa\xbf\xb4\xfb\x59\x86\xd9\xbc\x3c\x55\x77\x4a\xae\x57\xf6\x28\ -\xf8\x92\x6a\xc6\x76\xa9\x8a\x67\xa7\x4f\xbd\xe5\xbd\x9b\x65\xf8\ -\x39\xfe\xbb\x15\x6e\x99\xfb\xea\x69\xdc\xdf\x79\x39\xae\x63\x3c\ -\x9c\x24\xce\x1a\x26\x78\xc7\xc6\x15\x7c\x66\x3b\x19\x8d\xbd\xed\ -\x31\x57\xea\xaa\x7e\xe9\x6f\xe4\xc6\xef\xcc\x37\x83\x92\x65\xf5\ -\x4c\xd7\x7f\x97\xa7\xec\xf1\x60\xaf\xef\x73\x2e\x9a\xbf\xa8\xa2\ -\xa9\x8f\xbe\x1a\x8e\xbd\x74\xe8\xae\x63\xf8\xbb\xf0\xf8\x5b\xf8\ -\x8a\x79\x36\x6c\xd5\x57\xfe\x15\xc3\x1b\x3a\xe6\xf6\x6d\xc5\x3e\ -\xe5\xa8\x45\xbd\xec\xd3\x31\xad\x56\xa9\x6b\xfa\x76\x7f\x35\xaa\ -\x9d\x63\x09\x56\x9e\x08\x9c\x83\x34\x88\xd7\xf4\x2a\xff\x00\x83\ -\x59\x06\xca\xb3\xbd\xcc\xbb\x58\xf6\xf4\xcc\x78\x43\x39\x80\xde\ -\x16\x49\x98\xc4\x45\x37\x79\x1a\xfe\xd3\x46\xdf\xc2\xde\xc3\xf0\ -\xc4\x61\xea\xa2\x7f\x75\xd3\x4d\x55\x47\xd8\xe5\x47\xf2\x4c\x83\ -\xe9\x6c\x3e\x69\x82\xc5\xd3\x1e\xcb\x13\x6e\xbf\xba\x2a\x7a\xaa\ -\x98\x9a\x35\xa7\x8c\x7d\xcf\x9a\x70\x59\x96\x33\x01\x54\xfe\x8b\ -\x88\xae\x9a\xba\x75\x99\xd5\x6b\xc9\x37\x9b\x99\xe5\xd4\xc5\xbc\ -\x64\x4e\x26\x9d\x7e\xd7\xc1\x2f\x94\x6e\xba\x62\x34\xe9\xe2\x6b\ -\xca\xd6\x27\x84\xc3\x03\xb3\xfb\x4d\x85\xda\x0b\x1c\xbb\x35\x44\ -\x5c\xa6\x35\x9a\x59\xea\x6a\xe5\x53\x13\xa7\x16\x2c\x13\x4c\x7f\ -\xfd\xa2\x26\x29\xab\x81\x33\xd3\xa2\x69\xd3\x93\xaa\x0c\x46\xd1\ -\xe4\x38\x6c\xeb\x2e\xb9\x66\xe5\x31\x35\x4c\x6b\x1c\x3b\x5a\x3a\ -\x9b\xf8\xdd\x90\xda\x4e\x4c\xf2\xa8\xaa\xd5\x7c\x7e\x15\x43\xe8\ -\x78\x88\x98\x96\xbe\xde\x4e\xcc\xdb\xc7\x65\xf5\x63\xec\x53\xa5\ -\xdb\x3c\x6a\xd2\x3a\x5a\x82\xe1\x91\x66\x96\x73\x6c\xae\xce\x26\ -\x8a\xa2\x66\xaa\x63\x95\xa7\xc5\xeb\xc6\x61\x68\xc6\x61\xab\xc3\ -\xd5\x1a\xd3\x54\x4c\x35\x1e\xec\x33\xfa\xf0\xb8\xe9\xca\xef\xd5\ -\xc9\xb7\x54\xeb\x13\x33\xda\xdc\x34\xce\x93\xc3\x8c\x2d\x1f\x3e\ -\xed\x6e\x4b\x56\x47\x9e\x5d\xb3\x31\x3e\xce\x67\x58\x9f\x8b\x0b\ -\xae\xbc\x5b\x93\x79\x39\x0d\x18\xfc\xaa\x71\xb4\x47\xbf\x63\x5a\ -\xa6\x7e\x2d\x35\xdb\xa7\x6b\x72\xb5\x12\x22\x12\xaa\x00\xa0\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x4a\x00\x01\x40\ -\x00\x00\x00\x00\x00\x06\xf7\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\ -\x2a\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x87\x1b\xd4\x00\x44\x00\ -\x00\x00\x00\x00\x00\x00\x01\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\ -\x2b\x32\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x75\x5a\x18\x07\ -\x65\x00\x00\x00\x00\x01\x28\x4a\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x88\xf7\xb8\ -\xa1\xcf\x4e\x4c\x01\x73\x8d\x5c\x1c\x34\x72\xa6\x4a\x81\xca\xd5\ -\x5c\x9a\xa1\x9c\xb3\x8a\xa2\x8c\x2c\xc4\xc4\x71\x86\x06\x38\x4b\ -\xbf\xda\xcc\xd1\xc9\xd5\x07\x2b\xd5\x53\x76\xb9\x9a\x61\x14\xe0\ -\xee\x57\x4f\x2a\x28\x99\x87\x1b\x3a\x53\x54\x6b\xf1\x5c\xb2\xab\ -\x98\x09\xc2\x4c\x5d\x88\xd7\x42\xd1\x90\xdd\xe6\xd9\x61\x32\x7c\ -\x24\xe4\xf9\xa5\x53\x66\xdc\x57\x35\x59\xbb\x31\xee\xc6\xbd\x31\ -\x3f\x0e\x3d\xad\x87\x3b\x45\x92\x53\x6e\x6e\x4e\x6d\x82\xe4\xc4\ -\x6b\xc2\xfd\x33\x3f\xc3\x56\x99\xce\x6c\xe1\x22\x99\xaa\xd4\xc2\ -\xb5\x15\xe9\x54\xe9\xf1\x67\x35\x17\xed\xe0\xed\x76\x1b\x3b\xae\ -\xd6\x0f\x03\x54\xd5\x86\xb1\x54\xd5\x35\xcc\x69\xcb\xab\xa3\x87\ -\xdd\xa2\x85\x72\x79\x55\x6a\xe7\x14\xd7\x73\xa3\x8a\x6a\xc2\xdd\ -\xa6\x35\x9a\x5a\x93\x15\xc2\xde\x2b\x11\x66\x99\xa6\xd5\xfb\x94\ -\x44\xf4\xc5\x35\xcc\x38\x4c\xcd\x53\x33\x54\xcc\xcc\xf4\xcc\xa2\ -\x63\x93\x3a\x48\xa0\x00\x00\x00\x00\x00\x00\x8d\x0d\x4a\xaa\xd0\ -\x1e\xbc\xa7\x09\x56\x3b\x34\xb1\x87\xa6\x35\x99\xae\x26\x7c\x35\ -\x7d\x13\x96\xe1\x29\xc0\xe5\xd6\xb0\xf4\xc4\x47\x26\x3b\x1a\x8b\ -\x75\xd9\x5c\x62\xf3\x99\xc5\xd7\x4e\xb4\x51\x4c\xc7\xe2\xdc\xd4\ -\xeb\x33\xac\xb9\x5e\xa3\xc1\x9e\x63\xe9\xcb\x72\xab\xf8\x8a\xa7\ -\x49\xa6\x99\xd1\xa2\xb2\xfc\x3d\xfd\xa8\xda\xce\x44\xcc\xcc\x5c\ -\xb9\xcb\xfc\x35\x6c\x1d\xeb\xe6\xf3\x63\x2f\xb7\x86\xb7\x56\x93\ -\x55\x5a\x55\x1f\x73\xc1\xba\x6c\x9b\x5a\xae\xe6\x37\x69\xd2\xaa\ -\x67\x4a\x26\x7e\x02\x36\x5e\x03\x07\x46\x07\x05\x6b\x0f\x4c\x44\ -\x45\x14\xe9\xc1\xe9\xec\x26\x35\x9f\x01\x8b\x50\xe8\x8d\x08\xe8\ -\xd6\x09\x44\xce\x91\xac\x10\x46\x93\xd3\xda\xd6\x7b\xd1\xc8\x71\ -\xd9\x85\x36\xb1\x78\x4b\x75\x5d\xe4\x7d\xaa\x29\x8d\x66\x17\x0c\ -\x46\xd4\xe1\x2c\x67\xb6\xf2\xba\xab\x88\xaa\xba\x75\xd5\x9a\xa6\ -\x22\xa8\x99\xd2\x22\x25\xa9\xf8\x3e\x7e\xca\xf6\x47\x38\xcd\x6e\ -\x45\xba\x30\xd5\xd9\xab\xe3\x72\x34\x5e\x32\xcd\xd2\x5b\x8a\x29\ -\xab\x32\xbd\x35\x5c\xed\xe4\x55\xc1\xb2\xe8\xb7\x6e\x9e\x34\xd3\ -\x11\x3f\x1d\x13\x15\x4f\x18\xaa\x0f\xa3\x55\xfc\xbf\x62\x32\x7c\ -\x05\x11\x14\xd8\xa6\xe6\x9f\xb7\x1a\xb2\xb6\xf2\xac\xbe\xde\x91\ -\x6f\x05\x66\x99\xfb\xa8\x87\xaf\x58\x8e\x87\x1a\xeb\xa6\x98\xe5\ -\x4d\x51\x1f\x7c\xa7\xd1\xae\x33\x85\xc3\xd3\xa4\x7b\x0a\x3f\xf2\ -\xc1\x38\x5c\x34\xf4\x58\xa3\xff\x00\x2c\x3a\x2b\xcc\xf0\x56\xe6\ -\x62\xe6\x22\x88\x98\xfb\xd3\x6f\x34\xc0\xdd\xe1\x46\x22\x89\xfc\ -\x4d\xa2\x2e\xe5\x18\x0b\xf3\xfd\x66\x12\xc5\x5e\x34\x43\x13\x99\ -\x6c\x3e\x4d\x8f\xa6\x62\xbc\x3c\x5b\xfd\xc8\xd1\x60\xa6\xba\x26\ -\x35\xa6\x62\x7c\x1c\xa2\xad\x64\xda\x35\x6e\x6b\xba\x4a\x28\xa6\ -\xaa\xb2\xbb\xb3\x15\x4f\x1f\xeb\x27\x55\x1b\x33\xd9\x8c\xe3\x29\ -\xb9\x36\x6e\xe1\x6b\xbb\xaf\xeb\x51\x4e\xb0\xfa\x26\xa8\xd6\x75\ -\xf8\x74\x43\x85\x76\x28\xbd\x4e\xb7\x6d\xd3\x57\xdd\x30\xd7\xd0\ -\xd5\xdb\xab\xc8\xb3\x0c\x16\x23\x11\x8c\xc4\xd1\x5d\xbb\x57\x23\ -\x4a\x69\xa9\xb5\x63\x48\x8d\x7a\x25\xc2\x8a\x69\xa2\x8e\x4d\xba\ -\x62\x98\x86\x1e\xf6\xd4\x65\x96\xf3\x2a\x70\x17\x2f\x53\x17\x27\ -\x87\xe2\x9d\x19\xba\x67\x5e\x94\xc4\x38\xd1\x57\x2a\x98\xd3\xa3\ -\xb1\xc9\x8b\xd0\x9e\x8e\x0e\x8c\x4e\x1a\xde\x23\x0f\x72\xcd\xd8\ -\xd6\x2e\x53\xa4\xbb\xa7\xee\x26\x39\x5a\x6b\xda\xd4\x1f\x3e\x6d\ -\x06\x02\xbd\x98\xda\xa9\xaa\x99\xaa\x9a\x62\xe7\xb4\x8f\x0d\x5b\ -\xbb\x66\xf3\x3a\x73\x5c\x92\xce\x26\x27\x5a\xaa\xa7\x8a\x95\xbd\ -\x8c\xa6\x8b\xb8\x4a\x31\x94\x51\xad\x71\x3a\x4c\xe9\xd8\xe1\xba\ -\x6c\xde\xab\xb6\xae\xe0\xae\x4f\x0a\x67\xdd\x89\x68\x6c\x7c\x5e\ -\x16\x8c\x66\x06\xe6\x1e\xb8\x8d\x2e\x46\x9a\x4b\xe7\x7d\xa1\xc0\ -\x55\x95\x67\x98\x8b\x33\x1a\x44\xd7\x3a\x47\xdc\xfa\x3a\x75\x9a\ -\xa7\x4f\xc1\xa7\xf7\xab\x95\x46\x1f\x35\xb7\x8d\x88\xd2\x89\xa6\ -\x22\x67\xef\x59\x5a\x8a\x0e\x9c\x88\x21\x13\x3c\xa9\x98\x4b\xa2\ -\xa4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\ -\x40\x00\x28\x00\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\ -\x7c\xda\xd6\x85\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\ -\x80\x08\x80\x00\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\ -\xe1\x6f\xcc\xa5\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\ -\xab\x43\x00\xec\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\ -\xad\x47\x2a\xe4\x43\xb6\xa8\xe5\x57\x31\x0e\xbb\x53\xc9\xab\x5f\ -\xb9\xd9\x66\xbd\x27\x59\x07\x5d\x51\xc9\x97\x1d\x5c\xee\xcf\x2a\ -\xad\x5c\xb0\xf6\xa6\xed\x5a\x03\xa7\x57\x2a\x66\x59\x28\xcb\x79\ -\x54\xea\xf1\x57\x6e\x2d\x5c\xe4\x83\x8e\xb3\x0e\xca\x31\x55\xd1\ -\x1a\x45\x53\x0e\xca\x68\xa6\xaa\x5d\x57\x6d\x44\x4f\x00\x2e\xe2\ -\x6e\x5c\x8d\x26\xad\x5e\x78\x8e\x2e\xc8\xa1\x31\x47\x10\x7b\x32\ -\xfa\x39\x57\x63\x58\x67\x6e\xd8\xa2\x6d\x44\x72\x63\xa1\x5f\xb1\ -\x72\x6c\xcc\x4c\x43\xdd\xfd\x2b\x57\x27\x49\x64\x62\xf1\xd4\x45\ -\x18\x89\x88\x79\xdd\xd8\xab\xbe\xd6\xf4\xd4\xe9\x68\x00\x00\x00\ -\x00\x00\x10\x04\xce\x84\x44\x4f\x49\x31\xc5\xd7\x72\x66\x28\xaa\ -\x23\xa5\x06\xe4\xdd\x46\x06\x2c\x64\x77\xaf\xd5\x4f\xbd\x55\xce\ -\x13\xf7\x2f\xf1\x31\x14\x71\xec\x57\xb6\x27\x0d\x16\x36\x5f\x0b\ -\xa4\x69\xcb\xa2\x9a\xa7\xf8\x33\xb7\xea\xe4\x58\xae\xaf\x85\x32\ -\xe7\xfd\x63\xfa\xd2\x3b\xc8\xc6\xdc\xc6\xed\x24\xe1\x62\xad\x68\ -\x88\xe1\x1f\x7b\x68\xec\x5e\x0a\x9c\x1e\xce\x61\x74\xa7\x4a\xaa\ -\xa2\x26\x5a\x76\xfd\xc9\xcd\x76\xce\x9d\x78\xff\x00\x5f\xc9\xfe\ -\x6d\xf3\x81\xb1\x18\x7c\x15\x9b\x51\x1c\x29\xa6\x21\x6a\xbd\x33\ -\xaf\x09\x49\xd8\x39\x20\xf3\xe3\xef\xd3\x84\xc1\x5d\xc4\xd5\x3c\ -\x28\xa7\x57\xa2\x55\x7d\xe0\x66\x1f\xa0\xec\xed\xda\x29\xab\x8d\ -\xd8\xd2\x1b\x8a\xd3\xb9\xb6\x71\x89\xaf\x68\xae\x66\x3c\xb9\x9e\ -\x45\xdf\x77\x4f\x83\x77\xec\xae\x6f\x46\x75\x93\x61\xf1\x3c\xa8\ -\xe5\x72\x78\xc3\xe7\xaa\xa6\xba\xe7\xde\xe3\xaf\x4b\x63\x6e\x93\ -\x34\xae\xde\x2b\x11\x83\xbd\x57\xbb\xc3\x91\x0d\xd9\xf8\xb8\xdb\ -\x11\x13\x4a\x66\x75\x8d\x22\x78\xa6\xa9\xed\xec\x70\xb9\x54\x5a\ -\xb7\x55\xd9\xfd\x5a\x66\x5c\xb1\x97\x87\x38\xce\x70\xd9\x3e\x0e\ -\xbc\x46\x22\xb8\x8e\x4c\x6b\xc9\xf8\xb5\x06\xd0\x6f\x1b\x31\xcc\ -\x2e\xd5\x6f\x09\x57\xb3\xb5\xaf\x0e\x0f\x36\xdd\xed\x1d\xec\xe7\ -\x38\xaa\xcd\x17\x26\x30\xf6\xe7\x84\x6b\xd2\xac\xc4\xeb\x1a\x45\ -\x3a\x43\xaf\x9f\x31\x64\x77\xdf\xcc\x31\xb8\xaa\xa6\xab\xb8\x8b\ -\x9a\xcf\xc2\xa9\x2c\x66\x38\xcc\x2d\x51\x55\xbc\x45\xcd\x63\xe3\ -\x54\xba\x51\x2d\x64\x69\x71\xc8\x37\x85\x99\x65\x77\x69\xfd\x32\ -\xe4\x5e\xb5\x33\xd1\xa7\x16\xda\xc9\x33\xdc\x26\x77\x85\xa6\xfe\ -\x1a\xe5\x35\x4e\x9e\xf5\x31\x3d\x0f\x9d\x22\x22\xa8\xff\x00\xd1\ -\x9f\xd8\xed\xa1\xbd\x90\x66\xb4\xcf\x2e\x63\x0f\x72\x7d\xfa\x67\ -\xa2\x19\xb1\x31\xbf\xf5\x89\xab\x42\x78\x4e\x93\xda\xe9\xc3\xdf\ -\xa3\x13\x85\xb7\x88\xb7\xc6\x2b\xa6\x25\xdd\x57\xbd\x4c\x4b\x96\ -\x7e\xa3\x19\xb4\x19\x8d\x19\x5e\x51\x7f\x11\x55\x51\x4c\xd1\x4e\ -\xb1\xf7\xbe\x7e\xb9\x8e\xbb\x7f\x39\x9c\xc2\x6e\x55\xac\x5d\xe5\ -\xf4\xb6\x46\xf7\x33\x4a\xa9\xb3\x87\xc1\xda\xaf\x4d\x67\xdf\x8f\ -\xb9\xaa\xe6\x9d\x27\xdd\xfb\x33\x1a\x3a\x48\xb1\xf4\x5e\xcd\xe6\ -\x31\x99\x64\x78\x7c\x4c\x4e\xbc\xaa\x63\x56\x5b\xa6\x63\x46\xbe\ -\xdd\x56\x69\x4e\x23\x2d\xaf\x03\x33\xfd\x8f\x08\x6c\x1a\x63\x93\ -\x32\xc7\xae\xb3\x49\x89\x38\xff\x00\x02\x2a\xe9\x35\x41\x85\xda\ -\x9c\x15\x38\xcc\x8f\x15\x4d\x74\xf2\xa6\x2d\xcc\xc7\x8b\x51\x6c\ -\x0e\x36\xbc\xbb\x6a\xe8\xb3\x54\xe9\x4c\xeb\x12\xde\x58\xbb\x71\ -\x7b\x0b\x72\xdc\xc7\xda\xa7\x46\x81\xc6\x7f\xd9\x7b\x65\x5d\x51\ -\xc2\x22\xec\x44\x7f\x16\xe0\xfa\x06\x2a\x8a\xe8\x89\x8f\x87\x05\ -\x23\x7a\x98\x0f\xd2\xb6\x66\x2b\x88\xd6\xba\x6e\x53\x3f\x82\xe3\ -\x82\xab\x97\x82\xb3\x72\x3b\x68\x89\xfe\x4c\x7e\xd4\xe1\xe3\x17\ -\xb3\xf8\xaa\x6a\x8d\x79\x34\x4d\x5f\xc2\x10\x7c\xf1\x4f\x19\xf0\ -\x22\x5c\x2d\x4c\xc4\x55\xe3\x2e\x50\xed\x38\xdb\x90\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x12\x80\x00\x50\x00\ -\x00\x00\x00\x00\x01\xbd\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0a\ -\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\xc6\xf5\x00\x11\x00\x00\ -\x00\x00\x00\x00\x00\x00\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\ -\xcc\xac\xef\x1f\xa8\x79\x97\x85\xbf\x32\x95\x9d\x56\x86\x01\xd9\ -\x40\x00\x00\x00\x00\x4a\x12\x80\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\xd2\xf7\xd8\xc2\ -\xcd\x56\xe2\x74\x78\x23\xa7\x55\x8b\x2d\xaa\xd5\xdc\x3d\x31\xda\ -\x94\x63\x2e\x60\xa7\xe0\xf5\xe5\xd8\x3e\x4d\x5c\x61\x91\xbd\x66\ -\xdc\x47\x0d\x1d\x78\x7b\xb4\xd3\x7a\x29\x84\xd4\x76\xde\xb5\x55\ -\xbb\x53\x54\x47\x05\x6e\xf4\xcd\x58\x89\xd5\x74\xc6\xf2\x29\xc0\ -\xeb\x31\xc6\x61\x4d\xbf\xa7\xb5\xaa\x63\xe2\x41\x31\x57\x25\xc6\ -\xba\xe2\xa7\x1d\x26\xa8\xd7\x44\x69\x3a\xaa\xa3\x95\x3a\xbb\x28\ -\x89\xa9\xd9\x87\xc3\xcd\xc9\xe8\x76\x5d\xa2\x2d\x4e\x80\x8a\x26\ -\x8a\x78\x54\x8b\xbe\xce\x69\xd6\x1e\x5b\x97\x26\x6a\x75\xcd\x75\ -\x7c\x40\xab\xed\x20\x14\x00\x00\x00\x00\x00\x00\x44\x6b\xab\x9d\ -\x9a\x22\xee\x26\x8b\x73\xfa\xf3\xa3\x87\x6b\xbf\x03\x11\x38\xfb\ -\x3f\xbc\xc8\xfa\x17\x67\xa8\xf6\x79\x0e\x12\xdc\x76\x5a\x88\xfe\ -\x4e\xec\xd6\xe4\xd8\xca\xef\x55\xd3\xa5\x32\x64\xd1\x11\x93\xe1\ -\x7f\xdd\xc3\x86\x7d\xfd\xd1\x7f\xf7\x65\x8f\xeb\x1f\xd6\x8c\xd9\ -\x8b\x53\x77\x6c\x22\x67\x8f\xfd\x62\x67\xf9\xbe\x82\xa3\xdd\xa6\ -\x3c\x1a\x1b\x62\xa2\x27\x6b\xaa\xd7\xff\x00\xcb\x3f\xe2\xdf\x34\ -\x2f\xae\x2d\x4c\x88\x8e\x99\x72\x72\x8c\xa1\xab\x37\xbd\x8e\xaf\ -\x91\x87\xc3\xd1\x3a\x69\x5e\xb2\xda\x72\xd2\xbb\xcf\xbf\x37\x33\ -\xd9\xb3\x3d\x14\xc4\x4c\x37\xe5\xa5\x2b\x59\xd7\x58\x96\x73\x63\ -\xb1\x55\xe1\x76\xaf\x07\x34\xd5\xee\xcc\xfb\xd1\xf1\x60\xe3\xec\ -\xbd\x19\x6e\x2b\xf4\x4c\xca\xc6\x23\xa3\x91\x53\xa5\xe2\xbe\x94\ -\xa2\xbe\x5d\xa8\x98\x8e\x98\xd5\x8a\xda\x7c\x55\x78\x4c\x82\xfd\ -\xca\x67\x49\xe4\xcc\x6a\xf7\xe5\xd5\xc5\xcc\xbf\x0f\x77\x5d\x79\ -\x76\xe2\x7f\x93\x1b\xb5\xb6\x6a\xc4\xec\xf6\x22\x8a\x23\x8c\x46\ -\xae\x7f\xd6\x6b\xe7\xba\xa6\xaa\xaa\xae\xab\x93\xca\xab\x95\x33\ -\xfc\xd1\xae\xba\x4f\x61\xc7\xda\x55\x15\x70\x9e\x54\xc2\x7e\xcf\ -\xba\xed\xe7\x8d\x44\x9a\xfd\xda\x88\x99\x98\xe8\x14\xe8\xe3\xda\ -\x89\xd7\x91\xc6\x75\x99\xe8\x27\x5d\x35\x9e\x92\xb9\xe4\xd1\x15\ -\x4b\x34\x6f\xad\x81\xc6\xd5\x8d\xd9\xcb\x55\x57\xc2\x69\xf7\x61\ -\x66\x9e\x14\xfd\xd0\xa9\x6e\xef\x0f\x55\xad\x9b\xa2\xaa\xf8\x72\ -\xa7\x58\x5a\x6f\x57\xc9\xc3\xdc\xab\xb2\x9a\x66\x5c\xd9\x68\xbd\ -\xe3\xe3\x6b\xc4\xed\x75\xeb\x3a\xfb\x94\x44\x68\xac\x6b\xc9\xf7\ -\x59\x3d\xa5\xc5\x53\x8e\xda\x1c\x46\x22\x27\x5e\x3a\x31\x95\x74\ -\xc4\xba\x48\xb1\x79\xdd\x5e\x22\x6c\x67\x55\xda\xd7\xfb\x49\x6e\ -\x5e\x33\x71\xa2\xb7\x77\x72\xaa\x36\xa6\xcc\x47\x6c\xb7\xb6\x9c\ -\x22\x5c\xfd\x75\x29\x33\xa5\x5a\x68\x68\x9e\x91\x94\x46\x9c\x34\ -\x68\x0d\xb8\xb5\x34\x6d\x5d\xc9\x8e\x1a\xde\x89\xfe\x6f\xa0\x1a\ -\x23\x78\xb1\x11\xb4\xd4\xcd\x3d\x3e\xd2\x35\xfe\x2d\xc1\xb9\x76\ -\x7e\xe7\xb5\xc9\x30\xf5\x4f\xec\x44\x3b\xb3\x6a\x3d\xa6\x53\x8a\ -\xb7\xf1\xb5\x57\xf8\x3c\x9b\x2f\xfd\xc1\x87\xfd\xd8\x7b\xf1\xdc\ -\x72\xec\x47\xfb\xba\xbf\xc1\x91\xf3\x5e\x22\xdf\xe8\xf8\x9a\xec\ -\xe9\xd1\x54\xb8\x4c\x69\x2f\x5e\x6f\x11\x19\x95\xfd\x3f\x69\xe3\ -\x8e\x87\x79\xc6\xd2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x84\xa0\x00\x14\x00\x00\x00\x00\x00\x00\x6f\x7d\xdb\ -\x75\x0b\x2d\xf9\xbe\x6d\x6b\x42\xaf\xbb\x6e\xa1\x65\xbf\x37\xcd\ -\xad\x68\x71\xbd\x40\x04\x40\x00\x00\x00\x00\x00\x00\x00\x15\x9d\ -\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\x2b\x3b\xc7\xea\x1e\x65\xe1\ -\x6f\xcc\xa5\x67\x55\xa1\x80\x76\x50\x00\x00\x00\x00\x12\x84\xa0\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x03\x21\x95\x62\x39\x17\xb9\x15\x4e\x91\x2c\x79\x4d\ -\x53\x45\x51\x54\x4e\x93\x00\xce\xe2\xf1\x5c\x99\x98\xd5\xe3\xc2\ -\xe2\x6a\x9c\x56\xaf\x15\x77\xaa\xb9\x31\xca\x97\xab\x01\x44\xcd\ -\x7c\xa4\x19\x8c\xc7\x31\x99\xc3\xc5\x1a\xf4\x43\x01\x55\xc8\xaa\ -\xae\x2f\x56\x3e\xad\x67\x47\x82\x23\x5a\xb4\x20\xc9\x5a\xa2\x8a\ -\xad\x70\xe9\x79\xaf\x53\x36\xe7\xa1\x91\xca\x72\xfb\x98\x99\xf7\ -\x75\xd1\x90\xc5\x64\xb7\x29\xe9\xa4\xd1\x8b\xcb\xee\xd3\x14\xf1\ -\x87\x56\x32\xdd\x75\xd7\xad\x31\xc1\x91\xa7\x05\x45\xaa\x75\xed\ -\x75\xdd\xbb\x45\x11\xa4\xc4\x22\x30\xbe\xc2\xa9\x9e\x30\xe1\x72\ -\xdf\x23\x84\xb2\xb3\x88\xc3\xd3\x44\xcc\xc7\x16\x2a\xfd\xdf\x6b\ -\x72\x6a\xec\x55\x70\x01\x40\x00\x00\x00\x00\x00\x04\x74\xce\x8e\ -\xdc\x1c\xf2\x31\x96\xab\x9e\x88\xa9\xd7\x1a\x44\xba\xab\xaa\xaa\ -\x62\x6a\x8e\xc4\x1f\x4a\xe4\x95\x72\xf2\x5c\x25\x51\xd1\x36\xa0\ -\xce\x28\x9b\xb9\x4d\xfa\x69\xe9\x9a\x65\xe4\xd9\x4b\xde\xdb\x66\ -\x30\x55\x6b\xc6\x2d\x53\x13\xfc\x19\x4c\x45\x1c\xac\x35\x74\x7c\ -\x69\x97\x2f\xeb\x2d\x05\xb2\x97\xbd\x96\xd7\xc4\x74\x6b\x7e\x63\ -\xf9\xbe\x81\xa7\x8c\x46\x9f\x07\xcf\x96\x2d\xce\x59\xb6\x94\xf2\ -\xb8\x7f\xd6\x26\xaf\xe6\xdf\xd8\x6b\xb1\x77\x0f\x6e\xe5\x3d\x15\ -\x53\x12\xd5\xe0\xee\xe8\x4a\x3b\x65\x2e\x49\x88\x9e\x86\x92\xde\ -\x7d\xba\xa8\xda\x4a\xaa\xec\xd2\x1b\xb5\xa9\xf7\xb7\x81\xaa\x8b\ -\xf6\x71\x51\x1c\x2b\xab\x49\x6f\xcb\x51\xad\xe2\x78\x15\x51\xa4\ -\x47\x8c\x4a\x66\x62\x6a\xe4\xc2\x39\x35\x6b\xc8\xec\xa9\xd7\xf8\ -\xad\xfb\xb0\xd9\x9d\x19\x96\xcf\xd9\xab\x95\xca\xf6\x71\x14\x7f\ -\x06\x73\x11\x66\x9c\x46\x1e\xed\xa9\x8d\x62\xaa\x66\x3f\x93\x52\ -\xee\xbb\x3f\xa7\x03\x8c\xab\x2c\xbb\x5f\xb9\x57\xd9\xd6\x7b\x5b\ -\x82\x99\x8e\x9d\x7a\x5c\xeb\x35\xf3\xbe\xd4\x65\x57\x72\x9c\xf2\ -\xfe\x1e\xaa\x39\x31\xae\xb4\xfd\xec\x44\x7d\x9f\x7b\xa6\x1b\xd3\ -\x6c\xf6\x42\xce\xd1\x60\xe6\xf5\xb8\x8a\x71\x36\xf5\x9a\x6a\xf8\ -\xcb\x4d\xe6\x59\x26\x61\x94\xdd\xaa\x8c\x5d\xaa\xb4\xd7\xed\x69\ -\xd2\xdf\x9a\x47\x80\xd7\xb5\x13\x56\x9d\x93\xfc\x08\xe5\x4c\xeb\ -\x13\xfc\x9a\xd8\xd2\x62\xae\x3e\xfc\x70\x7b\xb2\x4c\xb2\xe6\x71\ -\x9a\x51\x85\xa2\x9e\x54\x4d\x5d\x9d\x86\x59\x93\xe3\xb3\x6b\xde\ -\xcf\x0d\x6a\xaa\xa6\x67\x4e\x86\xe0\xd8\xad\x8a\xb7\xb3\xf8\x7f\ -\x6d\x76\x22\xac\x4d\xc8\xf7\xaa\x9e\xc6\x2d\x16\x4c\xab\x07\x46\ -\x03\x2d\xb5\x86\x88\xd3\x91\x44\x6b\xe2\xf2\xed\x1e\x63\x46\x5d\ -\x92\x5f\xbb\x5d\x5c\x98\xe4\xcc\x32\xb3\x1c\x78\xf6\x35\x5e\xf4\ -\x76\x82\x2e\x4c\x65\x76\x6b\xe9\xfb\x7a\x7c\x59\x8c\xb5\xad\x53\ -\x55\x57\x2e\xd5\x54\xf1\xaa\xa9\x92\x75\xe4\xc2\x66\x29\x88\xe3\ -\x3c\x4d\x78\x69\x0e\xb1\xa8\xb6\x6e\xde\xc4\xdd\xda\x5b\x55\xc4\ -\x70\xa6\x78\xb7\x96\xbc\x79\x2d\x4b\xba\x4c\x0d\x77\x31\x18\x9c\ -\x55\x74\xf0\xa6\x63\x49\x6d\xa8\x9e\x89\x72\xf5\xd6\x6a\x67\xa7\ -\x43\xa0\xab\xed\x41\xa3\x9a\x25\xa0\x76\xee\xef\x2f\x6a\xab\x89\ -\xe3\xa5\xd8\x8f\xe6\xdf\x57\xab\x8b\x56\x6a\xae\x7f\x56\x35\x68\ -\x0c\xf2\x3f\xa4\xf6\xce\xe5\x34\xf1\xd6\xf4\x4f\xf3\x74\xf2\xad\ -\xe1\xb3\xd6\xe6\xd6\x47\x87\x89\xfd\x88\x97\xa7\x30\x9d\x32\xec\ -\x4c\xf6\x45\xaa\xa7\xf9\x19\x7d\xbf\x67\x97\x58\xb7\xfe\xc4\x7f\ -\x83\xa7\x3d\xbb\x18\x7c\x93\x19\x5c\xcf\xff\x00\x66\xa8\xfe\x48\ -\x8f\x9d\xf3\x0a\xbd\xae\x61\x76\xa8\xe8\x9a\x9e\x77\x1a\x2e\x4d\ -\xc8\x9a\xe7\xa6\x6a\x97\x28\x87\x59\xc6\xff\x00\x89\x01\x40\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x94\x00\x02\x80\ -\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\ -\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\ -\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\ -\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\ -\xca\x00\x00\x00\x00\x02\x50\x94\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\xd0\xcb\ -\x65\x57\xf0\xf1\xad\x17\x67\x93\x3d\x92\xc5\x20\x19\x1c\x7d\x31\ -\xed\x26\x69\xab\x58\x78\x62\x66\x27\x58\x47\x2e\xae\xd9\x4d\x15\ -\xf2\x67\x8c\x6a\x0c\xfe\x47\x9d\xc6\x02\xa8\xe5\xc7\xf1\x85\x8a\ -\xee\xd1\x61\x71\x16\x27\x5a\x69\xd6\x7e\x0a\x55\x18\xdb\x31\x46\ -\x93\x6b\x59\x74\xdc\xc5\x44\xfd\x8a\x74\x67\x06\x5f\x13\x8e\x8a\ -\xee\xd5\x34\xcf\x06\x3f\x11\x88\xa2\x69\x9e\x3a\xcb\xc5\x37\x2a\ -\x9e\xd7\x1e\x95\xc1\x35\x55\x35\x4a\x10\x95\x00\x00\x00\x00\x00\ -\x00\x00\x01\x1c\x9e\xdd\x5c\x6a\xd3\x93\x54\x7c\x5c\xe1\xc6\xbe\ -\x20\xde\x1b\xb5\xc6\x7e\x99\xb3\x71\x4e\xba\xcd\xa9\x8a\x7f\x92\ -\xdf\x3c\x68\x98\x9f\x83\x57\x6e\x8b\x30\xa6\xdd\x17\x70\x53\x57\ -\xbd\x55\x53\x56\x8d\xa5\x3c\x67\xc5\xca\xf5\x9a\xd1\x1b\x7b\x62\ -\xac\x06\xd7\x7b\x48\xa6\x62\x34\xe5\x44\xb6\xe6\xca\xe2\xa3\x17\ -\xb3\xf8\x5b\x9c\xad\x67\x91\x1a\xa9\x9b\xda\xca\xa6\xab\x16\xb1\ -\xd4\x53\xc6\x2a\xd2\x67\xee\x77\x6e\x9f\x37\xf6\xf8\x0b\xd8\x5b\ -\xd5\xeb\x55\x33\xee\x44\xfc\x0d\x1b\x22\x65\x2e\x34\x69\x54\x72\ -\xba\x1c\x99\x4a\x89\x56\x76\xeb\x29\x8c\xcf\x22\xb9\x31\x4f\x2a\ -\xbb\x71\xad\x2b\x33\x85\x74\x53\x5d\x15\x45\x7c\x69\x98\xd2\x60\ -\x8a\xf9\x92\xbb\x73\x66\xf5\x54\xcf\xda\xa6\x74\x98\x46\xb3\x33\ -\xac\x2e\x1b\xc0\xd9\xba\xb2\x9c\xca\xac\x5d\x8b\x73\x36\x6f\x4e\ -\xb3\x31\x1d\x12\xa7\xf0\xa7\xb7\xa5\xdb\xcd\x69\xd9\x62\xed\xcc\ -\x26\x22\x8c\x55\x9a\xb9\x35\x51\x3a\xb7\x5e\xc6\x6d\x6d\x8c\xf3\ -\x2e\xa2\xd5\xeb\x91\x4d\xfa\x22\x22\x62\x67\x8c\xb4\x85\x33\x14\ -\xfd\xae\x2e\xec\x26\x36\xfe\x02\xfc\x5d\xc3\x57\x36\xea\x89\xd7\ -\x82\x7a\x89\x63\xe9\x7a\x75\xd2\x22\x7a\x3e\xe7\x93\x1b\x94\xe0\ -\xb1\xf4\xe9\x88\xb1\x45\x71\xf7\xc3\x5f\x6c\xce\xf3\xec\xc5\xba\ -\x30\xd9\xac\xcd\x35\x47\x08\xaf\xe2\xbe\xe0\xf3\xac\xbb\x1d\x4c\ -\x57\x6b\x13\x44\xc4\xc6\xb1\x1c\xa7\x34\x61\xb1\x5b\xbb\xc9\x71\ -\x75\x72\xb9\x1c\x8d\x7f\x66\x1c\x70\xfb\xb9\xc9\xb0\xf5\xc5\x5c\ -\x89\xab\x4f\x8c\x2d\x5e\xd6\xdf\x27\x5a\x2a\x89\xf0\x94\x7b\x5a\ -\x6a\xa7\x59\xae\x23\xf1\x3f\x51\xe4\xc1\xe5\x38\x1c\xb7\x49\xc3\ -\xe1\xe8\xa2\x7e\x31\x0f\x65\x51\xc7\x5d\x74\xd5\xe6\xc4\xe6\x58\ -\x2c\x2d\xb9\xae\xfe\x22\x88\xd3\xe3\x2a\x36\xd2\x6f\x37\x0d\x86\ -\xa2\xab\x39\x7f\xf5\x95\xc7\x0d\x57\x28\xce\x6d\x86\xd6\x61\xf2\ -\x3c\x0d\x51\x45\xca\x6a\xbd\x54\x72\x62\x98\x9e\x2d\x1d\x8e\xc6\ -\x5d\xc7\xe3\x6e\xe2\xaf\xce\xb5\x5c\x9d\x78\xb9\xe3\xf3\x0c\x4e\ -\x63\x8c\xab\x13\x8a\xae\x6b\x9a\xb8\xc4\x4c\xf4\x3c\xb1\xac\xd5\ -\x35\x55\xc7\x5e\x88\x6e\x46\xb1\x31\x4c\x71\x89\xe3\x25\x34\x4c\ -\xd7\x14\xd3\xd3\x57\x08\x84\x7b\xd1\x4c\xfb\xbe\xf2\xcd\xb0\x9b\ -\x3b\x7b\x39\xce\x6d\xdc\xb9\x6f\x5b\x16\xf8\xcc\xcf\xc4\xb4\x6d\ -\x0d\xde\xe5\x7f\xd1\xf9\x05\xba\xeb\xa7\x93\x5d\xd8\xd6\x56\x99\ -\xe9\x88\xfb\xdc\x2c\x5b\xa2\xcd\xba\x6d\x5b\xe1\x14\xc6\x9a\x3b\ -\x34\x72\xf5\x59\x0d\x49\xd2\x3a\x51\xae\x91\x1c\x3a\x59\x83\x19\ -\xb4\x38\xa8\xc3\x64\xb8\xab\x93\x3c\x9d\x2d\xce\x8d\x2f\xb2\x16\ -\x6b\xcc\xb6\xc6\xdd\x75\x53\x33\x15\x4c\xcc\xca\xfd\xbd\x2c\xde\ -\x30\x99\x4c\x61\x68\xaf\x4a\xeb\x9e\x31\xf7\x30\xdb\xa5\xcb\x2b\ -\x9b\xb7\xb1\xb7\x29\xe1\x4c\xfb\xb3\x2e\x8b\x1b\x56\x88\x8a\x2d\ -\x53\x4f\x6c\x46\x8a\xd6\xde\xe3\x23\x0b\xb3\x17\x6a\xaa\xae\x4f\ -\x2e\x79\x3f\xc5\x66\x8d\x26\x79\x55\x35\xae\xf7\xb3\x0a\x67\x2f\ -\xb7\x80\xa6\xae\x35\x57\x4d\x5a\x33\x3a\x35\x4d\x31\xc9\xf7\x63\ -\xa3\x57\x3e\x97\x19\xd6\x9d\x62\x3a\x13\x1c\x5d\xe7\x1b\xfe\x24\ -\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x50\ -\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\x85\x96\xfc\xdf\ -\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\x38\xde\xa0\ -\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\xfa\x87\x99\x78\ -\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\xaa\ -\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\x42\x50\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x10\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\ -\x04\xc6\xa9\x01\x9b\xd8\xcc\xce\xac\xab\x68\xec\xd7\xca\xd2\x9a\ -\xfd\xdf\xe2\xfa\x06\x8a\xb9\x56\xe8\xaa\x3b\x61\xf3\x1d\x35\xcd\ -\xab\xb6\xee\xd3\x3a\x4d\x15\x45\x50\xdf\xbb\x1b\x9c\x53\x9c\xe4\ -\x16\x6e\x4d\x5a\xdc\xa6\x9f\x79\xcf\xd4\x4a\xf4\xed\x4e\x59\x4e\ -\x6b\x91\x62\x2c\xcd\x3a\xd5\xc9\x9e\x4f\x8b\x4b\x6c\xae\x67\x73\ -\x66\xf6\xa2\x9b\x77\x26\x62\x8a\x6b\xe4\x55\x13\xf1\x6f\xf9\x88\ -\xaa\x9e\x4c\xc7\x06\x96\xde\x66\x43\x5e\x5b\x9b\x46\x3a\xc5\x11\ -\x16\xeb\x9e\x55\x53\xf7\xb1\x11\xb9\xec\xdd\xa2\xfd\x8b\x77\x29\ -\x98\xd2\xa8\xd6\x34\x76\x28\xfb\xb6\xda\x28\xcc\xf2\xba\x70\x97\ -\xee\x44\xdf\xb1\x1c\x75\x9e\x95\xde\x98\x99\x89\xd5\xaa\x89\x71\ -\x98\x9e\x34\xf6\x1c\xad\x6a\x8a\x62\x38\x7c\x5c\x98\x18\xdc\xdf\ -\x28\xc3\xe6\xb8\x2a\xf0\xd7\xa8\x8a\xa2\xa8\xe1\xaf\x64\xb4\x6e\ -\xd4\x6c\xd6\x2f\x20\xc7\x55\x15\xdb\x99\xb1\xaf\xbb\x56\x8f\xa1\ -\x26\x18\xfc\xdb\x27\xc2\xe7\x18\x6a\xac\xe2\xad\xc5\x51\x31\xee\ -\xcf\xc1\xa9\x56\x57\xce\x13\x1e\xf4\x55\xd8\x9d\x74\xab\x5e\x98\ -\x5b\xb6\x9f\x60\xb3\x0c\xa2\xed\x77\xf0\xd4\x7b\x5c\x3c\xce\xba\ -\x47\x19\x85\x42\xa8\xaa\xdc\xcc\x57\x4c\xd1\x57\xec\xd4\xe9\x2b\ -\x5a\x89\xa3\x8f\x2a\x78\xc3\xbf\x0d\x8c\xc5\x61\x2e\x45\x78\x7b\ -\xf7\x29\x9f\x87\x29\xd1\x4d\x53\x3d\x3c\x25\x33\x3c\x8e\x3d\xa5\ -\x88\xce\x5b\xdb\x5c\xfe\xcd\x1c\x9b\x78\x9f\xe2\x7f\xd3\x8d\xa1\ -\xaa\x34\xab\x13\xfc\x18\x28\xe5\xcf\x44\x7f\x14\xeb\xa4\x71\x3f\ -\x15\xea\xc5\xe6\xb8\xfc\xc2\xb9\xaa\xfe\x22\xe4\xcc\xf6\x45\x4f\ -\x1c\x4f\xbd\xef\xf1\xa9\xca\x99\x9e\x98\xd0\xd2\x35\xd7\xa2\x7e\ -\xf6\xb6\x08\x98\xe8\x84\xd5\x3a\x4c\x41\x3a\x72\xa3\xb6\x7e\x10\ -\xb0\xec\xfe\xc8\x63\xf3\xdc\x45\x33\x16\xaa\xb7\x66\x7a\x66\xa8\ -\xd0\xd4\xd6\x2f\x28\xca\xf1\xb9\xde\x3e\x8c\x2e\x1a\xdc\xd5\xac\ -\xf1\xae\x23\x84\x37\xc6\xce\x6c\xfd\x9c\x83\x2e\xb7\x66\xdc\x47\ -\x2e\x63\xdf\x9f\x8c\xb8\xec\xee\xcc\x60\xf6\x7f\x09\x4d\xab\x36\ -\xe3\xda\x7e\xb5\x7a\x71\x96\x73\xc5\xcb\xd5\x65\x14\xd3\x11\xd0\ -\xe4\x8d\x67\xb1\x3a\x39\xe0\x89\x9d\x1d\x77\x6e\x72\x22\xaa\xea\ -\xe1\x4d\x31\xab\xb2\x65\x50\xde\x16\xd0\x46\x55\x93\x57\x62\xd5\ -\xc8\x8b\xf7\x62\x62\x9e\x2d\x48\x35\x9e\xdb\x66\xb5\x6d\x0e\xd4\ -\x4d\xab\x55\x6b\x44\x4f\xb3\x88\x8f\x8b\x6d\xec\x86\x55\x19\x56\ -\x45\x87\xb7\x34\xe9\x5c\xd3\xef\x35\x76\xef\xb2\x2b\x99\xce\x75\ -\xfa\x65\xfa\x39\x56\xe8\x9e\x54\xd5\xfe\xd3\x77\x53\x44\x53\x4c\ -\x69\xd1\x11\xa6\x8b\x6a\xa6\xa9\x8e\xde\x10\xd0\xdb\x7d\x9a\x4e\ -\x63\xb4\xb5\xd3\x15\x6b\x45\xa8\x9a\x3f\x16\xdf\xda\xbc\xd6\x8c\ -\x9f\x24\xbf\x7a\x6a\xd2\xbe\x4f\xbb\xe2\xf9\xff\x00\x13\x7a\xac\ -\x5e\x2a\xe6\x22\xae\x9b\x95\x4d\x4b\xe7\xc8\xe3\x13\x1c\x8e\x4c\ -\xf4\xa2\x98\xd2\x0d\x3b\x52\xec\xd0\x02\x00\x00\x00\x00\x00\x00\ -\x08\x4a\x1e\x9c\x16\x1a\x31\x17\xa2\x99\xe8\x07\x9e\x38\xa6\x69\ -\x98\x8d\x74\x67\x71\x79\x75\xbb\x38\x5d\x69\xa7\x8c\x31\xf5\x51\ -\x4d\x56\x34\xd3\x8a\x0f\x15\x34\xcd\x53\xa4\x3b\x2b\xc3\x5d\xb7\ -\x44\x57\x34\xfb\xb3\xdb\x0e\x31\x45\x54\xce\xba\x32\x98\x7a\x6a\ -\xbf\x84\x9a\x24\x18\x74\xbd\xd7\xb0\x5c\x9a\x35\xd3\x8b\xc3\x31\ -\xa4\xe9\x2a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x84\xa0\x00\x14\x00\x00\x00\x00\x00\x00\x6f\x7d\ -\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x42\xaf\xbb\x6e\xa1\x65\xbf\x37\ -\xcd\xad\x68\x71\xbd\x40\x04\x40\x00\x00\x00\x00\x00\x00\x00\x15\ -\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\x2b\x3b\xc7\xea\x1e\x65\ -\xe1\x6f\xcc\xa5\x67\x55\xa1\x80\x76\x50\x00\x00\x00\x00\x12\x84\ -\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x21\x20\x14\xc4\x4d\x5c\x7a\x17\x5d\xdb\xed\ -\x07\xe8\x19\xa4\xe0\xee\xd5\xa5\xab\xd3\x11\x1a\xcf\x42\x93\xa4\ -\xe8\xec\xc3\x5d\xaa\xcd\xda\x31\x16\xaa\xd2\xaa\x27\x58\x66\xc4\ -\xaf\xa6\x22\xb8\xaf\x49\xa6\x74\x89\x8e\x12\xc3\xed\x4e\x4b\x67\ -\x3c\xca\x6e\xe1\x2b\xa7\x5a\xb4\x99\x89\xfb\xde\x4d\x8c\xda\x0b\ -\x79\xe6\x53\x46\xb5\x47\xb5\xb7\x1a\x4c\x2c\x7a\xf2\xa3\xa3\xa1\ -\xcf\x19\x7c\xf5\x97\xe2\xb1\x3b\x25\xb4\x51\xca\xaa\x69\xf6\x55\ -\xff\x00\x59\x1f\xb5\x0d\xf3\x94\xe6\x96\x73\x5c\xbe\xde\x26\xd5\ -\x71\x54\x55\x4c\x6b\x10\xa7\x6f\x07\x64\x68\xcc\xf0\xf5\xe3\xb0\ -\xb6\xa3\xda\xdb\x8d\x67\x48\xfb\x4a\x6e\xc4\xed\x65\xed\x9d\xc7\ -\xfe\x89\x8c\x9a\xa6\xcd\x53\xc9\xd2\x7b\x24\xa3\x78\x53\xa4\x44\ -\xe9\xda\xe4\xf3\x61\x31\x34\x63\x30\xf4\xdf\xb5\x5c\x55\x4d\x71\ -\xad\x33\x0f\x44\xce\xbc\x22\x74\x94\xa3\x93\x8e\x93\x33\x13\xf0\ -\x4c\xf4\x23\x5d\x59\x1c\x2e\xdb\xa2\xec\x4d\x35\xc4\x55\x13\xd9\ -\x30\xab\x67\x7b\xbd\xcb\x33\x59\xaa\xe5\xba\x22\xd5\xd9\xfd\x68\ -\x85\xb2\x23\x48\xd0\xd1\xa9\x4d\x69\x5c\xcf\x76\x59\x9e\x06\xba\ -\xab\xc3\x4c\xe2\x23\xb2\x22\x15\xcc\x46\xce\x67\x78\x6b\x93\x37\ -\xf0\x35\x51\x11\xda\xfa\x3b\xb3\x49\xe2\xeb\xaf\x0f\x62\xe7\xdb\ -\xb3\x45\x5e\x30\xd7\xd2\xeb\xe6\xca\xf0\x38\xba\x3e\xdd\xaa\xa3\ -\xf0\x71\xa7\x07\x88\xaa\xa8\x88\xb3\x54\xfe\x0f\xa3\xab\xca\xb0\ -\x37\x27\x59\xc2\xda\xff\x00\xca\x8a\x72\x9c\x05\x33\xc3\x09\x6b\ -\x87\xfb\x2b\xa6\xbe\x79\xb7\x91\x66\xb8\x8a\xe2\x9c\x3e\x0e\xaa\ -\xb5\x58\x32\xed\xdb\xe7\x38\xe8\x89\xc4\x5a\xaa\xcc\x4b\x76\x51\ -\x84\xc3\x5b\x9d\x68\xb1\x6e\x9f\x0a\x5d\xd1\xc3\xa2\x34\x34\x51\ -\x32\x3d\xd9\xe5\xf9\x7c\x53\x5e\x33\x4b\xf5\xc7\x64\xae\x98\x6c\ -\x25\xac\x25\x98\xb7\x62\xdc\x53\x4c\x47\x08\x88\x77\x8c\xda\x88\ -\xa2\x67\x93\xef\x74\xa6\x51\x33\xa7\x61\xd2\xc5\xa1\x15\x72\x7b\ -\x0d\x66\x51\xac\x72\xb8\xc3\x86\x2b\x13\x45\x8b\x55\x57\x72\xa8\ -\xa2\x8a\x63\x59\x99\x6a\x0e\x9c\xcf\x30\xc3\xe5\xd8\x2b\x98\x8b\ -\xb5\x44\x45\x11\xaf\x16\x86\xce\xf3\x2c\x4e\xd6\x6d\x14\xf2\x2b\ -\x9a\xa8\xae\xbd\x2d\xd1\x1d\x8c\xc6\xdd\x6d\x75\xcc\xe3\x15\x56\ -\x5d\x81\xaa\xaf\x61\x15\x69\x56\x9d\x35\x4f\xdc\xb2\xee\xeb\x63\ -\x23\x0b\x87\xa7\x32\xc5\x5b\x8f\x69\x5f\x1a\x69\xaa\x38\xd2\xaa\ -\xb4\x6c\x7e\x43\x6f\x21\xc9\xed\xd9\xa6\x34\xaa\xb8\xe5\x55\xe2\ -\xce\xcd\x51\xa4\xeb\xc3\x43\xec\x46\x91\xd3\x1d\x8c\x0e\xd7\x67\ -\xf6\xb2\x5c\xaa\xbb\xb3\x54\x45\xca\xa3\x48\x83\xa3\x5f\xef\x3f\ -\x3f\xa7\x17\x8d\x8c\xba\xd5\x7a\xd3\x6a\x75\x95\x07\xa2\x38\x3b\ -\x31\x78\x8b\x98\xcc\x5d\xcb\xd7\x6a\x9a\xaa\xb9\x3d\x2e\xbe\x8e\ -\x0e\xbe\x62\xc4\x71\x21\x22\xa8\x00\x00\x00\x00\x00\x00\x84\x80\ -\xe5\x6e\xd4\xdc\x9e\x0e\xeb\x35\x57\x85\xbd\x15\xc7\x07\x5d\x9b\ -\x9c\x8a\xa2\x5d\xd8\x8b\xd1\x7b\x48\xa6\x94\x1d\xd7\xb3\x2b\x97\ -\xa3\x93\x54\xf0\x74\x53\x72\x74\x71\xaf\x05\x7e\x8b\x71\x72\xaa\ -\x7d\xd9\x70\xa2\x74\xe0\x0f\x5d\x8a\xed\xd7\x57\xbf\xc1\xea\xaf\ -\x11\x66\xc4\x53\x16\xd8\xce\x4c\xc7\x17\x6d\x9a\x7d\xa5\x51\x13\ -\xc4\x16\x5c\x06\x06\x8c\xd6\x9d\x23\x84\xe8\xc0\x66\x38\x09\xb1\ -\x88\xbb\x45\x3c\x66\x86\x57\x2e\xce\x29\xca\xee\xc4\x69\xaf\x06\ -\x37\x1d\x99\x46\x23\x30\xae\xf4\x46\x91\x5c\x69\x28\x8c\x52\x4a\ -\xbe\xd4\xe8\x34\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x02\x12\x80\x00\x50\x00\x00\x00\x00\x00\x01\xbd\xf7\ -\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0a\xbe\xed\xba\x85\x96\xfc\xdf\ -\x36\xb5\xa1\xc6\xf5\x00\x11\x00\x00\x00\x00\x00\x00\x00\x00\x56\ -\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xcc\xac\xef\x1f\xa8\x79\x97\ -\x85\xbf\x32\x95\x9d\x56\x86\x01\xd9\x40\x00\x00\x00\x00\x4a\x12\ -\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x1a\xf6\x4f\x43\x8c\xd3\x3a\x4f\x27\xb3\ -\xb1\x33\xc6\x09\xd7\x84\xc7\x48\x8c\xde\xca\x6d\x05\xdc\x93\x34\ -\xb7\x77\x95\x31\x66\xa9\xd2\xaa\x5b\xe7\x2d\xc7\xd9\xcc\x30\xd6\ -\xf1\x16\x2a\x8a\xa8\xae\x35\x7c\xd7\x31\x13\xd3\x3a\x2e\x9b\x0b\ -\xb6\x75\x65\x78\x9a\x70\x38\xca\xff\x00\xa9\xaa\x74\x89\x99\xe8\ -\x62\xc4\x6e\x8a\xed\xd3\x54\x69\x57\xd9\x9e\x98\x6a\xdd\xbe\xd8\ -\x7a\xa2\xe5\x59\x96\x5d\x6f\x58\xe9\xaa\x88\x6d\x0c\x3d\xda\x31\ -\x38\x7a\x6e\xd1\x54\x57\x4c\xc6\xb1\x30\x9a\xad\x51\x55\xb9\xa6\ -\xba\x62\x69\x9e\x98\x96\x38\x8d\x2d\xb1\x9b\x75\x88\xc9\xb1\x1f\ -\xa1\x63\x66\x66\xce\xba\x69\x57\xea\x37\x16\x5f\x8f\xc3\xe6\x16\ -\x29\xbd\x87\xae\x2b\xe5\x46\xbc\x1a\xff\x00\x6d\xb7\x7f\x17\xe2\ -\xac\x7e\x59\x4f\x26\xa9\xe3\x5d\x31\xda\xa7\x64\x5b\x53\x99\x6c\ -\xae\x2a\x6c\x5c\xe5\x4d\x34\xcf\x1a\x2a\x06\xfb\x8d\x23\xa6\x78\ -\xc8\xaf\x6c\xee\xd6\xe0\x33\xec\x3d\x35\x53\x76\x9a\x2e\xfe\xb5\ -\x13\x2b\x0c\x4c\x4f\xd9\x9d\x60\xc1\x22\x3f\x5b\x44\xc4\xf4\xa2\ -\x24\x71\xd6\x67\xb1\xc9\x01\x09\x47\x60\xa0\x88\xe2\x9f\xc4\x12\ -\x08\xd6\x3e\x20\x8d\x66\x27\xc5\x33\x31\x4f\x4f\x4c\xb8\x55\x54\ -\x44\xc4\xcc\xb0\x99\xf6\xd4\x60\x32\x4b\x75\x5c\xbd\x7a\x99\xb9\ -\x11\xc2\x8d\x57\x06\x53\x1b\x8f\xb1\x81\xb3\x37\x71\x15\xc5\x11\ -\x4c\x6b\xc5\xa8\xf6\xcf\x6f\x6f\x66\xb5\xce\x07\x2f\xaa\x62\xcc\ -\xcf\x26\x66\x3b\x58\xcd\xa0\xda\xfc\xcb\x69\xf1\x3e\xc2\xc4\x55\ -\x4d\xba\xa7\x48\xa6\x95\xa3\x63\x37\x7b\x33\x34\xe3\x73\x2a\x78\ -\xc7\x1a\x69\x96\x95\xe6\xd8\x3d\x86\xab\x11\x76\x9c\xc7\x31\xb7\ -\xa5\x31\xc6\x8a\x67\xb5\xb5\xad\xdb\x8b\x54\x45\x14\x7b\xb1\x1f\ -\x0e\xc2\xcd\xaa\x2c\xdb\xa6\xdd\x14\xc4\x53\x4c\x69\xc1\xca\xaa\ -\x67\xa6\x11\x2b\xcf\x8c\xc6\x5a\xc1\x59\xaf\x11\x7a\xb8\xa6\x28\ -\x8d\x78\xb4\x56\xd9\x6d\x1d\xcc\xef\x34\xae\x62\xb9\x9b\x14\x4e\ -\x91\x1f\x15\xaf\x7a\x39\xc6\x61\x62\xba\x70\x74\x5b\xaa\x8c\x3d\ -\x5d\x35\xfc\x5a\xca\x9e\x35\xf1\xe3\x0b\x20\x9e\x33\x55\x35\x47\ -\x43\x94\xcf\x13\x58\xe4\xcd\x30\x88\xfb\xdd\x63\x51\x20\x22\x80\ -\x28\x00\x00\x00\x00\x00\x00\x76\x39\xda\x9f\xeb\x23\x5f\x8b\x84\ -\x39\x51\x4e\xb5\x44\x40\x2d\xb7\xeb\xc1\xdc\xc8\x69\x8e\x5c\x7b\ -\x48\x8e\x85\x5e\x98\x8f\x6d\xf7\x3b\x6b\xa2\xfd\x14\xc4\x4c\x4e\ -\x8f\x3d\x53\xc9\x9f\xbd\x20\xf4\xdc\x9a\x7a\x1d\x54\xcd\x51\x57\ -\xb8\xec\xc2\x61\xe3\x17\x57\x1a\xb4\x67\x32\xec\xab\x0d\x4c\xeb\ -\x76\x41\x5d\xbb\x17\x2a\xab\x59\xd5\x36\xf0\xd5\xdc\xaa\x22\x29\ -\x99\xd5\x60\xcc\xaa\xc0\xd8\xa7\x4b\x74\xeb\x30\xc5\x46\x65\x4d\ -\xba\xb5\xa2\x88\xe0\x68\xf0\xdf\xb5\x36\x6f\x55\x44\xc6\x93\x0e\ -\xb7\x66\x22\xf4\xe2\x2f\xd5\x76\xae\x9a\xa5\xd6\xa0\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\xa0\x00\x14\ -\x00\x00\x00\x00\x00\x00\x6f\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\ -\x42\xaf\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x71\xbd\x40\x04\x40\ -\x00\x00\x00\x00\x00\x00\x00\x15\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\ -\x52\xb3\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x67\x55\xa1\x80\ -\x76\x50\x00\x00\x00\x00\x12\x84\xa0\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x89\xe8\x44\xf2\x79\x1f\xed\x7c\x7e\x0e\x5d\x0e\x31\xac\xcf\x18\ -\xd0\x17\xed\x85\xdb\xba\xf0\x33\x6f\x2c\xc7\xdc\x99\xb5\xae\x94\ -\xd7\x33\xd0\xdb\x56\x71\x14\x62\x2d\xd3\x72\x9a\xe2\xaa\x2a\x8e\ -\x1a\x4b\xe6\x79\xa6\x29\xfb\x3d\x3f\x15\xcb\x64\xb6\xef\x11\x94\ -\xdf\xa3\x0f\x8e\xaa\x6b\xb1\xd1\x13\x33\xd0\xe7\xea\x33\x5b\xb3\ -\x93\xae\xb1\x54\x46\x93\xd8\xab\x6d\x26\xc3\x60\x73\xab\x75\x57\ -\x4d\x14\xdb\xbf\xd9\x34\xc6\x8c\xee\x5d\x9a\xe1\x73\x3c\x3c\x5e\ -\xc3\xdd\xa6\xb8\xaa\x35\xd3\x5e\x87\xb6\x9a\x75\x8d\x66\x78\xb3\ -\xc4\x7c\xff\x00\x9a\x6c\xe6\x75\xb2\xf8\xa9\xae\x8f\x6b\xc8\x8a\ -\xb5\x89\xb7\xaf\xf3\x58\x76\x7f\x7a\x37\xf0\x7a\x58\xcc\x68\x9a\ -\xa8\x8e\x11\x31\xd2\xdb\x18\x9c\x1d\x8c\x5d\x13\x6e\xfd\xb8\xae\ -\x89\x8e\x31\x30\xa5\xe7\xdb\xb1\xc0\x63\xe9\xaa\xbc\x15\x51\x86\ -\xaa\x78\xfb\xb1\xd2\xbb\xa2\xc3\x96\x6d\x5e\x55\x99\xda\x8b\x96\ -\xf1\x34\x53\x33\x1f\x66\xa9\xe2\xcb\xdb\xbd\x45\xd8\x8a\xa9\x9d\ -\x62\x7b\x61\xa2\x73\x0d\x89\xcf\xf2\x4b\xd3\x5e\x1a\xdd\x55\x51\ -\x4f\x45\xc8\x94\x61\x36\xc7\x68\x32\xaa\xa2\xd5\xcb\x97\x6a\x8a\ -\x7b\x24\xc1\xbf\x2a\xab\x48\x71\x88\xe1\xac\xcb\x53\xe0\xf7\xb9\ -\x7a\x88\xa6\x8c\x4e\x12\x99\xf8\xd5\x35\x33\xb8\x6d\xea\xe4\xf7\ -\x68\x8f\x6d\x5f\xb3\x9f\x82\x60\xbe\x69\x13\xda\x8e\x11\x3d\x2a\ -\x8d\xbd\xe5\x64\x33\x1f\xdb\xff\x00\x22\xe6\xf2\xf2\x0a\x62\x67\ -\xdb\xff\x00\x23\xe6\x8b\x74\xcc\x4f\x41\x14\x6b\xd3\x2a\x25\xed\ -\xeb\x64\xf4\x44\xc5\xa9\xe5\x4f\xdf\x0c\x36\x3b\x7b\x57\x62\x67\ -\xf4\x6c\x2c\x57\x1e\x27\xc8\xda\x75\x55\x4d\xaa\x66\x6b\xab\x48\ -\xf8\xb1\x19\x96\xd4\x65\x99\x5d\x9a\xaa\xbb\x88\xb7\x54\xc7\xea\ -\xc4\xf1\x69\xec\x76\xdb\x67\xf9\xad\x7c\x8b\x37\x2e\xdb\x8a\xbf\ -\x56\x97\x1c\x16\xc7\x6d\x06\x7d\x7a\x2b\xbd\x45\x71\x45\x5d\x35\ -\xcc\xb5\x91\x56\x0c\xff\x00\x7a\x37\x6f\xc5\x56\x32\xca\x34\x89\ -\xe1\xad\x5d\x2a\xc6\x5f\x91\xe7\x7b\x4f\x8b\xe5\x55\x17\x66\x2a\ -\xab\x59\xaa\xe6\xba\x36\x26\x43\xbb\x0c\x0e\x02\x22\xe6\x36\x63\ -\x11\x5f\xc2\xa8\xe8\x5d\xf0\xb8\x2b\x18\x2b\x11\x6f\x0f\x6e\x9a\ -\x29\x8e\xc8\x83\x60\xac\x6c\xce\xc2\xe0\x32\x5b\x74\xd7\x76\x8f\ -\x69\x7a\x7a\x66\x63\x58\x85\xb2\x9a\x62\x89\xd2\x38\x53\x3c\x22\ -\x20\x9d\x79\x3d\x25\x35\x6b\x3c\x99\x8e\x8e\x89\x66\xa3\x94\xc6\ -\x95\x7f\xe8\x9d\x7f\x83\x8c\xf0\xe3\xd3\x29\xe3\xd2\x9a\x31\x79\ -\xde\x47\x85\xce\x70\x35\xd8\xbd\x44\x57\x33\xd1\x33\x1d\x0d\x17\ -\xb4\x5b\x3f\x89\xc8\xb3\x2a\xac\x57\x44\xc5\xba\xa7\xdd\xab\x47\ -\xd1\x11\x1a\x44\xf2\x78\x76\xb0\x3b\x55\xb3\xf6\x73\xdc\xb2\xba\ -\x39\x11\xed\xa9\x8d\x69\xab\x4e\x2b\x28\xf9\xfb\xa3\xc7\xb5\x30\ -\xf4\xe3\xf0\x77\xb2\xfc\x75\xdc\x25\xfa\x39\x35\x51\x3f\xc5\xe6\ -\x88\xd2\x1d\xa5\x6a\x24\x04\x50\x05\x00\x00\x00\x00\x00\x00\x07\ -\x76\x1e\xb8\xa2\xb8\xaa\x63\xa1\xd2\x6a\x0c\xa6\x2f\x30\xf6\x96\ -\xe2\x9a\x69\x8e\x0c\x6d\x55\x72\xa7\x59\x71\xd7\xef\x72\x8d\x34\ -\xe2\x0e\xcc\x3d\xf9\xb1\x56\xb0\xc8\x58\xcd\x6b\xae\xa8\xa3\x4e\ -\x0c\x65\x34\xf2\xa7\x47\x6d\x34\xc5\xaa\xe2\x75\x41\x9c\x9c\x34\ -\x62\x2d\x4d\x53\x1c\x58\x9c\x7e\x16\x8c\x3d\x3a\xf2\xbd\xe9\xec\ -\x7b\x69\xcd\x2d\xd9\xc3\xcd\x3a\xeb\x3a\x70\x86\x1e\xf5\xea\xaf\ -\xdc\x9a\xea\x92\x0e\xb4\x82\x80\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x02\x12\x80\x00\x50\x00\x00\x00\x00\x00\ -\x01\xbd\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0a\xbe\xed\xba\x85\ -\x96\xfc\xdf\x36\xb5\xa1\xc6\xf5\x00\x11\x00\x00\x00\x00\x00\x00\ -\x00\x00\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xcc\xac\xef\x1f\ -\xa8\x79\x97\x85\xbf\x32\x95\x9d\x56\x86\x01\xd9\x40\x00\x00\x00\ -\x00\x4a\x12\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x80\x44\x6b\x3c\ -\x1c\x74\xd2\x66\x3a\x53\x31\xac\x70\xe0\x8e\x31\x1c\x44\x65\x32\ -\x3d\xa1\xc7\xe4\x78\x8e\x5e\x1e\xed\x55\x46\xbc\x69\x99\xd6\x1b\ -\x5f\x67\x77\x87\x80\xcd\xa6\x9b\x77\xe7\xd8\x5d\xd3\x49\xe5\x4e\ -\x9a\xcb\x4a\xeb\x31\x1c\x38\x7d\xf0\xe5\x15\xd7\x44\xf2\xe8\xab\ -\x4a\xa3\xb6\x19\xbe\x47\xd3\x54\x5e\xb7\x76\x88\xae\xdd\x74\xd5\ -\x4c\xf6\xc3\x9e\x91\x54\x6a\xd0\xb9\x1e\xdd\x66\xb9\x4c\xc5\x35\ -\xdc\x9b\xf6\xe3\xb2\xb9\xe8\x6c\x1c\x97\x79\x79\x66\x3f\x93\x45\ -\xfa\xfd\x9d\xce\xdd\x78\x43\x36\x62\x55\xde\xaa\x29\xae\x9e\x4d\ -\x54\x53\x54\x7d\xf1\xab\x1b\x8d\xd9\xdc\xb7\x1d\xaf\xb6\xc2\xd1\ -\xc7\xb6\x9a\x62\x1e\xac\x3e\x69\x82\xc5\x51\x15\x58\xc4\x5b\xab\ -\x5f\x85\x4f\x54\x55\xac\x6b\x12\xce\xa2\x91\x98\x6e\xab\x23\xc5\ -\xcc\xd7\x45\x35\xd1\x57\xef\xcb\x0f\x7b\x74\x16\xf4\xd2\xc5\xfa\ -\x63\xc6\x5b\x3f\x8c\xa2\x69\x9f\x03\x46\xa4\xb9\xba\x3c\x5c\x7d\ -\x9c\x4d\x05\x1b\xa3\xc5\xcc\xc7\x2b\x13\x43\x6e\x44\x7c\x49\xfb\ -\xa1\x7e\xc6\xaf\xb3\xba\x38\x99\xd2\xed\xea\x26\x9f\xb9\x97\xc1\ -\x6e\xab\x25\xc3\x44\x4d\xca\x6b\xae\xaf\xdf\x95\xe3\x4d\x7a\x67\ -\x42\x35\xa4\xfb\x18\xac\x16\xcd\x65\x98\x08\x88\xb1\x85\xa3\x58\ -\xed\xaa\x98\x96\x4e\x9b\x34\x51\x1c\x29\xa6\x98\x8e\xca\x63\x47\ -\x29\xab\x4e\xd7\x93\x15\x99\x61\x30\xb4\xcd\x57\xb1\x16\xe8\x88\ -\xf8\xd4\x99\x6a\xbd\x74\xe9\x3d\x10\xe1\x5d\xcb\x76\xa2\x6b\xb9\ -\x5c\x53\x11\xf1\x95\x37\x3a\xde\x3e\x59\x96\xf2\xa9\xb1\x5f\xb4\ -\xae\x3e\x1c\x5a\xfb\x3e\xdb\xdc\xcf\x36\x89\xa6\xd5\x73\x66\xdc\ -\xfe\xcc\xaf\xc8\xd9\x1b\x43\xb7\xd9\x76\x51\x6e\xaa\x2c\x57\x17\ -\x6e\xcf\x64\x4e\xba\x2a\xfb\x3b\xbc\xfb\xd7\x73\x49\xb5\x98\xc4\ -\x45\x9a\xe7\x4a\x6a\xd3\x4d\x1a\xe6\xab\x95\xdd\xd6\xe5\xd9\x9a\ -\xea\x9f\xd6\x9e\x97\x0a\x67\x58\x9e\x4f\x43\x5f\x28\xfa\x6b\x0f\ -\x8a\xb3\x8b\xb1\x4d\xeb\x35\xd3\x5d\x15\x46\xb1\x30\xed\xd6\x63\ -\xc1\xa3\xf6\x43\x6e\x31\x39\x25\xca\x70\xf8\xba\xe6\xe6\x1a\x7e\ -\x3c\x74\x6e\x0c\xab\x3b\xc1\x66\xd8\x6a\x6e\x58\xbb\x44\xcc\xc7\ -\xd9\xd5\x9b\xe4\x64\x78\x70\x71\x98\x8d\x66\x3b\x27\xa5\x3a\xea\ -\x4c\x44\x7e\x2c\x70\x6a\xdd\xe9\x6c\xec\x5a\xe4\x66\x56\x29\xe9\ -\x9f\x7f\xc1\xac\xe2\x75\x87\xd0\x1b\x63\x62\x8c\x46\xcd\xe2\xe8\ -\xb9\xa6\xbc\x89\xd3\x56\x81\xb9\x44\x5b\xb9\x55\x31\xd9\x3a\x3b\ -\x79\x6a\x20\x06\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\x2e\ -\x55\x3a\x70\x87\x14\x03\xb2\x9a\xa8\x8e\x99\x92\xaa\xe8\x9e\x88\ -\x99\xf1\x75\x80\x9e\x91\x10\x90\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\x00\x00\ -\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\x5f\x76\ -\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\x00\x00\ -\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x66\x56\ -\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\xa0\x00\ -\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\ -\x09\x00\x43\x8c\x70\x8a\xb5\xd6\x23\xee\x72\x39\x5a\x70\xd1\x28\ -\xf5\x60\x73\x6c\x7e\x02\x8e\x56\x17\x11\x5d\x3a\x7c\x67\x55\x93\ -\x2e\xde\x4e\x71\x83\xb5\x11\x7a\xbf\x6f\xa2\xa1\xef\x74\x46\x91\ -\x09\x98\x8e\xc9\xe2\x98\x36\x6e\x0b\x7b\xf3\x3a\x53\x7f\x03\xc8\ -\xfb\xf5\x66\x6c\xef\x47\x2a\xae\x35\xbb\x31\x43\x4c\xcc\x6b\xf6\ -\xa5\x13\x4d\x33\x1a\x68\x60\xdd\xb1\xbc\xdc\x93\xff\x00\xcd\x09\ -\x9d\xe6\xe4\x9a\x70\xbd\x0d\x21\xec\xe3\xe1\x04\x51\x1f\x08\x4f\ -\x91\xba\x2e\xef\x3f\x2a\xa6\x9d\x68\x98\xaa\x58\x6c\x6e\xf7\xa6\ -\xdd\x53\x18\x7c\x17\x2e\x3e\x3a\xb5\x8f\xb3\xa6\x7b\x34\x3e\xc7\ -\x44\x6a\x7c\x8b\x8e\x3b\x79\x99\xbe\x3a\x99\x8b\x13\xec\x35\x56\ -\xf1\x99\xc6\x61\x8f\xaa\x7f\x4a\xc4\x55\x5e\xbf\x09\xd1\xe3\x99\ -\x88\xec\x38\x55\x1c\x5a\x0d\x38\x69\xac\xcf\x8c\xea\x68\x44\x44\ -\x74\x25\x44\x1a\x24\x04\x7e\x3a\x3d\x99\x4e\x6f\x8f\xca\x6e\xc5\ -\xfc\x25\xea\xa3\x8f\x1a\x75\xe9\x78\xe6\x26\x7a\x34\xfc\x4d\x79\ -\x15\x7b\xa0\xd9\x99\x2e\xf5\xa3\x48\xb5\x98\x58\xe4\xcc\x74\xd7\ -\xaa\xc9\x6f\x79\x1b\x3d\x5d\x3a\xd5\x8d\x8a\x67\xe0\xd1\xb3\x13\ -\x3f\x6f\x49\x92\x69\xa3\x87\xb9\x4f\xf0\x66\xc1\xb2\xf6\xcf\x78\ -\x18\x5c\x7e\x5f\x56\x0f\x01\x57\x2b\xda\x70\xd6\x1a\xdb\x59\x9e\ -\x33\xd3\xda\x89\x88\xe5\x70\x8d\x3e\x09\xd2\x7b\x7a\x48\x24\x06\ -\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\ -\x40\x00\x28\x00\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\ -\x7c\xda\xd6\x85\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\ -\x80\x08\x80\x00\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\ -\xe1\x6f\xcc\xa5\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\ -\xab\x43\x00\xec\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x89\x01\x1a\x1a\x24\x04\ -\x1a\x24\x50\x00\x08\xe0\x02\x00\x00\x00\x08\x93\x4d\x12\x02\x27\ -\xa7\x52\x63\x54\x80\x89\x8d\x66\x27\xe0\x24\x00\x04\x00\x14\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\ -\x00\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\ -\x85\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\ -\x00\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\ -\xa5\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\ -\xec\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x10\x00\x00\x00\x00\x50\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x42\x50\x00\x0a\x00\x00\x00\x00\x00\x00\x37\ -\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\ -\x9b\xe6\xd6\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\ -\x0a\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\ -\x32\xf0\xb7\xe6\x52\xb3\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\ -\x42\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x01\x12\x06\xb1\x26\xb1\xf1\x47\xdf\xc2\x1c\xa9\ -\xa7\x97\xf6\x63\x59\xfb\x81\x1a\xcc\x47\x42\x62\x35\x8d\x5c\xa6\ -\xd6\x23\x4f\xf4\x7b\x93\xff\x00\x85\x1e\xc2\xff\x00\x4c\xd9\xb9\ -\x4c\x7d\xf0\x68\xe1\xca\xe9\x4d\x33\x33\xd8\x8e\x55\x31\x56\x93\ -\xd3\x1d\x89\xaa\x66\x67\xf6\x60\xd0\x49\xa7\xc2\x75\x40\x24\x00\ -\x11\xac\x7c\x52\x88\x88\x99\xe8\xd1\x03\x95\x06\xbf\x02\x62\x29\ -\xe8\xe2\x8e\x56\xb3\xa4\xf0\xf0\x04\xeb\xfc\x4d\x5c\xa9\xb5\x76\ -\xaf\xec\xec\xd7\x57\xdf\xa2\x7d\x86\x23\xa2\x70\xf7\x3c\x79\x20\ -\xe1\xe2\x9f\x12\xaa\x2b\xb5\xc6\xbb\x75\x47\xdf\x30\xe3\x4c\xf2\ -\xb8\xf4\x82\x4e\x3d\xa4\xeb\x13\xc7\x81\xa4\xf6\xcf\x00\x48\x0a\ -\x00\x02\x27\x84\x11\x3a\xc6\xb3\xc0\xd6\x79\x5f\x72\x26\x2a\xe5\ -\x6b\xd8\x82\x66\x63\xe2\x7d\xe8\x9e\x4c\x4f\x64\x7d\xce\x7c\x8b\ -\xb7\x23\x4a\x6c\xd5\x54\x7d\xd0\x0e\x3a\xc4\xf4\x49\x13\xab\x9d\ -\x38\x5c\x45\x31\xfe\x8f\x73\x4f\xdd\x71\xb9\x6e\xed\x11\xad\x76\ -\xea\xa2\x3e\x33\x00\x89\xd7\xb2\x35\x35\x3a\x29\xd6\x2a\xe0\x46\ -\x80\x90\x00\x01\x41\x13\x29\x44\xea\x09\x9d\x23\xb6\x0d\x63\xe2\ -\x88\xe4\xd5\x4f\xbb\x1a\xa2\xdc\x6b\x3c\x9a\x63\x95\x3f\x03\x44\ -\x8e\x5e\xc2\xff\x00\x65\x8b\x93\xe1\x49\xec\x2f\xf6\xd8\xb9\x1e\ -\x34\x9a\x38\x9a\xf0\x38\x6b\xa5\x73\xa4\xfc\x11\x31\x11\x54\x6b\ -\xc0\x13\x12\x92\x7a\x40\x00\x00\x00\x00\x01\x13\x54\x47\x6a\x51\ -\xa4\x7c\x00\x84\x80\x02\x35\x35\x04\x80\x00\x8d\x52\x00\x23\x50\ -\x48\x8d\x4d\x41\x22\x0d\x41\x22\x35\x48\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\xa0\ -\x00\x14\x00\x00\x00\x00\x00\x00\x6f\x7d\xdb\x75\x0b\x2d\xf9\xbe\ -\x6d\x6b\x42\xaf\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x71\xbd\x40\ -\x04\x40\x00\x00\x00\x00\x00\x00\x00\x15\x9d\xe3\xf5\x0f\x32\xf0\ -\xb7\xe6\x52\xb3\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x67\x55\ -\xa1\x80\x76\x50\x00\x00\x00\x00\x12\x84\xa0\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x89\xaa\x21\ -\xca\x8a\x2a\xb9\x5c\x51\x4d\x33\x35\x55\xd1\x10\xe3\x4c\x71\x9a\ -\x74\xd6\x67\xa1\xb3\x77\x7b\xb1\xd4\x5e\xb3\x19\x86\x36\x8d\x75\ -\xe3\x4c\x4c\x33\x6e\x25\xac\x3e\xcf\x6e\xdf\x1b\x99\x55\x4d\xdc\ -\x56\xb6\x6d\x4f\x1d\x26\x3a\x57\xec\x0e\xef\x32\x4c\x0c\x47\xf5\ -\x11\x35\x47\x4c\xcf\x6a\xd1\x6a\xdf\x22\xd7\x22\x98\x8a\x79\x3c\ -\x22\x21\x33\xad\x51\xa4\xf4\xc3\x3f\x55\x35\x8f\xa3\x67\xb2\xcb\ -\x54\xc5\x34\xe1\xa8\xd3\xc1\xc6\xfe\xcd\x65\x58\x8a\x26\x8a\xf0\ -\xb4\x69\x3f\x08\x65\x3c\x11\x1c\xa8\x99\x88\xfe\x6c\x7d\x53\x54\ -\x6c\xdf\x76\x79\x56\x26\xdd\x53\x83\xa3\xd9\x5c\xf8\xb5\xae\x7f\ -\xb2\x99\x86\x43\x5c\xfb\x5b\x35\x57\x6b\x5e\x15\xe8\xfa\x0e\x3d\ -\xe9\xe8\xfc\x5e\x5c\x7e\x03\x0f\x98\xe1\x6e\x59\xc4\x5b\xa6\xa8\ -\xaa\x34\xe3\x0d\x69\xaf\x9a\xe3\x4a\x23\x4e\x9d\x53\x3e\xee\x9a\ -\xac\x7b\x6b\xb3\x55\xec\xe6\x63\xac\x53\x33\x62\xf7\xbd\x4c\xfc\ -\x15\xcd\x39\x54\xf1\xfc\x1b\x95\x62\x51\x33\xa1\x47\x18\xe3\xd8\ -\x89\xf7\xae\x69\x1d\x0a\xa9\x9e\x11\xaa\x26\xa8\xe4\xf8\x26\x69\ -\xd2\x7d\xe9\xe1\x0b\x36\xc5\xec\x8d\xdd\xa1\xc5\xfb\x4b\xd4\xcd\ -\x38\x5a\x2a\xd6\x67\x4e\x92\x8f\x16\xcf\xec\xbe\x61\x9f\x4c\x55\ -\x6a\xd5\x51\x6a\x7f\x5b\x46\xc4\xca\x77\x5d\x82\xc3\xda\xa6\xbc\ -\x74\xfb\x5a\xb5\xe8\x5d\xb2\xec\xbb\x0b\x97\x61\xe9\xb3\x86\xb5\ -\x14\x53\x4c\x69\xc2\x1e\xb9\xd6\x63\x46\x2d\x67\x58\x6c\x2e\xca\ -\x65\x38\x6a\x22\x9a\x30\xb4\xc4\x78\x3d\x13\x90\x65\x9a\x71\xc3\ -\x51\xfc\x19\x1a\xa8\x9a\xa2\x38\xff\x00\x04\xc6\x94\xf4\xb1\xf5\ -\x53\x58\x1c\x66\xc7\xe4\xd8\xcb\x73\x4d\xdc\x25\x3c\x7e\x0a\x86\ -\x71\xba\xbb\x35\x5a\xae\xe6\x5d\x73\x91\xf0\xa1\xb3\x35\xd6\x78\ -\xc2\x6a\xfb\xa3\x46\xa7\xaa\xba\xf9\xb7\x35\xc9\xb1\xd9\x2e\x27\ -\xd8\xe3\xac\xd5\x4d\x3d\x95\x4c\x3c\x31\x1a\xd7\xc9\x8e\x8e\xc7\ -\xd1\x39\xc6\x41\x82\xcf\x70\xd5\xda\xbf\x6a\x39\x53\x1c\x2a\x98\ -\x68\xfd\xa5\xd9\xcb\xfb\x3b\x99\x55\x6a\xe4\x4c\xdb\xaa\x7d\xca\ -\xbe\xe6\xa5\x5d\x62\x3a\x11\xae\x86\x93\xf1\x4e\xb4\xc7\x4b\x6a\ -\x8d\x49\xe0\x4d\x5a\xd1\x3a\x47\x18\x26\x67\x49\x99\x8e\x9f\xe4\ -\x08\x9a\x66\x63\xa7\x46\x73\x23\xd9\x2c\xcf\x3e\xd3\xd8\xda\xaa\ -\x8b\x7f\xb7\xa3\x2f\xb0\xfb\x1b\x5e\x71\x76\x9c\x5e\x2e\x26\x9c\ -\x3d\x13\xc2\x27\xb5\xb8\xf0\x78\x0c\x36\x06\xcd\x36\xf0\xf6\xe2\ -\xdc\x53\xd9\x11\xd2\xe7\x6a\x6a\x93\x94\xee\xaf\x2f\xb1\x6a\x99\ -\xc7\x4f\xb7\xa9\x66\xc2\x6c\x8e\x4f\x85\xa2\x29\xb5\x86\xa6\x34\ -\xf8\xc3\x33\xa7\xbd\xae\xbd\x29\xfb\x3c\x7a\x59\xfa\xa9\xac\x75\ -\x59\x0e\x5d\x14\x69\xfa\x35\x13\xf8\x3c\x38\xed\x8e\xc9\x71\xf6\ -\xf9\x37\x70\xd4\xf1\xf8\x33\xdd\x31\xac\x6a\x98\x98\x98\xe8\x5f\ -\xaa\x9a\xd5\xd9\xee\xea\xe9\xa6\xdd\x55\xe5\xd5\xe9\xdb\xc9\x86\ -\xba\xcc\x72\xac\x66\x55\x7a\x6d\x62\xad\x55\x44\xc4\xe9\xac\xc3\ -\xe9\x38\x98\xd6\x7b\x3c\x58\x5d\xa0\xd9\xbc\x1e\x7d\x83\xae\xdd\ -\x76\xa2\x2e\x69\xc2\xad\x09\xea\xb5\xaf\x9f\x22\x53\x13\xab\x29\ -\xb4\x19\x1e\x23\x20\xc7\xce\x1e\xed\x33\x34\xcf\xd9\xab\x4e\x1a\ -\x31\x7c\x3b\x1d\x15\x28\xd5\x28\xd3\x55\x09\x9d\x0e\x4d\x55\x55\ -\x14\xd3\x1a\xd5\x57\x44\x13\x31\x45\x7a\xcf\x18\x86\xc0\xdd\xf6\ -\xc6\x4e\x3e\xaf\xe9\x2c\x5d\x3e\xe4\x4f\xbb\x13\x1d\x8c\x5a\x95\ -\x8d\xd9\xcd\x80\xcc\x33\x4a\x69\xbb\x76\x26\xcd\xaa\xbb\x66\x3a\ -\x5b\x03\x2b\xdd\xc6\x4d\x80\xd2\xab\xd6\xa2\xe5\xc8\xed\x5b\x2c\ -\xd8\xa2\xd5\x14\xdb\xb7\x4c\x53\x45\x11\xd1\x0e\xce\x54\x4f\x4c\ -\x71\x63\x53\x58\xdb\x7b\x3d\x95\xd9\x8d\x29\xc3\x51\xfc\x11\x77\ -\x67\x72\xbb\xd1\x3c\xac\x35\x13\xf8\x32\x74\xcf\x2a\x75\xd3\x84\ -\x13\xac\x55\xe2\x6d\x35\x48\xcd\xb7\x69\x94\x63\xa6\xaa\xac\x5b\ -\xf6\x57\x3a\x75\x6b\xad\xa3\xd8\xac\xc7\x25\xaa\x6b\xf6\x75\x5d\ -\xb3\x13\xf6\xa2\x1b\xf3\x5a\x79\x5c\x5e\x7c\x56\x16\xde\x3a\xd5\ -\x76\x6f\xdb\x8a\xa8\xab\xe3\x0b\xf4\x6b\xe6\xad\x26\x27\x4e\xd8\ -\x3b\x17\x0d\xe0\x6c\x9c\xe4\x98\x8f\xd2\x70\xd4\xff\x00\x53\x72\ -\x7b\x3b\x14\xd8\xa6\xae\x4c\x71\x6f\xcd\xd5\xd4\xa5\x11\x3d\x89\ -\x69\x40\x00\x27\x82\x24\x89\x99\xe9\x04\x80\x00\x00\xcb\xec\xa6\ -\x5d\x87\xcd\xb6\x8b\x0b\x82\xc5\x53\x35\x59\xb9\x56\x95\x44\x4e\ -\x8d\xb1\xcd\x7e\xcc\x7f\xab\x5d\xfa\xb5\x35\x96\xc1\x75\xc3\x03\ -\xfb\xcd\xfa\xe7\xea\xfe\xb3\x54\xfe\x6b\xf6\x63\xfd\x5a\xef\xd5\ -\xa8\xe6\xbf\x66\x7f\xd5\xee\xfd\x5a\x97\x01\x9d\xa9\xaf\x9e\xb6\ -\xc7\x2b\xc3\x64\xfb\x4b\x8a\xc0\x60\xe9\x9a\x6c\xdb\x98\xe4\xc4\ -\xce\xbd\x90\xc2\xac\xdb\xc5\xeb\xb6\x3b\xc6\x9f\xf2\xc2\xb2\xeb\ -\x38\xd8\x8d\x35\x9e\x1c\x65\x3a\xae\x7b\xbb\xd9\x49\xce\xb3\x38\ -\xc7\x62\x68\xff\x00\xaa\x61\xa7\x5e\x31\xf6\xea\xf8\x16\xe0\xcf\ -\x6c\x8e\xed\x70\x38\xbc\x9e\x9c\x5e\x73\x6a\xb9\xbb\x7b\xde\xa2\ -\x88\xaa\x69\xe4\xd2\xcf\x73\x5f\xb3\x3f\xea\xd7\x7e\xac\xad\xd4\ -\x53\x14\xd3\x14\xd3\x1a\x44\x46\x91\x10\xe4\xe5\xf5\x58\xd5\x3f\ -\x9a\xfd\x98\xff\x00\x56\xbb\xf5\x64\xe6\xbf\x66\x3f\xd5\xee\xfd\ -\x59\x5b\xe5\x81\xda\xdd\xa5\xb1\xb3\x79\x4d\x77\xea\x98\xaa\xfd\ -\x7e\xed\xaa\x3b\x66\x7e\x26\xd1\xad\xb6\xf3\x28\xd9\xac\x82\x29\ -\xc1\x65\xd6\x6b\x9c\x6d\x5c\x6a\x99\xb9\x33\x14\x42\x90\xee\xc6\ -\xe3\x2f\xe6\x18\xcb\x98\xac\x45\x73\x5d\xdb\xb5\x4c\xd5\x32\xe9\ -\x75\x8d\x80\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x21\x28\x00\x05\x00\x00\x00\x00\x00\x00\ -\x1b\xdf\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xab\xee\xdb\xa8\x59\ -\x6f\xcd\xf3\x6b\x5a\x1c\x6f\x50\x01\x10\x00\x00\x00\x00\x00\x00\ -\x00\x05\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xca\xce\xf1\xfa\ -\x87\x99\x78\x5b\xf3\x29\x59\xd5\x68\x60\x1d\x94\x00\x00\x00\x00\ -\x04\xa1\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x6b\x11\xd2\x22\x7a\x01\x90\xd9\xec\x0c\xe6\x59\ -\xe5\x9b\x11\x1a\xeb\x56\xbf\x83\xe8\x5c\x0e\x1a\xce\x13\x0b\x6a\ -\xcd\xb8\x8a\x62\x98\x8e\x10\xd2\xfb\xb7\xb1\x17\x76\x9a\xdd\x53\ -\x1f\x66\x25\xbc\x62\x34\xe9\x87\x3f\x55\x9a\x4c\xf2\xa3\x58\x57\ -\xf6\x9b\x6a\x30\xbb\x37\x85\xaa\xbb\xb5\xc4\xdd\xaa\x3d\xda\x56\ -\x18\x8d\x65\xa2\x37\x8f\x8f\xab\x19\xb5\x17\xec\x4d\x53\xa6\x1e\ -\xb9\x8d\x19\xf3\xfa\x47\x6e\x33\x79\x59\xbd\xfb\xd5\x57\x6a\xaa\ -\xad\x51\x33\xc3\x49\x64\x32\x3d\xe6\xe3\xed\x62\x69\xb7\x8e\xa7\ -\x97\x6a\xa9\xd2\x6a\xaa\x54\x18\x8d\x6a\xd2\x7a\x0f\xb5\x33\x4f\ -\xc1\xbb\xe4\x7d\x2b\x97\xe6\x16\xb1\xf8\x2a\x31\x18\x7d\x2a\x8a\ -\xe3\x5e\x0f\x47\x27\x5d\x14\x2d\xd4\xe3\xab\xc4\x65\x97\x2c\x55\ -\x33\x3e\xca\x23\xa5\x7f\x89\x89\x9d\x35\x62\xc1\x59\xdb\xdc\xa2\ -\x8c\xd7\x67\xae\xc4\xd1\x13\x72\x8e\x31\x53\x43\xcc\xfb\xd5\x53\ -\xfb\x13\xa3\xe9\x3c\xda\x22\x72\xeb\xf4\xd5\x31\x11\xc8\x9e\x9f\ -\x07\xcd\xf8\x8a\x74\xc4\x5c\xd7\xf6\xe7\xfc\x5b\xf3\xc5\x8e\xb8\ -\xfb\x5e\x29\x89\xd3\x5f\x8c\x13\x4e\x93\x04\x53\xad\x52\xd2\xbd\ -\x39\x66\x5f\x77\x35\xcc\xad\x61\x68\xd6\x79\x75\x44\x3e\x81\xc8\ -\xb2\xab\x79\x4e\x5b\x66\xc5\xaa\x22\x99\xa6\x98\x8a\xa2\x3b\x65\ -\xab\x77\x5b\x97\x7e\x93\x9d\x5c\xbd\x54\x6b\x16\xe3\x58\x96\xe6\ -\xd3\x8c\x4b\x1e\xd2\xa3\x8c\x53\xac\x47\x17\x5e\x2b\x11\x6f\x0f\ -\x62\x6e\xdf\xb9\x14\x53\x4c\x6b\x33\x2e\xd8\xd6\x23\x8f\x43\x4f\ -\xef\x1f\x6a\xef\xe2\x71\xd3\x97\x61\x6e\x4c\x5b\xa7\xa6\x69\x96\ -\x67\xea\x2c\x59\xb6\xf4\xb0\x18\x2b\x95\x61\xf0\x91\x17\x6b\x8e\ -\x1d\x2c\x2d\x1b\xdd\xc4\xc5\xc8\xa6\xbc\x15\x3a\x6b\xd3\xab\x5c\ -\xd5\x13\x1a\x6b\xef\x55\xdb\x28\xab\x5e\x54\x55\x10\xdf\xc9\x8d\ -\xd9\x93\xef\x2b\x2b\xcc\xae\x53\x87\xbb\x72\x2d\x5d\xab\x86\x8b\ -\x8d\xaa\xe9\xae\x88\xaa\x2b\xe5\xc5\x51\xc2\x5f\x32\x71\xa6\xb8\ -\xb9\x45\x53\x13\x1d\xb0\xda\xfb\xb2\xda\xaa\xb3\x0b\x55\x65\xb8\ -\x9a\xfd\xfb\x5c\x28\x99\x9e\x32\x98\x63\x63\x74\xc7\x08\xe1\x0a\ -\xde\xd9\x6c\xfd\xac\xeb\x2a\xb9\xca\xa2\x39\x74\x47\x2a\x2a\xd3\ -\x8c\x68\xb2\x6b\xc8\xe0\x8b\x94\xc5\x76\xea\xa6\x7a\x2a\x8d\x19\ -\xd4\x7c\xc9\x7a\xcd\x56\xaf\x57\x6e\x78\x4d\x33\x30\xe3\xc2\x3a\ -\x56\x1d\xb8\xc0\x7f\x47\x6d\x36\x27\x93\x1a\x53\x5f\x44\x42\xbb\ -\x1d\x3a\xbb\x4b\xad\xa7\x95\xad\x51\x14\xc3\xdd\x93\x65\xb7\x73\ -\x7c\xeb\x0f\x84\xb7\x13\x34\xd5\x56\x95\xe9\xd9\x0f\x0c\x74\x4d\ -\x51\xd2\xd8\x5b\xa9\xcb\x79\x79\x8d\xfc\x5c\xd3\xad\x3c\x98\xe4\ -\xcc\xfc\x53\xd0\xd9\xf9\x5e\x5d\x67\x2d\xc0\x5a\xc2\xdb\xa2\x22\ -\x28\xa6\x22\x7e\xf9\x7b\x66\x26\x68\xff\x00\x69\x33\x4f\x42\x2a\ -\xab\x93\x44\xd5\xaf\x44\x71\x70\xbf\xb5\x87\x46\x2b\x15\x6f\x03\ -\x87\x9b\xb7\xee\x45\x34\xd3\x1a\xcc\xcc\xa8\xd9\xa6\xf5\x30\x58\ -\x7b\x95\x5a\xc0\xd3\x17\x6a\xa7\xb1\x58\xde\x1e\xd5\xde\xc7\x66\ -\x75\x60\x2c\x5c\x98\xb3\x47\x4c\xd3\x3d\xaa\x47\x6c\xcf\x6c\xf6\ -\xba\x79\xf2\xb8\xd9\x16\x77\xbd\x89\xaa\xee\x95\x60\xa9\x88\xed\ -\x9e\x52\xcf\x90\xef\x0b\x2b\xce\xae\x45\x99\xb9\x16\xae\xfc\x1a\ -\x43\x42\x9a\xab\xb7\x5c\x57\x6e\xa9\xa2\x69\x9d\x62\x69\xe0\xdd\ -\xf3\x0c\x7d\x39\x4d\x54\xd7\x11\xd1\x54\x4f\x44\xa6\x26\x7e\xcc\ -\xc6\x8a\x16\xed\xf6\xa6\xac\xcf\x0b\xfa\x0e\x26\xaf\xeb\x2d\x69\ -\x14\xeb\xd3\x2b\xf7\x6c\x4b\x95\xfc\x15\x4d\xb9\xd9\xdb\x79\xce\ -\x51\x72\xaa\x68\x8f\x6b\x6a\x39\x5c\xad\x38\xf0\x68\xda\xe2\x69\ -\xae\xaa\x66\x34\x9a\x67\x47\xd3\x57\x6d\xc5\xdb\x75\xdb\x98\xe1\ -\x54\x68\xf9\xf3\x6b\xf0\xbf\xa1\x6d\x56\x2a\xc4\x46\x94\x6b\xc3\ -\x45\xf3\x56\x31\x08\xd6\x7a\x7b\x11\x4f\xbb\xd1\xc7\x8a\x74\xd6\ -\x65\xd9\x5e\x8c\xbf\x0b\xfa\x6e\x67\x63\x0d\x4c\x6b\xed\x6a\xd1\ -\xf4\x46\x4d\x82\xa7\x01\x95\xe1\xf0\xf4\x53\x11\x11\x44\x6b\xa7\ -\xc5\xa3\xb6\x1e\xcf\xb6\xda\x7c\x24\x4c\x7d\x9a\xe1\xbf\xa8\x8e\ -\x4d\x3a\x39\xfa\x4a\x9d\x74\x99\xf8\x30\xdb\x47\xb4\x18\x6d\x9e\ -\xc1\x4d\xfb\xf5\x46\xb3\x1e\xec\x33\x33\xad\x34\x6b\x0d\x35\xbd\ -\x4c\x7d\x77\xb3\xdf\xd0\xf9\x53\xc9\xb7\x11\x3a\x31\x19\x8e\x8c\ -\xc3\x79\xd9\xae\x2e\xf5\x53\x86\x89\xb5\x44\x4f\x0d\x27\xa5\xdd\ -\x95\xef\x3f\x32\xc2\xdf\xa6\x31\x91\x37\x2d\xcc\xfb\xd5\x4c\xf4\ -\x28\xf1\x1a\x12\xd7\xcb\x58\xfa\x37\x27\xcd\x70\xf9\xc6\x0e\x8c\ -\x56\x1a\x62\xaa\x26\x38\xfd\xd2\xc8\xce\xba\x6b\x0d\x5f\xba\x3c\ -\x65\xc9\xb5\x77\x0d\x35\x4c\xd1\x1a\xce\x92\xda\x1c\xa8\x9d\x35\ -\xe1\x0c\x58\xcb\x07\xb5\x59\x65\x39\xa6\x49\x88\xb3\x5d\x11\x35\ -\x72\x7d\xc9\xf8\x4b\xe7\xfb\xf6\xeb\xc3\xe2\x2e\x58\xab\xa6\xdd\ -\x5c\x97\xd2\xf8\x9e\x47\xb1\xaa\x2a\xe8\xd1\xf3\x96\x73\x4c\x46\ -\x7d\x8d\x8a\x67\x87\xb5\x96\xbc\xac\x78\xf8\x68\x94\x4e\x9a\xf0\ -\xe9\x4b\xab\x40\x00\x00\x00\x00\x00\x0b\x16\xc1\x75\xc7\x03\xfb\ -\xcd\xfa\xd0\x5b\x05\xd7\x1c\x0f\xef\x37\xeb\x97\xbe\xb3\x40\x19\ -\x46\x86\xde\x2f\x5d\xb1\xde\x34\xff\x00\x96\x15\x95\x9b\x78\xbd\ -\x75\xc7\x78\xd3\xfe\x58\x56\x69\xa6\xaa\xaa\x8a\x69\x89\x99\x99\ -\xd2\x22\x3b\x5d\xa7\x1b\x7b\xb2\x4c\xa3\x11\x9d\xe6\x96\xb0\x38\ -\x6a\x66\x6a\xae\xaf\x7a\x7f\x66\x3b\x65\xf4\x16\x4d\x95\x61\xf2\ -\x5c\xb2\xce\x07\x0f\x4c\x45\x36\xe9\xd2\x67\x4f\xb5\x3f\x15\x6f\ -\x77\x9b\x29\x19\x1e\x59\x18\xbc\x4d\xb8\xfd\x33\x11\x1a\xce\xbf\ -\xab\x4f\x64\x2e\x4e\x7e\xae\xb3\x69\x09\x1c\x6b\xaa\x9a\x29\x9a\ -\xaa\x98\x88\x88\xd6\x66\x7b\x19\x47\x9f\x32\xcc\x30\xf9\x5e\x06\ -\xee\x33\x13\x5c\x51\x6a\xdd\x3a\xcc\xcb\x41\x6d\x3e\xd0\xe2\x36\ -\x8f\x36\xaf\x15\x76\x66\x2d\xc4\xe9\x6a\x8d\x78\x53\x0c\xee\xf0\ -\xf6\xc2\xac\xeb\x1d\x38\x0c\x1d\xc9\xfd\x0e\xc4\xe9\x3a\x7e\xbd\ -\x5f\x15\x26\x1d\x3c\xf9\xc6\xa4\x48\x0d\xa8\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x4a\ -\x00\x01\x40\x00\x00\x00\x00\x00\x06\xf7\xdd\xb7\x50\xb2\xdf\x9b\ -\xe6\xd6\xb4\x2a\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x87\x1b\xd4\ -\x00\x44\x00\x00\x00\x00\x00\x00\x00\x01\x59\xde\x3f\x50\xf3\x2f\ -\x0b\x7e\x65\x2b\x32\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x75\ -\x5a\x18\x07\x65\x00\x00\x00\x00\x01\x28\x4a\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x78\x71\x4a\ -\x34\xd7\x80\x2e\x1b\xb3\xb9\x14\x6d\x25\x11\x33\xc6\xa8\x96\xee\ -\xd7\x58\xd1\xf3\xb6\xcd\xe6\x1f\xd1\x79\xf6\x1e\xfc\xce\x91\xae\ -\x92\xfa\x0f\x07\x89\xa3\x15\x84\xa2\xf5\xb9\xe5\x53\x31\xd3\x0e\ -\x7e\xa6\xb3\x5d\xb1\x1a\xce\xbd\x0d\x1f\xbc\xcc\xaa\xe6\x0b\x68\ -\xab\xc6\x45\x3e\xe6\x22\xa9\x99\x96\xf1\xaa\x9e\x5e\x91\xd1\x0c\ -\x3e\x7b\xb3\xd8\x3c\xf6\xc7\xb1\xc5\x51\x15\x4c\x46\x94\xd5\xf0\ -\x63\xcd\xc4\xe3\xe7\x9a\xb4\xd2\x26\x25\x1d\xbc\xa8\x6c\x8c\x56\ -\xe8\x6e\xcd\xda\xab\xb1\x8c\x98\xa2\x7a\x29\xd1\xe3\xb9\xba\x8c\ -\xc2\x88\x9e\x45\xf9\x9f\xc1\xd3\xe9\x75\x96\xdd\x46\x22\xc5\x8c\ -\x3e\x2a\x6e\x5d\xa6\x8d\x74\xe9\x95\xa7\x39\xdb\x5c\xab\x27\xb7\ -\x54\xd5\x7a\x9b\x95\x76\x45\x33\xab\x59\x62\x76\x2b\x69\x32\xab\ -\x53\xfa\x2d\x35\xcd\x13\xf6\xb4\x56\x31\x98\x5c\x56\x1a\xe4\xfe\ -\x97\x45\x71\x73\xb7\x95\xa9\xd5\x5a\xb3\xfd\xe3\x66\x59\xb4\x57\ -\x63\x0b\x11\x45\x8a\xbb\x7a\x25\x50\xe5\x6b\x54\xcc\xce\xb3\x3d\ -\x32\x8a\x2a\x89\xa6\x6a\xed\x44\xc4\x51\x1e\x2d\x48\x27\x49\xd5\ -\x1a\xe9\x4c\xc7\x6a\x66\xa9\x98\x8d\x23\x8a\x3a\x75\x99\x5c\x56\ -\xd8\xdd\x25\x8a\x63\x01\x5d\xfd\x38\xd5\x3a\x4b\x63\xeb\x33\x13\ -\xf7\x35\xfe\xe9\x22\x3f\xa0\xea\xfd\xe9\x6c\x1e\x88\xd7\xa1\xcb\ -\xd5\x66\xba\x31\x37\x6a\xa3\x0b\x72\xa9\xe1\xa4\x3e\x72\xcd\xae\ -\xcd\xfc\xdb\x15\x57\x2b\x59\xf6\xb5\x47\xf3\x7d\x13\x99\xd5\xff\ -\x00\x66\x5e\xd3\xf6\x5f\x36\xe2\x74\x9c\xc3\x15\x3d\x1f\xd7\x55\ -\xfe\x24\x58\xe1\x4d\x33\x4f\x4c\xeb\x29\x9a\xe6\x22\x63\x4e\x27\ -\x6e\xba\x91\x31\xae\xb3\x2e\x92\xb4\xe3\x4c\xce\x9c\x99\xed\x67\ -\xf6\x23\x13\x56\x1f\x6d\x30\x31\x44\xf2\x69\x9d\x79\x5f\x7b\x03\ -\x13\x13\x56\x9a\xb2\xfb\x21\xef\x6d\x86\x0f\x4f\x8c\xa5\x4a\xfa\ -\x22\x26\x2e\x5b\x8a\x93\x3c\x69\x70\xb7\xc2\xdd\x14\xf6\x69\x0e\ -\x53\x3a\x70\x71\xac\x63\x4d\xef\x4a\xdc\x51\x9c\xd1\x5c\xc7\xda\ -\x95\x17\x5d\x67\x45\xfb\x7b\x1c\x73\x5b\x3e\x2a\x06\x9a\x4f\x07\ -\x6f\x0d\xc2\xa9\xe4\xc4\xc4\x37\x06\xe9\xad\x44\x64\x5e\xd7\x4e\ -\x32\xd3\xf7\x38\xc3\x72\x6e\x9f\xab\x54\x7e\x27\xb4\xab\xe4\xce\ -\x91\xaf\xdc\xf0\xe6\x77\xa7\x0f\x96\xde\xbd\x1f\xb3\x2f\x77\x4c\ -\x68\xc5\x6d\x14\xf2\x72\x1c\x4e\x9f\xb2\xe5\x3a\xcb\xe7\xbc\x65\ -\xf9\xbd\x8e\xc4\x55\x57\x19\xf6\x93\xc7\xf1\x74\xb9\x5d\xff\x00\ -\x49\xbd\xfb\xf2\xe2\xed\x1b\x88\xab\xa1\x35\x4c\xc4\x46\x9d\x9c\ -\x49\xe8\x4f\x62\xea\xd5\x97\x77\x98\xd9\xa3\x6b\x70\xf4\x7d\x9e\ -\x5e\xbc\x1b\xdf\xa6\x22\x5f\x3f\x6c\x34\x44\xed\xae\x0a\x7c\x5f\ -\x41\xd3\xf6\x23\xc1\xca\xb1\x51\x5c\x4c\xc4\x4c\x34\x96\xf2\xac\ -\xd1\x4e\x7f\x5d\x7d\x15\x54\xdd\xf1\xc2\x1a\x4b\x7a\x1f\xdf\xb1\ -\xe2\x79\x48\xa5\xd3\x33\x1c\x13\xd1\xc5\x31\xc5\xc6\x7a\x65\xd5\ -\xb5\x87\x60\xef\xc5\xad\xa8\xc3\x6b\xfa\xd5\xc3\x7f\xd3\x54\x55\ -\x0f\x9a\xf2\x8c\x67\xe8\x19\xb6\x1b\x15\x4c\xe9\x16\xeb\x89\x7d\ -\x0f\x95\x62\x69\xc6\xe5\xb6\x71\x14\x55\x13\xcb\xa2\x26\x58\xf4\ -\x3d\x9c\xae\xc6\x9b\xde\xae\x55\x7a\xde\x75\xfd\x21\x4d\x33\xc8\ -\xb9\xc3\x56\xe3\x89\x89\x9d\x27\xa5\x8f\xce\x72\x6c\x2e\x73\x84\ -\x9b\x38\xbb\x71\x31\xfa\xb3\xf0\x62\x56\x5f\x38\x53\x56\xa9\x96\ -\xcb\xc6\xee\x86\xaa\xef\xcd\xdc\x3e\x36\x69\xa2\x7f\x57\x47\x8a\ -\xbd\xd3\x63\xa9\xaf\x95\x4e\x26\x6a\x8f\x86\x8e\x93\xd4\x5d\x72\ -\xdd\x56\x22\xdd\x8c\xca\xec\xdd\xae\x9a\x23\x91\x3d\x32\xd8\x39\ -\xbe\xd7\xe5\x39\x3d\xb9\xaa\xf5\xfa\x6b\xab\xe1\x4c\xea\xd5\xf7\ -\xf6\x1b\x68\x32\xd9\xaa\xbc\x1d\x35\x55\xf7\xc2\xb3\x98\xe0\xf3\ -\x1b\x17\xa7\xf4\xcb\x77\x39\x5d\xba\xea\x5c\xa8\xb6\x67\x5b\xcc\ -\xc7\xe3\xee\x5c\xb3\x83\xa6\x28\xb1\x3c\x29\xab\xb5\x4a\xbd\x5c\ -\xd7\x5d\x57\x6a\x9d\x6b\xae\x75\x99\x45\x5a\x4c\xc4\x47\x0f\x8a\ -\x39\x51\x1d\x9d\x0b\x22\xc8\x44\x70\xd5\x27\x19\x9d\x7a\x3e\xe4\ -\xaa\x80\x00\x00\x00\x00\x00\x2c\x5b\x05\xd7\x1c\x0f\xef\x37\xeb\ -\x41\x6c\x17\x5c\x70\x3f\xbc\xdf\xae\x5e\xfa\xcd\x09\x09\x65\x1a\ -\x1b\x78\xbd\x75\xc7\x78\xd3\xfe\x58\x65\x77\x6b\xb2\x7f\xd2\x78\ -\xdf\xe9\x5c\x5d\xbd\x70\xf8\x7a\xbd\xc8\x98\xfb\x75\x38\x6d\x2e\ -\x4b\x7f\x3e\xde\x66\x23\x03\x66\x27\xdf\xaa\x9e\x5d\x5a\x7d\x9a\ -\x74\x8e\x2d\xb7\x96\x65\xd6\x32\xac\xbe\xce\x0b\x0f\x4c\x53\x6e\ -\xd5\x3a\x47\xdf\xf7\xb7\x6e\x45\xd7\xae\x22\x22\x22\x12\x21\x84\ -\x3b\x5a\xeb\x79\x5b\x63\xfa\x1d\x9a\xb2\x6c\x05\xcf\xeb\xae\x47\ -\xf5\xd5\x53\x3f\x66\x3e\x0b\x16\xda\x6d\x4d\xad\x9b\xca\xaa\xaa\ -\x99\x8a\xb1\x57\x63\x4b\x54\x6b\xfc\xda\x23\x13\x88\xbb\x8b\xc4\ -\xdc\xc4\x5f\xae\x6b\xb9\x72\x79\x55\x55\x3d\xad\x79\x9f\xd5\x91\ -\xd5\xae\xb3\xc5\x28\x4b\xab\x40\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x12\x80\x00\ -\x50\x00\x00\x00\x00\x00\x01\xbd\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\ -\xad\x0a\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\xc6\xf5\x00\x11\ -\x00\x00\x00\x00\x00\x00\x00\x00\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\ -\x99\x4a\xcc\xac\xef\x1f\xa8\x79\x97\x85\xbf\x32\x95\x9d\x56\x86\ -\x01\xd9\x40\x00\x00\x00\x00\x4a\x12\x80\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x99\x98\xe3\x09\x44\ -\xce\x80\x47\xd9\xe5\x44\xf1\xe9\x6c\xdd\xde\xed\x9d\x36\xe8\xa7\ -\x2e\xc5\xd7\xc2\x38\x53\x33\x2d\x65\xac\x4d\x3a\x6a\x8b\x75\xd7\ -\x6a\xb8\xaa\xdd\x75\x53\x54\x74\x4c\x33\x52\xbe\x9d\xa6\xe5\x35\ -\xd1\x15\xd3\x3a\xc4\xf4\x68\xe5\xa4\xc4\x6b\xc1\xa4\xb6\x73\x78\ -\xf9\x86\x59\x5c\x59\xc5\xcf\xb5\xb3\x11\xf6\xaa\xe9\x86\xc3\xcb\ -\x37\x81\x92\xe6\x54\xd3\x11\x7a\x69\xab\xb6\x26\x34\x73\xb1\x16\ -\xb8\x89\x8e\x3a\x93\x11\x57\x4c\xe8\xc7\x5a\xcf\xf2\xbb\xbc\x63\ -\x17\x6a\x3c\x6a\x87\x7d\xbc\xc7\x07\x7a\xad\x28\xc4\x5a\xab\xc2\ -\xa8\x31\x31\xe9\xaa\x22\xa8\xe4\xe9\x13\x1f\x7b\x13\x9a\xec\xe6\ -\x5f\x9a\xd8\xaa\xcd\xfc\x3d\x1c\xa9\xfd\x68\xa7\x8b\x2d\x35\x53\ -\xa4\x4d\x3c\x75\xf8\x23\xa7\x84\xfd\xa3\x71\x5a\x3f\x6b\x36\x1b\ -\x13\x91\x5d\xaa\xfe\x1e\x99\xae\xc7\xdd\xd8\xa8\x74\xd3\xca\x9e\ -\x9f\x83\xe9\x8c\x6e\x0e\xd6\x3b\x0b\x5e\x1e\xfd\x31\x55\x35\x46\ -\x93\xab\x42\x6d\x76\x47\x56\x45\x9c\xdd\xb5\x4c\x4f\xb1\xaa\x7d\ -\xc9\x96\xfc\xd1\x84\xe3\x4c\xeb\xa7\x09\x84\x7c\x53\xc7\x48\x9d\ -\x7f\x03\xe2\xde\xb4\xdb\xfb\xa4\xfe\xe3\xab\xf7\xa5\xb0\x35\x8d\ -\x74\x6b\xfd\xd2\x4f\xfd\x87\x57\xef\x4b\x60\x46\x93\xc7\xe0\xe5\ -\x58\xae\xbb\xf6\x69\xc4\x59\xaa\xcd\x71\xee\xd5\x1a\x70\x53\x6e\ -\x6e\xbb\x25\xb9\x7a\xbb\x93\x15\xeb\x5d\x53\x54\xf1\x5d\x39\x5a\ -\x6b\x11\xae\xae\x51\xac\x47\x4e\xac\x92\xa8\xfc\xd5\xe4\x9f\x0b\ -\x9f\xc4\xe6\xaf\x24\xd7\xa2\xe7\xf1\x5e\x75\x94\x71\xd4\xfa\xab\ -\xaa\x34\xee\xaf\x24\x8a\xba\x2e\x7f\xe6\x7a\x72\xed\xdc\xe5\x59\ -\x5e\x65\x6f\x1b\x87\x8a\xfd\xa5\xbe\x8d\x65\x70\x9e\x32\x98\x99\ -\x34\xd7\x1a\x63\x4d\x3e\xe4\xcc\x22\x9d\x67\x54\xcc\x4c\x68\x33\ -\xad\x3d\xbd\x7f\xef\x5b\x3e\x2a\x0f\x6a\xfd\xbd\x7f\xef\x5b\x3e\ -\x2a\x0f\x6b\xaf\x96\xe2\x2b\xfb\x32\xdc\x9b\xa7\xea\xd5\x1e\x32\ -\xd3\x77\x3e\xcc\xb7\x26\xe9\xfa\xb5\x47\x8c\x9e\x8a\xbe\x31\x3b\ -\x49\xfd\xc3\x89\xfd\xd6\x5b\xb5\x89\xda\x4f\xee\x2c\x4f\xee\xb9\ -\x4e\xb3\x1f\x3c\x5d\xff\x00\x49\xbb\xfb\xf2\x84\xdd\xff\x00\x49\ -\xbb\xfb\xf2\x87\x68\xd4\x41\x3d\x01\x3d\x02\xb3\xbb\x0d\xd7\x4c\ -\x17\xe2\xfa\x0a\x9f\xb3\x1e\x0f\x9f\x76\x17\xae\x98\x2f\xc5\xf4\ -\x15\x3f\x62\x3c\x18\xf4\xcd\x4c\x34\x9e\xf4\x29\xff\x00\xb7\x29\ -\x9f\xbd\xbb\x23\x8b\x4c\xef\x4a\x9d\x33\x8a\x27\xe3\x2c\xf9\xea\ -\x4e\xa8\xb1\xc2\x48\x98\x89\x99\x9e\x81\x13\x1a\xbb\x46\xd1\xc9\ -\xe4\xd7\x13\x3d\x0d\x89\xbb\xfd\xb3\x8c\x1d\xdf\xd0\x71\xb7\x34\ -\xa2\x7e\xcc\xcc\xb5\xec\xd5\x1a\xc6\xb1\x3c\x0d\x27\x95\x15\xd1\ -\xc2\x63\xa2\x59\xa3\xe9\x9b\x37\xad\xe2\x2d\x53\x76\xdd\x51\x55\ -\x33\xdb\x0e\xd9\xaa\x34\xf8\xb4\x6e\xce\x6d\xf6\x3f\x26\xe4\xdb\ -\xbf\x54\xdd\xb5\xfe\xd7\x63\x61\xe5\x3b\xc5\xc9\xb1\xf4\xc7\x2e\ -\xe7\xb3\xae\x7b\x26\x34\x63\x19\x5c\x22\x27\xe2\x8a\xa3\x4e\x30\ -\xc7\xda\xcf\xb2\xcb\xd4\xf2\xa9\xc6\x5a\x8f\x1a\xa1\xdf\x6b\x33\ -\xc1\x5e\x9d\x28\xc5\x5b\x9f\x0a\xa1\x9f\xd1\xe9\xd6\x2a\xe1\x31\ -\x0c\x76\x65\x91\xe0\x33\x2b\x55\x5b\xbf\x62\x8f\x7b\xf5\xa2\x38\ -\xb2\x11\x34\xd7\x3e\xec\xc4\xc7\xc6\x13\xc6\x7e\xf8\x8e\xd3\x6a\ -\x34\xae\xd8\x6c\x05\xcc\x9f\x5c\x4e\x0a\x26\xab\x3d\x33\x1d\x2a\ -\x54\xe9\xa7\x27\x4d\x2a\x89\x7d\x33\x89\xc3\x5b\xc5\x5a\xaa\xd5\ -\xea\x62\xba\x2a\x8d\x26\x25\xa3\x76\xe7\x67\xff\x00\xa1\x33\x7a\ -\xaa\xb5\x4e\x96\xae\x4e\xb1\x3f\x07\x4f\x35\xa9\x55\x9e\x33\x3a\ -\xca\x4e\x98\x89\x1b\x50\x00\x00\x00\x00\x00\x05\x8b\x60\xba\xe3\ -\x81\xfd\xe6\xfd\x68\x2d\x82\xeb\x8e\x07\xf7\x9b\xf5\xcb\xdf\x59\ -\xa0\x0c\xa3\x19\x83\xc9\x70\xf8\x4c\xdb\x19\x99\x44\x72\xaf\xe2\ -\xa6\x35\xaa\x7b\x22\x22\x23\x46\x4b\x43\x44\x80\xe3\x5c\xcc\x51\ -\x54\xd3\x1c\xa9\x88\xe1\x1f\x17\x24\x68\x0f\x9e\xb6\xb7\x32\xc7\ -\xe6\x5b\x41\x89\xb9\x8f\x89\xa2\xba\x2b\x9a\x22\xdf\x65\x31\x0c\ -\x2c\x36\x86\xf4\xf6\x63\xa3\x3c\xc2\xd1\xd1\xee\xdf\x88\x8f\xe1\ -\x2d\x5f\x0e\xb2\xfe\x35\x12\x03\x4a\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x28\ -\x00\x05\x00\x00\x00\x00\x00\x00\x1b\xdf\x76\xdd\x42\xcb\x7e\x6f\ -\x9b\x5a\xd0\xab\xee\xdb\xa8\x59\x6f\xcd\xf3\x6b\x5a\x1c\x6f\x50\ -\x01\x10\x00\x00\x00\x00\x00\x00\x00\x05\x67\x78\xfd\x43\xcc\xbc\ -\x2d\xf9\x94\xac\xca\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\x59\xd5\ -\x68\x60\x1d\x94\x00\x00\x00\x00\x04\xa1\x28\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8d\x41\x28\x92\x67\ -\x48\x22\x2a\xb9\x54\x53\x45\x33\x55\x53\xc2\x22\x00\xd3\x58\xe1\ -\x47\xe2\x53\x3c\x74\xd3\x5f\xc1\x6b\xc8\x77\x7f\x9b\x66\xd4\xd3\ -\x76\xe4\x7b\x2b\x53\xd9\x57\x09\x6c\x7c\x93\x77\xf9\x56\x5b\x45\ -\x33\x72\xdc\x5e\xaf\xb7\x95\x1a\xc2\x6c\x35\xa3\x26\x26\x6a\xe4\ -\xd5\x4c\xf8\x69\xa2\x69\x8a\xa8\x98\x8a\x6a\x9a\x23\xb7\x49\x5c\ -\xb7\xa7\x84\xc3\xe0\xb6\x82\xdd\x9c\x35\xaa\x6d\x44\xda\x89\xf7\ -\x63\x45\x36\x29\x88\xa3\xa6\x66\x44\x70\x9d\x27\x87\xb4\xbb\x13\ -\xaf\x65\x72\xf5\xe1\x73\x0c\x5e\x5f\x31\x5e\x1f\x11\x72\x26\x3e\ -\x35\x4c\xbc\xf4\xe9\x13\xc6\x23\x44\x72\x75\xab\x5d\x78\x2e\x0d\ -\x89\xb2\x3b\xc4\xc6\x51\x8c\xb7\x85\xcc\xae\x72\xed\xd7\xc2\x26\ -\x7b\x1b\x5e\xcd\xd8\xbd\x6a\x9b\x91\x3a\xc5\x51\xac\x4b\xe6\x68\ -\xae\xaa\x34\xe4\xf0\xe3\x1c\x5b\xf7\x62\x71\x93\x98\xec\xe5\x8a\ -\xea\x9d\x66\x98\xd1\xcb\xd4\x66\xac\x11\xd1\x3a\xf4\xb5\xf6\xf5\ -\xb2\xca\x31\x19\x5d\xbc\x5d\x14\x7b\xd6\xa6\x66\x65\xb0\x27\x8c\ -\xf8\x2b\xdb\x79\x62\x2e\xec\xbe\x2b\x48\xfb\x34\x4b\x30\x8d\x05\ -\x4f\x1a\x62\xa4\xf6\x49\x4c\x4c\x78\x13\xda\xeb\x1b\x6d\xed\xd2\ -\x7f\x71\xd5\xfb\xd2\xd8\x13\x11\x0d\x7f\xba\x4f\xee\x3a\xbf\x7a\ -\x5b\x02\x3a\x26\x25\x8f\x4c\x38\xdd\xb9\x6f\x0f\x6a\x6e\xd7\x54\ -\x53\x44\x46\xb3\x32\xad\x5c\xde\x1e\xce\xdb\xbb\x55\xba\xb1\xb4\ -\x45\x54\xcc\xc4\xc3\x3b\x9a\x53\x1f\xd1\x97\xe3\xa7\xdd\x7c\xd9\ -\x8b\xb7\x45\x59\x86\x2a\x66\x88\xfe\xd6\xaf\xf1\x24\xd5\x91\xbd\ -\x39\xc6\xd9\xcf\xf5\xea\x11\x3b\xc6\xd9\xcf\xf5\xea\x1a\x23\xd8\ -\xdb\xfd\x88\x47\xb1\xb7\xfb\x10\xd4\xf2\xd6\x37\xcc\x6f\x1b\x67\ -\x3f\xd7\xa8\x77\x61\x36\xeb\x23\xc7\xe2\x69\xc3\x61\x71\x74\x57\ -\x76\xae\x88\x86\x80\x9b\x36\xf4\xfb\x10\xcb\x6c\x95\x14\xdb\xda\ -\x6c\x2c\xd3\x4c\x44\xcc\xf0\x2f\x94\xc7\xd1\x9c\xad\x69\x89\x8e\ -\xd8\x4d\x35\x6b\x3a\x38\x61\xe3\xfa\x8b\x7a\xfe\xcc\x39\xd3\x1a\ -\x55\x2e\x49\x8d\x3d\xbd\x8f\xef\x6b\x3e\x2a\x0f\x6a\xfd\xbd\x7f\ -\xef\x6b\x3e\x2a\x0f\x6b\xb7\x96\xa2\x2e\x7d\x99\x6e\x4d\xd3\xf5\ -\x6a\x8f\x19\x69\xbb\x9f\x66\x5b\x93\x74\xfd\x5a\xa3\xc6\x4f\x49\ -\x57\xce\xd6\x27\x69\x3f\xb8\xb1\x3f\xba\xcb\x76\xb1\x3b\x49\xfd\ -\xc5\x89\xfd\xd7\x29\xd6\x63\xe7\x8b\xbf\xe9\x37\x7f\x7e\x50\x9b\ -\xbf\xe9\x37\x7f\x7e\x50\xed\x1a\x88\x27\xa0\x27\xa0\x56\x77\x61\ -\xba\xe9\x83\xfc\x5f\x41\x53\xf6\x23\xc1\xf3\xee\xc3\x75\xd3\x07\ -\xf8\xbe\x82\xa7\xec\x47\x83\x15\x9a\xe5\x4b\x4c\xef\x53\xfb\xda\ -\xdf\x8c\xb7\x2c\x70\x69\xad\xea\x7f\x7b\x5b\xf1\x94\xf3\xd4\x9d\ -\x51\x0d\x26\x7c\x02\x26\xa9\x98\xa2\x98\xd7\x57\x56\xce\x54\xcf\ -\xbb\x31\xc3\xe2\x4f\xec\xc7\xbd\x1f\x72\xcd\x90\xec\x26\x69\x9c\ -\xe9\x5d\x54\x4d\xbb\x5f\xed\x70\x96\xc7\xc8\xf7\x7b\x96\xe5\x91\ -\x15\xdd\xb7\xed\x6e\x76\xc5\x51\xac\x31\xb1\x1a\x4a\x26\xaa\x7d\ -\xda\xa9\x9e\x3d\x1a\xc1\x11\x34\xd1\xa6\xb3\xaf\xdd\x3a\x36\x16\ -\xf5\x70\x38\x6c\x0d\xfc\x24\x61\xf0\xf6\xed\x45\x5a\xeb\xc9\x8d\ -\x1a\xf7\xf5\x9a\x83\x84\xdb\xb9\x3c\x7d\xad\xd8\x8f\xdf\x97\xa3\ -\x0b\x8d\xc5\xe1\x27\xfa\x9c\x4d\xc8\x98\xf8\xd5\x32\xe9\x9d\x6a\ -\x9e\x32\x9f\xb3\x1e\xec\x2e\x43\x17\x7d\x96\xde\x16\x61\x84\xc5\ -\x51\x87\xcc\x2e\x7b\x5b\x75\x4f\x27\x5f\x83\x70\xe1\x31\x16\xb1\ -\x38\x5a\x6f\x5a\x9d\x69\xae\x35\x87\xcc\xd5\x55\x54\xc4\x55\x1c\ -\x25\xbc\xb7\x77\x98\x55\x8c\xd9\xeb\x76\xeb\x9d\x6a\xb3\x1a\x6a\ -\xc7\xa9\x23\x2b\x5d\x11\x56\x91\xaf\xc5\x4d\xde\x6e\x59\x46\x2f\ -\x22\x9b\xb4\xd1\xef\xd1\x3a\xeb\xf7\x2e\x95\x44\xc4\x43\x13\xb5\ -\x36\xa2\xf6\x41\x89\xe1\xd1\x6e\x5c\xfc\x91\xf3\xb4\x4e\xb3\x2e\ -\x48\xd3\x4a\xaa\x8f\x85\x52\x97\x66\xc0\x14\x00\x00\x00\x00\x05\ -\x8b\x60\xba\xe3\x81\xfd\xe6\xfd\x68\x2d\x82\xeb\x8e\x07\xf7\x9b\ -\xf5\xcb\xdf\x59\xa0\x0c\xa0\x8d\x49\xaa\x22\x35\x99\xd2\x3b\x66\ -\x54\x4c\xcf\x79\x18\x5c\x26\xd3\xd8\xcb\xac\x72\x6b\xc3\x45\x7c\ -\x8b\xf7\x7e\xf9\xf8\x12\x68\xbe\x0e\x34\x57\x4d\x74\x53\x5d\x33\ -\xad\x35\x46\xb1\x31\xda\xe4\x0e\x8c\x6e\x12\xd6\x3b\x09\x77\x0b\ -\x7e\x88\xaa\xdd\xda\x66\x9a\xa2\x5f\x3e\xed\x3e\x47\x77\x67\xf3\ -\xab\xd8\x2a\xe2\x66\x8d\x75\xb7\x57\xed\x52\xfa\x22\x55\x0d\xe1\ -\xec\xcc\x67\x99\x34\xe2\x6c\xd3\xff\x00\x5a\xc2\xc4\xd5\x4e\x9f\ -\xad\x1d\xb0\xd7\x9b\x95\x63\x47\xea\x92\x62\x69\xaa\x62\x63\x49\ -\x8e\x13\x12\x3a\xb4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x28\x00\x05\x00\x00\ -\x00\x00\x00\x00\x1b\xdf\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xab\ -\xee\xdb\xa8\x59\x6f\xcd\xf3\x6b\x5a\x1c\x6f\x50\x01\x10\x00\x00\ -\x00\x00\x00\x00\x00\x05\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\ -\xca\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\x59\xd5\x68\x60\x1d\x94\ -\x00\x00\x00\x00\x04\xa1\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x08\xaa\x12\x02\x26\x39\x51\xa4\x32\x9b\ -\x35\x55\x14\x67\xb8\x4a\x6b\x88\x9d\x6e\x47\x4f\x8b\x17\x4c\xe9\ -\x2e\xfc\xbe\xef\xb1\xcd\x70\xf7\xe6\x74\xe4\x57\x12\x97\x83\xe9\ -\x2c\x3d\x31\x4d\xba\x63\x93\x14\xc6\x9d\x8e\xed\x22\x29\xe9\x78\ -\x72\x8c\x55\x38\xdc\xae\xc5\xe8\x9d\x79\x54\xc3\xd9\xa7\x27\x84\ -\xf1\x71\xd6\x1a\x93\x7b\x98\x6f\x67\x9b\x5a\xc6\x55\x1e\xe4\xdb\ -\xa6\x98\x9f\xbd\xaf\x35\xe1\xaf\xc5\xbd\x36\xfb\x67\x3f\xe9\x06\ -\x45\x34\xd1\x1a\xdc\xb5\x57\x2e\x3e\xfd\x1a\x3a\xfe\x1e\xee\x1a\ -\xba\xad\x5f\xa2\x68\xae\x99\xd3\x49\x75\xf2\xd3\x8f\x27\x93\xc0\ -\x46\xba\x47\x19\x35\xe1\xab\x55\x53\x31\x1a\x6b\x3f\x16\xf6\xdd\ -\xf6\x1a\xbc\x26\xcc\x5a\xa6\xae\x9a\xa7\x58\x69\xfd\x9c\xc8\xef\ -\xe7\x79\xa5\xab\x54\x5b\x99\xb7\x13\xef\x4f\xc1\xbf\xf0\x38\x3a\ -\x70\x38\x1b\x56\x69\xe1\x16\xe9\x88\x73\xf5\x59\xaf\x4f\x45\x3c\ -\x7a\x58\x1d\xb3\xae\x23\x66\x31\x75\x55\xd1\x34\x4b\x3d\xaf\x2e\ -\x22\x7e\x2a\x3e\xf3\xf3\x18\xc2\xe4\x91\x86\x8a\xb4\x9b\xda\xc3\ -\x3e\x7f\x48\xd3\x13\x3c\xaa\xe6\xa8\xe8\x3e\x28\xa3\xdd\xa3\x49\ -\x4f\xc5\xd5\xa6\xe0\xdd\x27\xf7\x1d\x5f\xbd\x2d\x81\x0d\x7f\xba\ -\x4f\xee\x2a\xbc\x65\xb0\x3b\x5c\xfd\x31\x5e\x5c\xd3\xfb\xbe\xff\ -\x00\xee\xbe\x6e\xc5\x7f\x78\x62\xbf\xdf\x55\xfe\x2f\xa4\x73\x4f\ -\xee\xfb\xdf\xba\xf9\xbb\x15\xfd\xe1\x8a\xff\x00\x7d\x57\xf8\xb5\ -\xe5\xa8\xeb\x3b\x52\x36\xd3\x8c\xf4\x32\xbb\x2d\xd6\x6c\x1f\x8b\ -\x15\x3d\x0c\xae\xcb\x75\x9b\x07\xe2\x9e\x91\xf4\x4d\x9f\xec\x6d\ -\xfe\xec\x39\xc7\xda\x70\xb3\xfd\x8d\xbf\xdd\x87\x38\xfb\x4e\x15\ -\x96\x9d\xde\xc7\xf7\xb5\x9f\x15\x07\xb5\x7e\xde\xc7\xf7\xad\x9f\ -\x15\x03\xa6\x5d\xbc\x35\x0b\x9f\x66\x5b\x93\x74\xfd\x5a\xa3\xc6\ -\x5a\x6e\xbf\xb3\x2d\xc9\xba\x7e\xad\x51\xe3\x27\xa4\xab\xe3\x13\ -\xb4\x9f\xdc\x58\x9f\xdd\x65\xa7\xb5\x8a\xda\x3e\x39\x16\x2b\xf7\ -\x5c\xa7\x59\x8f\x9d\xee\xff\x00\xa4\xdd\xfd\xf9\x42\x6e\xff\x00\ -\xa5\x5d\xfd\xf9\x43\xb4\x6a\x20\x9e\x80\x9e\x81\x59\xdd\x85\xeb\ -\xa6\x0b\xf1\x7d\x05\x4f\xd9\x8f\x07\xcf\xbb\x0b\xd7\x4c\x17\xe2\ -\xfa\x0a\x9f\xb3\x1e\x0c\x56\x6a\x61\xa6\xb7\xa7\xfd\xed\x6f\xc5\ -\xb9\x61\xa6\xb7\xa7\xfd\xed\x6f\xc5\x3c\xf5\x22\x89\xd8\xf6\x64\ -\xf1\x6e\xac\xd7\x0f\x4d\x71\xc2\x6b\x8e\x3f\x8b\xc7\xd8\x9a\x2e\ -\x55\x6e\xf5\xa9\xa3\xa6\x2e\x53\x3f\xcd\xba\xd5\x7d\x2d\x83\xb7\ -\x4d\x38\x6b\x71\x44\x45\x31\xc8\x8e\x8f\x07\xa2\x99\xd2\x34\x96\ -\x2b\x67\x71\xd4\x66\x39\x45\x8c\x45\x13\xfa\xb1\x12\xca\x70\xe5\ -\x6a\xe5\x62\x35\x9e\xf7\x70\xd3\x76\xde\x1e\xf4\xc7\xbb\x4f\x4c\ -\xb5\x6e\xba\x51\x14\xff\x00\x37\xd0\x3b\x5f\x91\xc6\x79\x92\x5e\ -\xc3\xc4\x7b\xfa\x6b\x4c\xb4\x1e\x33\x0f\x77\x03\x88\xab\x0f\x88\ -\xb7\x34\x55\x44\xe9\xc5\xbf\x34\x75\x04\x4c\x49\x32\xe8\xd2\x38\ -\x69\x35\x4f\x44\x37\x46\xeb\x70\x95\x59\xc8\xaa\xbd\x57\x45\xde\ -\x30\xd4\xd9\x36\x55\x7b\x38\xc6\x5b\xc3\xd9\xb7\x35\x53\x35\x7b\ -\xd3\x11\xd1\x0d\xff\x00\x91\x65\x94\xe5\x39\x3d\x9c\x2c\x70\xe4\ -\x53\xa3\x9f\xaa\xcd\x64\x69\xd7\x5f\x79\x8b\xda\x69\x8a\x72\x1c\ -\x57\x1f\xfe\xdc\xb2\xba\xeb\xc7\xa1\x53\xde\x16\x63\x18\x3d\x9e\ -\xb9\x11\x56\x95\x57\xee\xe8\xc4\x48\xd1\xb5\xcc\x4d\xda\xe6\x3f\ -\x6a\x44\x47\xf3\x1d\xa3\x69\x01\x40\x11\x1a\xcf\x60\x24\x00\x00\ -\x05\x8b\x60\xba\xe3\x81\xfd\xe6\xfd\x68\x2d\x82\xeb\x8e\x07\xf7\ -\x9b\xf5\xcb\xdf\x59\xa1\x20\xca\x35\xbe\xf1\xf6\xd6\xbc\x17\xb4\ -\xc9\x70\x15\x4d\x37\xa6\x3f\xae\xb9\xfb\x31\xf0\x86\xa7\x99\x99\ -\x9d\x66\x67\x5e\x9d\x56\x7d\xe2\xf5\xdb\x1d\xe3\x4f\xf9\x61\x59\ -\x75\x93\xf1\xa8\xdc\xfb\xb4\xda\x5f\xe9\x6c\xa6\x70\x18\x8a\xf5\ -\xc4\xe1\x63\x48\xd6\x78\xd5\x4f\x62\xf1\x0f\x9c\xf6\x73\x3a\xbb\ -\x90\xe7\x36\x31\xb6\xa6\x62\x9a\x6a\xd2\xba\x7e\x34\xf6\xbe\x85\ -\xc1\x62\xed\x63\xb0\x76\xb1\x56\x2a\x8a\xad\xdd\xa6\x2a\xa6\x61\ -\x8f\x53\x12\xbb\xd1\x31\x13\x13\x13\xda\x91\x94\x69\x1d\xe3\x6c\ -\xcf\xf4\x2e\x71\xfa\x66\x1e\x8d\x30\xb8\xa9\xe5\x46\x91\xc2\x9a\ -\xbb\x61\x4e\x7d\x13\xb4\x99\x25\x9c\xff\x00\x26\xbd\x82\xbb\x11\ -\xca\xaa\x35\xb7\x57\xec\xd5\xd8\xf9\xf3\x1d\x83\xbd\x97\xe3\x6e\ -\xe1\x2f\xd3\x34\xdc\xb5\x54\xd3\x31\x2e\xbe\x6e\xb5\x1d\x20\x34\ -\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x21\x28\x00\x05\x00\x00\x00\x00\x00\x00\x1b\xdf\ -\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xab\xee\xdb\xa8\x59\x6f\xcd\ -\xf3\x6b\x5a\x1c\x6f\x50\x01\x10\x00\x00\x00\x00\x00\x00\x00\x05\ -\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xca\xce\xf1\xfa\x87\x99\ -\x78\x5b\xf3\x29\x59\xd5\x68\x60\x1d\x94\x00\x00\x00\x00\x04\xa1\ -\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x89\xd6\x23\x58\xe9\x4a\x27\xa3\x88\x36\xe6\xed\x36\x8a\ -\x8c\x56\x07\xf4\x1b\xd7\x23\xda\x51\xc2\x98\x99\xec\x6c\x1e\x11\ -\x3c\x67\x59\x97\xcd\xd9\x4e\x63\x77\x28\xc6\xd1\x8b\xb1\x54\xc5\ -\x54\xcf\x44\x37\x7e\xca\x6d\x56\x0f\x3e\xc2\x53\x31\x5d\x3e\xde\ -\x23\xde\xa7\x5e\x87\x2f\x51\x2a\xc5\x34\xc4\xcc\xc4\xf6\xc7\x47\ -\x62\xa7\xb4\x3b\x05\x80\xce\xe6\x6e\xe9\x16\xae\x55\xc7\x5a\x78\ -\x2d\x95\x4c\xf2\x75\xa6\x38\xea\x9d\x35\xa7\x5a\xa3\x8b\x33\xd6\ -\x32\xd3\xb8\x8d\xd5\x63\xad\x55\x31\x6e\xbe\x55\x3a\xf0\xd6\x5e\ -\xac\x0e\xea\xaf\x5c\xae\x9a\xb1\x95\x72\x69\x89\xe8\xa6\x5b\x5e\ -\x7e\x1c\x9d\x7e\xe4\xf1\xff\x00\xfa\x5b\xe9\x58\x9c\x97\x67\x30\ -\x39\x2e\x1b\x91\x86\xb7\x11\x5e\x9c\x6a\xd3\x8b\x2b\x31\x3d\x31\ -\xc7\xe3\x09\x8e\x13\xf0\xfb\x91\x55\x51\x6e\x26\x67\x87\xc6\x59\ -\xea\x38\xdd\xb9\x6e\xcd\x8a\xeb\xaa\xad\x29\xa6\x35\x9f\xb9\xa2\ -\xb6\xf3\x68\x2a\xce\xf3\x6a\xe8\xb7\x56\xb6\xad\x4f\xba\xb7\xef\ -\x03\x6d\x68\xc3\xda\xaf\x2f\xcb\xeb\xe5\x5c\xaf\x85\x73\x4c\xf4\ -\x35\x56\x95\x55\x57\x2b\xa6\x66\x75\x97\x5f\x30\x86\x9a\x51\x13\ -\x28\xf8\x9c\x67\x58\x9e\xc9\x3e\x2d\xd6\xdb\x83\x74\x9f\xdc\x55\ -\x7e\xf4\xb6\x0e\x9c\x5a\xfb\x74\x9f\xdc\x55\x7e\xf4\xb6\x06\xbc\ -\x5c\x6b\x15\xe5\xcc\xff\x00\xbb\xef\x7e\xeb\xe6\xfc\x57\xf7\x86\ -\x2b\xfd\xed\x5f\xe2\xfa\x47\x32\x88\xfe\x8e\xbd\x33\xfb\x2f\x9b\ -\xf1\x91\xa6\x63\x8a\xff\x00\x7b\x57\xf8\xb7\xe5\x63\xa8\x10\xdb\ -\x68\x9e\x86\x57\x65\xba\xcd\x83\xf1\x62\xa7\xa1\x95\xd9\x6e\xb3\ -\x60\xfc\x53\xd2\x3e\x89\xb3\xfd\x85\xbf\xdd\x87\x28\xfb\x4e\x36\ -\x7f\xb1\xb7\xfb\xb0\xe5\xfa\xce\x35\x96\x9e\xde\xc7\xf7\x9d\xaf\ -\x15\x02\x95\xff\x00\x7b\x3f\xde\x76\xbc\x54\x0a\x7a\x25\xd7\xcb\ -\x51\x15\xfd\x99\xf0\x6e\x5d\xd3\xf5\x6a\x8f\x19\x69\xaa\xbe\xcc\ -\xb7\x2e\xe9\xfa\xb5\x47\x8c\x9e\x92\xaf\x93\xd0\xc6\x6d\x05\x3f\ -\xf6\x1e\x26\x3f\xd9\x64\xaa\x9d\x22\x3c\x5e\x0c\xff\x00\x4f\xe8\ -\x5c\x47\xee\x39\x4e\xb2\xf9\xca\xf4\x7f\xd6\xaf\x7e\xfc\xa1\xca\ -\xf7\xfa\x55\xff\x00\xf7\x92\xe2\xed\x1a\x88\x27\xa0\x92\x7a\x05\ -\x67\x76\x17\xae\x98\x2f\xc5\xf4\x15\x3f\x66\x3c\x1f\x3e\xec\x2f\ -\x5d\x30\x5f\x8b\xe8\x2a\x7e\xc5\x3e\x0c\x56\x6a\x61\xa6\x77\xa7\ -\xfd\xef\x6f\xc6\x5b\x99\xa6\x77\xa7\x31\x39\xbd\xbd\x3b\x26\x59\ -\xf3\xd4\x9d\x51\x7b\x0f\x0e\x93\xb1\x31\x13\x3c\x21\xd5\xaa\xd9\ -\x7b\xb0\xda\x38\xa6\x2a\xca\xef\xd7\xa4\xd3\xf6\x35\x9e\x99\x6d\ -\x2a\x67\x97\x4e\xaf\x99\xb0\x38\xbb\xd9\x7e\x2a\x8c\x4d\x9a\xa6\ -\x9b\xb4\x4e\xb1\xa3\x77\x6c\x76\xd8\xe1\xf3\xbc\x2d\x16\x6e\x57\ -\x14\xe2\x29\xa7\x49\xd6\x7a\x58\xb1\x2a\xd5\x1e\xf6\xb1\xfc\x95\ -\xad\xa1\xd8\x8c\xbb\x3c\x8a\xab\xaa\x88\xa2\xf4\xf6\xc4\x2c\x9a\ -\xc5\x71\x31\x13\xa4\xfc\x5c\xa2\x29\x9e\x33\x3c\x61\x22\x35\x06\ -\x33\x75\x38\xdb\x55\x7f\xd5\xaa\x8a\xa3\xef\x97\x66\x07\x75\x38\ -\xab\xb3\xae\x2a\xbe\x4f\x84\xb6\xec\x78\x93\xc1\x2f\xa5\x60\xb2\ -\x2d\x97\xcb\xf2\x3b\x74\xfb\x1b\x51\x35\xc4\x69\x33\xa3\x35\xaf\ -\x2b\x87\x61\x1c\x23\xa3\xa5\x1c\xaf\x67\xae\xbd\x1f\x10\xa5\x55\ -\xfb\x28\x99\xaa\x78\x7c\x5a\x67\x79\x19\xff\x00\xf4\x96\x3e\x70\ -\x96\x2b\xd6\xdd\xbf\xb5\xa7\xc5\x69\xdb\xdd\xb7\xb7\x97\x58\x9c\ -\x16\x06\xb8\xaa\xf5\x5c\x2a\x9a\x67\xec\xb5\x15\xdb\xb5\xde\xbb\ -\x55\xca\xea\xd6\xaa\xf8\xcf\xdf\x2d\x48\x91\xc2\x27\xdd\x8f\x8a\ -\x51\x14\xcc\x74\xa5\xb8\xda\x40\x51\x12\x6b\xa4\x68\x9d\x35\x47\ -\x44\x4c\x4f\x48\x09\x00\x00\x05\x8b\x60\xba\xe3\x81\xfd\xe6\xfd\ -\x68\x2d\x82\xeb\x86\x07\xf7\x9b\xf5\xcb\xdf\x59\xa0\x0c\xa3\x43\ -\x6f\x17\xae\xd8\xef\x1a\x7f\xcb\x0a\xca\xcd\xbc\x5e\xbb\x63\xbc\ -\x69\xff\x00\x2c\x2b\x2e\xd3\x8d\x8d\xa1\xba\xbd\xa5\xe5\x45\x59\ -\x26\x26\xe7\x18\xf7\xac\x6b\x3d\x9d\xb0\xd5\xee\xfc\x06\x36\xf6\ -\x5d\x8e\xb3\x8c\xc3\xd5\xc9\xb9\x6a\xa8\xaa\x0b\x36\x25\x7d\x2f\ -\x09\x63\x36\x7f\x38\xb5\x9e\x64\xf6\x31\xd6\x66\x27\x97\x4f\xbd\ -\x1f\x0a\xbb\x61\x93\x87\x16\x51\x2d\x65\xbd\x3d\x98\x8a\xa8\xa7\ -\x3c\xc2\xdb\xf7\xa3\x4a\x6f\xc5\x31\xd3\xf0\x96\xce\x74\xe2\xf0\ -\xd6\xb1\x98\x5b\x98\x6b\xd4\xc5\x56\xee\x53\x34\xd5\x13\xf0\x95\ -\x97\x07\xcc\xa9\x66\x36\xab\x21\xbb\xb3\xd9\xdd\xec\x1d\x71\x3e\ -\xce\x66\x6a\xb5\x57\xc6\x9e\xc6\x1d\xd9\xb0\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x94\ -\x00\x02\x80\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\ -\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\ -\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\ -\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\ -\xb4\x30\x0e\xca\x00\x00\x00\x00\x02\x50\x94\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\xa4\xed\x04\ -\x6b\xc6\x26\x23\x8f\xc1\xe8\xc1\x63\xf1\x79\x66\x2a\x31\x38\x3b\ -\x93\x4d\x51\xc6\x69\x89\xe0\xe8\xa7\x5d\x67\x57\x1a\x75\x8d\x74\ -\x9e\x2c\xe0\xd9\xf9\x06\xf5\x29\xab\x91\x67\x34\xb7\x54\x55\x1c\ -\x39\x54\xc7\x05\xe7\x0d\xb5\x19\x3e\x36\x88\xaa\x8c\x75\xad\x67\ -\xf5\x79\x50\xf9\xe2\x75\xe4\xe9\x3c\x75\x71\xb5\x11\x62\xae\x55\ -\xba\xa6\x8a\xbe\xe4\xc4\xc7\xd2\xd4\xe6\x58\x4a\xbd\xea\x71\x36\ -\xe7\xf1\x71\xbb\x9c\xe0\x6c\x46\xb7\x31\x56\xa9\xf1\xa9\xf3\xbc\ -\x66\xd9\x95\x1c\x28\xc5\xd7\x11\xe2\xeb\xbb\x8e\xc6\x62\x23\x4b\ -\xd8\x8a\xab\x8f\x84\xca\x7c\x98\xde\xd9\x86\xdc\x64\xd8\x1b\x33\ -\x5f\xe9\x54\x5d\x98\xec\xa2\xad\x65\xae\xf6\x8f\x79\x58\xcc\xd2\ -\x8a\xec\x65\xff\x00\xd5\x5a\x9e\x1a\xcf\x09\x51\x62\xd5\x11\x33\ -\xa4\x71\x9e\xd7\x2d\x22\x88\xd2\x38\xb5\x3c\xaa\x75\xb9\x72\xaa\ -\xae\xdd\xae\x6a\xae\x67\x8c\xcc\xea\x84\x44\x55\x11\xd3\xc1\x2d\ -\x07\x47\x12\x67\xdc\x99\xed\x94\xa2\x7e\xce\x9f\x10\x6d\xdd\xd3\ -\xcf\x27\x22\xab\x95\x31\xaf\x2a\x56\xec\xcb\x68\x72\xec\xa6\xd4\ -\xd7\x8a\xc4\x51\x4c\xc7\xea\xeb\xc5\xa0\x70\x39\xd6\x6b\x96\x59\ -\xf6\x58\x4c\x65\x76\xa9\x9e\xc8\x74\x63\x31\x98\xac\xc2\xad\x71\ -\x98\x8a\xaf\xd5\xf1\xaa\x52\xa3\x60\x6d\x26\xf4\x27\x19\x6e\xbc\ -\x2e\x5d\x6e\x62\x27\x84\xd5\x54\x35\xdd\x55\x4d\x77\x2b\xae\xa9\ -\xd6\xaa\xa7\x59\xf1\x70\x8a\x6a\xe4\xf2\x69\x8d\x34\x4d\x22\xa4\ -\x42\x7b\x14\x21\x93\xd9\x58\xff\x00\xea\x6c\x37\x8b\x15\x4c\xf1\ -\x76\x59\xbd\x77\x0b\x88\xa6\xf5\x9a\xa6\x9a\xe9\xe8\x98\x4a\x3e\ -\x92\x9c\x55\x8b\x18\x6a\x2b\xbd\x72\x28\xa6\x29\x8e\x33\x3c\x15\ -\x4c\xff\x00\x79\x39\x76\x59\x13\x6f\x0f\x3e\xde\xbf\x8d\x1c\x5a\ -\x9b\x15\xb4\x79\xc6\x36\x8f\x67\x7b\x1f\x72\x6d\xe9\xa7\x27\x5e\ -\x0c\x67\x44\xeb\x4f\xda\x9e\x96\x70\x65\xf6\x8b\x68\x71\x1b\x45\ -\x8b\xf6\xb7\x62\x22\x35\xe1\xc1\x8a\x9a\x69\xe1\x11\xa9\xd1\x1a\ -\x4c\xf1\x44\x6b\x3c\x21\x42\x74\xe3\x1d\x1c\x3b\x5b\x8b\x74\xf3\ -\x11\xb3\x74\xc4\xce\x9d\x3d\x2d\x3d\x31\xad\x3a\x6b\xc5\xef\xc2\ -\x67\xb9\xa6\x5f\x86\xfd\x1b\x05\x8a\xae\xd5\x3f\x08\x90\x6f\x8c\ -\xd7\x69\x32\xcc\xaa\xd5\x53\x7f\x11\x4e\xb1\xfa\xb1\x3c\x65\xae\ -\x36\x93\x79\x95\x66\x16\xab\xc2\xe0\x2d\xcd\x34\x4f\x09\x9a\xa1\ -\x44\xc5\xe2\x71\x38\xdb\xb1\x73\x19\x7a\xab\xd5\x69\xd3\x32\xea\ -\x9d\x23\xa3\x85\x2a\x15\x55\x35\xd7\x55\x75\x47\xbd\x54\xeb\x29\ -\x71\x89\x9d\x7a\x75\x87\x20\x44\xf4\x13\x31\xac\x4c\xf4\x15\x74\ -\x13\xa4\x46\xb3\x1c\x34\x06\x6f\x61\xe7\x93\xb6\xd8\x2d\x27\xdd\ -\xe3\xc6\x5b\xf2\xfe\x36\xce\x1a\xd4\x57\x76\xed\x14\x53\x11\xd3\ -\x32\xf9\xb7\x07\x89\xb9\x84\xbf\x46\x26\xc5\x5c\x8b\x94\x74\x4c\ -\x3d\x78\xbd\xa1\xce\x31\xb4\xfb\x3b\xf8\xdb\x95\xdb\xfd\x99\x94\ -\xc1\xb5\xf3\xfd\xe6\x65\xf9\x7f\x2a\xce\x17\x5b\xb7\x7b\x2a\xa7\ -\x8c\x35\x4e\x75\x9c\x5e\xce\x71\xf5\xe2\xaf\x4e\xb3\x54\xf4\x7c\ -\x18\xd9\xd2\x27\xec\xe9\xaf\x4c\xa6\x22\x09\x04\x26\x13\xc1\x1e\ -\x0d\x09\xed\xd5\xdb\x85\xc5\xe2\x30\x77\xa2\xee\x1e\xec\xdb\xae\ -\x27\x5e\x13\xa6\xae\xa4\x4d\x33\x57\x42\x0d\x91\xb3\xfb\xd3\x9b\ -\x11\x46\x1b\x33\xb5\x55\x55\x74\x72\xa9\x85\xef\x05\xb5\xd9\x36\ -\x32\xdd\x35\x7e\x97\x6e\x89\xab\xf5\x66\xa8\xd5\xf3\xee\xb3\x55\ -\x33\x4d\x5c\x27\xe2\xe1\x6e\x26\x2b\xd6\x9e\x15\x47\x6a\x62\x63\ -\xe9\x6a\x73\x4c\x15\xcf\xb1\x89\xa2\x7f\x14\x57\x9b\x60\x2d\x7d\ -\xbc\x4d\x11\xf8\xbe\x76\xa3\x34\xcc\x2c\xc6\x94\x62\xab\x8f\xc5\ -\xc6\xee\x63\x8f\xbf\xf6\xf1\x55\xd5\xf8\x9f\x26\x37\xb6\x61\xb6\ -\xd9\x36\x06\x89\xff\x00\xac\xd1\x72\x63\xf5\x68\xab\x59\x6b\xed\ -\xa7\xde\x6e\x27\x1d\x15\x61\xb2\xca\x2a\xb7\x44\xf0\x9a\xaa\x8d\ -\x25\xaf\xfd\x9c\x4c\xcf\x0d\x6b\x9f\xd6\x76\x47\x2b\x93\xa6\xba\ -\xca\xe2\xa6\xe5\xca\xef\x57\x35\xdd\xb9\x55\xca\xa7\xa6\x6a\x9d\ -\x5c\x74\x44\x6b\xdb\x1a\x39\x00\x02\x80\x00\x23\x44\x80\x00\x00\ -\x00\xc9\xec\xe6\x6b\x6f\x25\xcf\x30\xf8\xfb\xd6\xea\xb9\x45\xa9\ -\xd6\x69\xa7\xa6\x5b\x27\x9e\x1c\xab\xbb\xb1\x5f\xc6\x96\xa2\x98\ -\x12\xc9\x4c\x6d\xde\x78\x72\xae\xee\xc5\x7f\x1a\x4e\x78\x72\xae\ -\xee\xc5\x7f\x1a\x5a\x8d\x09\xf3\x13\x19\x7d\xa9\xce\x2d\x67\xbb\ -\x41\x88\xcc\x6c\x5b\xae\xdd\x17\xa6\x34\xa6\xbe\x98\xd2\x34\x62\ -\x11\x13\x1a\xe8\x99\x9d\x67\x48\xe9\x69\x52\x82\x12\x0b\x66\xc4\ -\xed\xb4\xec\xbd\x77\xac\xe2\x2d\x5c\xbf\x85\xb9\xc7\x93\x44\xf1\ -\xa6\xaf\xc5\x70\xe7\x87\x2a\xee\xec\x57\xf1\xa5\xa8\xb4\x19\xbe\ -\x65\x4c\x6d\xde\x78\x72\xae\xee\xc5\x7f\x1a\x4e\x78\x72\xae\xee\ -\xc5\x7f\x1a\x5a\x8b\x5f\x8c\x70\xf8\xa3\x49\xaa\x35\x8e\x98\x3e\ -\x61\x8b\xce\xda\x6d\x9e\x4f\xb5\x38\x1a\x29\xb7\x81\xc4\x5a\xc4\ -\xda\x9d\x68\xb9\x54\xc6\x9a\x7c\x25\x47\x44\xeb\x33\xc6\x34\x4c\ -\x45\x5d\x93\x1f\x8c\x2e\x60\x6a\x38\xcc\x57\xaf\x4c\x7f\x04\xc6\ -\xb3\xfa\xc1\xa9\x4b\x8f\x44\xe9\xd2\x9d\x63\x5d\x35\x55\x48\x8a\ -\xa7\x42\x26\x74\x04\x88\xd4\xe8\x8d\x41\x22\x35\x3e\x1f\x78\x24\ -\x45\x5a\xd3\x54\x53\xa7\x4a\x67\xc4\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x42\x50\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\ -\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\ -\xe6\xd6\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\ -\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\ -\xf0\xb7\xe6\x52\xb3\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\x42\ -\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x01\x09\x01\x1d\x02\x40\x41\xa7\x04\x80\x88\xa7\x44\xf6\x02\ -\x8e\x3c\x94\xa4\x41\x1c\x53\xa0\x8d\x01\x33\x1c\x11\xa7\x08\x8f\ -\x81\xa2\x41\x1d\x9a\x11\xc2\x26\x12\x25\x11\x1a\xc4\x70\x22\x34\ -\x48\x00\x0a\x22\x23\x49\x48\x20\x8d\x34\xd5\x31\xc3\xa0\x14\x44\ -\xc6\xb3\xac\x93\x1a\xa4\x04\x68\x4f\x14\x88\x23\x4e\x1a\x13\x1a\ -\xc6\x89\x00\xe8\x8d\x00\x00\xec\xd0\x01\x13\x1a\xfe\x09\xe2\x00\ -\x23\x44\x8a\x08\xd1\x20\x08\x48\x08\x8e\x02\x50\xa1\xa0\x08\x04\ -\xa4\x04\x6a\x91\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x04\x4c\ -\x6a\x94\x28\x9d\x67\x4d\x11\xa2\x44\x00\x00\x00\x11\x3d\x04\x46\ -\x93\xac\x24\x04\x4c\x7d\xe6\x89\x01\x09\xd7\x86\x80\xa2\x34\x34\ -\xd5\x22\x08\x88\xd1\x20\x08\xd0\xed\xd5\x20\x13\xc5\x1a\x24\x34\ -\x22\x65\x13\x1a\xca\x40\x42\x40\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x04\x25\x00\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\ -\x59\x6f\xcd\xf3\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\ -\x43\x8d\xea\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\ -\xa8\x79\x97\x85\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\ -\x65\x2b\x3a\xad\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x4c\xc4\ -\x47\x12\x35\xe9\xd3\x81\x29\x99\x9e\x80\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x10\x94\x00\x02\x80\x00\x00\x00\x00\x00\x0d\ -\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\ -\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\ -\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\ -\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x02\ -\x50\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x19\x9d\x98\xc1\xe0\xf1\x98\xdc\x54\xe3\ -\xac\x4d\xfb\x38\x6c\x15\xec\x47\xb3\x8a\xe6\x8e\x54\xd1\x4e\xb1\ -\x1a\xc7\x43\xb3\xfa\x57\x67\x3f\xfe\x31\x57\xff\x00\xb0\xaf\xff\ -\x00\x83\x64\xff\x00\xb7\xcd\x7f\xe5\x58\x9f\xf2\x30\x48\x33\xbf\ -\xd2\xbb\x39\xff\x00\xf1\x8a\xbf\xfd\x85\x7f\xfc\x31\x99\x8e\x23\ -\x07\x89\xc4\x45\x78\x1c\x0c\xe0\xad\x72\x62\x26\xdc\xde\x9b\x9a\ -\xcf\xc7\x59\x79\x53\x4d\x35\x57\x5c\x51\x45\x33\x55\x55\x4e\x91\ -\x11\x1a\xcc\xc8\x20\x67\xeb\xd9\xcc\x16\x02\x62\xd6\x73\x9d\xd9\ -\xc1\x62\x74\xd6\xac\x3d\xbb\x35\x5f\xae\xdf\xdd\x54\xd3\xc2\x27\ -\xee\xd5\xd3\x8d\xd9\xfa\x6d\xe5\xf5\xe6\x39\x6e\x63\x67\x31\xc2\ -\x5a\xaa\x29\xbd\x34\x53\x55\x15\xda\xd7\xa2\x6a\xa2\xae\x3a\x4f\ -\xc6\x35\x83\x46\x18\x72\xb7\x44\xdc\xb9\x4d\x11\x3a\x4d\x53\x10\ -\xb0\xe2\xf6\x4a\x8c\xab\x15\x76\xd6\x71\x9b\x58\xc1\x51\x4d\xca\ -\xa8\xb5\xfd\x5d\x57\x2e\x5d\x88\x9d\x39\x51\x44\x74\x53\xc3\xa6\ -\x66\x35\xec\x05\x70\x67\x6f\xec\xdd\xab\xb8\x1b\xf8\xcc\x9f\x34\ -\xb3\x99\x51\x86\xa7\x97\x7e\xdc\x5b\xaa\xd5\xda\x29\xfd\xae\x4d\ -\x5d\x31\x1d\xb3\x13\xc1\x14\x6c\xfe\x17\x0d\x6e\x89\xce\x73\x7b\ -\x59\x7d\xdb\x94\xc5\x74\xe1\xe2\xcd\x57\x6e\x44\x4f\x44\xd5\x11\ -\xc2\x9f\x09\x9d\x7e\xe3\x46\x0d\xce\xcd\x34\x57\x7e\xdd\x17\x6e\ -\x7b\x3a\x2a\xaa\x22\xaa\xf4\xd7\x93\x1a\xf1\x9d\x19\x6c\x76\xcf\ -\x7b\x2c\xba\xac\xcb\x2d\xc7\xda\xcc\xb0\x76\xea\x8a\x6e\xd7\x6e\ -\x99\xa2\xbb\x33\x3d\x1c\xaa\x27\x8c\x44\xf6\x4f\x43\x0c\xa3\x25\ -\x9f\x60\x72\xec\xbf\x32\x9b\x19\x66\x63\x19\x85\x8e\x44\x4f\xb6\ -\x8a\x39\x3c\x67\xa6\x1d\xb3\x97\x61\xe3\x63\xa9\xcc\xf9\x33\xfa\ -\x4c\xe6\x13\x63\x95\xaf\x0e\x47\xb3\x8a\xba\x3c\x5e\x7c\xeb\x2a\ -\xb9\x92\xe6\x97\x30\x17\x2e\xd3\x76\xab\x74\xd1\x54\xd5\x4c\x69\ -\x13\xca\xa2\x2a\xff\x00\xd5\x91\xab\xfe\xee\x68\xff\x00\x9b\xd5\ -\xe5\x42\x0a\xf8\xf7\x4e\x57\x5f\xf4\x15\x39\xb5\x17\x69\xae\xdf\ -\xe9\x13\x62\xe5\x1f\xad\x6e\xae\x4f\x2a\x99\xf0\x98\xd7\xf8\x3c\ -\x2a\x03\xdd\x56\x57\x5d\x19\x15\x39\xad\x77\x69\xa6\x9b\x98\x89\ -\xb3\x6e\xd4\xc7\xbd\x5e\x91\xad\x55\x47\xdd\x1a\xc4\x78\xcb\xc2\ -\x0c\xae\x41\x80\xc3\xe6\x17\x71\xd4\xe2\x29\x99\x8b\x18\x0b\xf7\ -\xe8\xd2\x74\xf7\xe9\xa7\x58\xfe\x6c\x53\x3b\xb2\x7f\xdb\xe6\xbf\ -\xf2\xac\x4f\xf9\x1e\x1c\x9f\x27\xc4\x67\x38\xcf\x61\x63\x93\x45\ -\x14\x47\x2e\xf5\xea\xf8\x51\x66\x88\xe9\xaa\xa9\xf8\x20\x9c\x9f\ -\x28\xbb\x9b\xe2\x6a\xa6\x2b\xa6\xce\x1e\xcd\x3c\xbc\x46\x22\xbf\ -\xb1\x66\x8f\x8c\xfd\xff\x00\x08\xed\x97\x56\x67\x5e\x02\xbc\x6d\ -\x51\x96\xda\xb9\x6f\x0d\x44\x45\x34\x4d\xda\xb5\xae\xbd\x3f\x5a\ -\x7b\x22\x67\xe1\x1c\x21\xef\xce\x73\x6c\x3c\xe1\xa9\xca\x32\x88\ -\xaa\x8c\xb6\xcd\x5c\xaa\xab\xaa\x34\xaf\x13\x5f\xed\xd5\xff\x00\ -\xa4\x76\x43\x0a\x00\xcb\xe0\x72\x08\xbb\x80\xa3\x31\xcc\x71\xf6\ -\x72\xec\x1d\xca\xa6\x9b\x55\xdc\x89\xae\xbb\xb3\x1d\x3c\x9a\x29\ -\xe3\x31\x1f\x1e\x10\xf4\xda\xd9\xbc\x06\x61\x57\xb1\xca\x33\xeb\ -\x38\xbc\x54\xc4\xcd\x18\x7b\xb6\x6a\xb1\x37\x3e\xea\x66\x75\x89\ -\x9f\xbb\x58\x34\x57\xc4\xd7\x45\x56\xeb\xaa\x8a\xe9\x9a\x6a\xa6\ -\x74\xaa\x9a\xa3\x49\x89\xf8\x33\x56\x36\x5b\x17\x88\xc1\xe0\xb1\ -\x76\xef\x59\xa6\xce\x2a\xd5\x77\x6b\xb9\x76\xae\x45\x16\x29\xa6\ -\xb9\xa3\x5a\xaa\xfb\xe6\x38\x69\xc5\x46\x10\x65\x31\xd9\x66\x5d\ -\x87\xc2\x4d\xec\x2e\x7b\x87\xc6\x5c\xa6\x62\x26\xd5\x36\x6e\x51\ -\x33\xf7\xc4\xd5\x1a\x4f\xf2\x71\xca\xf2\x4b\xd9\x95\x9b\xb8\xaa\ -\xef\xda\xc2\x60\xac\x4c\x45\xdc\x4d\xf9\x98\xa6\x26\x7a\x29\x88\ -\x8e\x35\x55\xf7\x42\x0c\x68\xcf\xd1\x91\xe4\x98\x8a\xe2\xce\x1f\ -\x6a\x2c\xfb\x6a\xa7\x4a\x7d\xbe\x16\xe5\xba\x26\x7e\xfa\xb8\xe9\ -\x1f\x7c\xc3\x11\x98\x60\x31\x39\x5e\x3a\xee\x0b\x19\x6e\x6d\xdf\ -\xb5\x3a\x55\x4e\xba\xfe\x31\x3d\xb0\x0f\x38\xf7\xe5\x39\x36\x2b\ -\x38\xbf\x5d\xbc\x3f\xb3\xb7\x6e\xd5\x3c\xbb\xd7\xef\x55\xc8\xb7\ -\x6a\x9f\x8d\x53\xd9\xfe\x2f\x7c\x64\xd9\x0d\x53\xc8\xa7\x6a\x6d\ -\x7b\x49\xe1\xad\x58\x3b\x91\x46\xbf\xbd\xd3\xfc\x81\x81\x65\xb2\ -\x2c\xbb\x0f\x8f\xc3\xe6\xd5\xdf\xa6\x66\x70\xb8\x0a\xaf\xda\xd2\ -\x74\xd2\xb8\xae\x98\xfc\x78\x4c\xbc\xd9\xae\x51\x8b\xc9\xb1\x51\ -\x63\x15\x4d\x3e\xfd\x31\x5d\xbb\x96\xea\xe5\x51\x76\x99\xe8\xaa\ -\x9a\xa3\xa6\x19\x3d\x96\xff\x00\x44\xda\x0f\xf9\x55\x7f\xe7\xa0\ -\x15\xf0\x64\xb3\x1c\x9a\xe6\x57\x82\xc3\xdc\xc5\xdd\xa6\xde\x2b\ -\x11\xef\xc6\x17\x49\xe5\xd1\x47\x65\x55\x7c\x35\xec\x8e\x95\x18\ -\xd4\x3d\x59\x7e\x5d\x8a\xcd\x31\x94\x61\x30\x76\xa6\xe5\xda\xfb\ -\x35\xd2\x22\x23\xa6\x66\x67\x84\x44\x7c\x59\x5a\xb2\x4c\x92\xcd\ -\x53\x6b\x11\xb5\x16\x22\xf5\x3c\x2a\xf6\x38\x5b\x97\x2d\xc4\xfe\ -\xf7\x0d\x7c\x62\x10\x60\x46\x4b\x36\xc8\xf1\x19\x4d\x36\x6f\x4d\ -\xdb\x58\x9c\x26\x22\x35\xb3\x89\xb1\x57\x2a\x8a\xfe\x31\xf1\x89\ -\x8e\xd8\x9e\x2c\x6a\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\ -\x28\x00\x05\x00\x00\x00\x00\x00\x00\x1b\xdf\x76\xdd\x42\xcb\x7e\ -\x6f\x9b\x5a\xd0\xab\xee\xdb\xa8\x59\x6f\xcd\xf3\x6b\x5a\x1c\x6f\ -\x50\x01\x10\x00\x00\x00\x00\x00\x00\x00\x05\x67\x78\xfd\x43\xcc\ -\xbc\x2d\xf9\x94\xac\xca\xce\xf1\xfa\x87\x99\x78\x5b\xf3\x29\x59\ -\xd5\x68\x60\x1d\x94\x00\x00\x00\x00\x04\xa1\x28\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x2c\x3b\x1b\x55\xaa\x31\xd9\x8d\x57\xed\xd5\x72\xd4\x65\x98\x89\ -\xae\x8a\x6a\xe4\xcd\x51\xc8\xe3\x11\x3a\x4e\x9e\x3a\x4b\xcf\xfa\ -\x76\xcd\xf7\x0e\x37\xff\x00\xd9\x47\xff\x00\xea\x76\x6c\x9f\xf6\ -\xf9\xaf\xfc\xab\x13\xfe\x46\x09\x06\x47\x1d\x8a\xc9\xaf\x61\xf9\ -\x38\x1c\xaf\x13\x86\xbd\xac\x4f\x2e\xe6\x32\x2e\x46\x9f\x0d\x39\ -\x11\xfe\x2f\x26\x0f\x15\x77\x03\x8c\xb3\x8b\xb1\x31\x17\x6c\x57\ -\x15\xd1\x35\x53\x15\x44\x4c\x4e\xb1\xc2\x5d\x2c\xc6\xca\xe0\xb0\ -\xd8\xcc\xea\x27\x17\x6f\xda\xd8\xc3\xd9\xb9\x88\xae\xd6\xba\x7b\ -\x4e\x45\x13\x54\x53\xf8\xcc\x47\xe0\x0f\x35\x8c\xaf\x37\xce\x6e\ -\x5c\xc4\x61\xb0\x18\xbc\x5d\x55\xd5\x35\x57\x72\xdd\x9a\xaa\x89\ -\xaa\x78\xce\xb3\x10\xb0\xec\xce\x43\x9d\xe0\x31\x98\xc9\xc6\x65\ -\x98\xbb\x18\x5b\xb8\x0c\x45\x17\x6a\xbb\x66\x62\x99\x8f\x67\x33\ -\x1a\xeb\xf7\xc4\x30\x59\x8e\xd1\xe6\xd9\xa5\x73\x38\x8c\x6d\xca\ -\x6d\x47\xd8\xb1\x6e\xae\x45\xba\x23\xb2\x29\xa6\x38\x44\x3d\xdb\ -\x1d\x5d\xeb\x99\xd5\xd8\x9a\xeb\xaa\x98\xc1\x62\x66\x78\xcc\xc4\ -\x7f\x55\x50\x30\x78\x5f\xf4\xab\x3f\xbf\x4f\xf8\xb2\xfb\x6b\x7a\ -\xe5\xfd\xb2\xcd\x2a\xb9\x54\xd5\x34\xe2\x2a\xa2\x35\xec\x88\xe1\ -\x11\xfc\x21\x88\xc2\xff\x00\xa5\x59\xfd\xfa\x7f\xc5\x94\xdb\x0e\ -\xb8\x66\xdf\xf1\x55\xff\x00\x88\x3b\x36\x26\xed\x76\xb6\xc7\x2d\ -\xe4\x4f\x0a\xef\x45\xba\xa3\xb2\xaa\x6a\x8d\x26\x27\xf0\x96\x27\ -\x1d\x88\xbb\x8a\xc7\xe2\x31\x17\xab\x9a\xee\x5d\xb9\x55\x55\x55\ -\x3d\xb3\x32\xc9\xec\x6f\x5c\x32\xaf\xf8\x9a\x7f\xc5\x88\xbd\xfd\ -\xbd\xcf\xde\x9f\xf1\x3f\xa3\x3b\xb1\xd3\x35\xe3\xf1\xd8\x69\x9f\ -\xea\xf1\x19\x76\x22\x8a\xe3\xc2\x89\xaa\x3f\x9c\x42\xbe\xcf\xec\ -\x67\xf7\xcd\xff\x00\xf8\x1c\x4f\x95\x53\x00\x0b\x16\xde\xf5\xbb\ -\x13\xfe\xea\xc7\x93\x43\x8d\x5f\xf7\x73\x47\xfc\xde\xaf\x2a\x1c\ -\xb6\xf7\xad\xd8\x9f\xf7\x56\x3c\x9a\x1c\x6a\xff\x00\xbb\x9a\x3f\ -\xe6\xf5\x79\x50\x7f\x04\x6c\xbc\xfe\x9b\x6f\x30\xc8\xaa\xd2\x7f\ -\x4f\xb1\x35\x58\xa6\x7f\xfc\xf6\xfd\xea\x38\xf6\x6b\x1c\xa8\xfc\ -\x58\x18\x89\x9a\xb9\x31\x13\x33\x33\xa6\x8e\xec\x0e\x32\xee\x5f\ -\x8f\xb1\x8d\xb1\x3a\x5d\xb1\x72\x9b\x94\x4f\xdf\x13\xaa\xd1\x19\ -\x5e\x16\xd6\xdb\x57\x8d\x8a\x34\xcb\x2d\xda\xfe\x94\xa3\x4e\x11\ -\x36\xf4\xe5\xd3\x4f\xfe\x6d\x28\x06\x3b\x6a\xa6\x9c\x25\xec\x1e\ -\x4b\x6e\x7d\xcc\xb7\x0f\x14\x57\xa4\xeb\xfd\x75\x5e\xfd\xcf\xe7\ -\x3a\x7f\xe1\x60\x5d\x98\x9c\x45\xcc\x5e\x2a\xee\x26\xf4\xeb\x72\ -\xf5\x75\x57\x5c\xfc\x66\x67\x59\x75\x82\xc7\xb1\x36\x3f\x49\xcc\ -\x71\xf6\x3d\xad\xbb\x5e\xd7\x2d\xc4\x51\xed\x2e\x4e\x94\xd1\xad\ -\x3a\x6b\x33\xd9\x10\xf6\x61\xf6\x8f\x29\xcb\xab\xfe\x83\xc3\xe1\ -\xa2\xf6\x4b\x76\x3d\x9e\x32\xfd\x54\x69\x77\x11\x33\xff\x00\xdc\ -\x8f\xd9\xe4\xcf\x1a\x69\xff\x00\xd6\x78\x63\x76\x4f\xfb\x7c\xd7\ -\xfe\x55\x89\xff\x00\x23\x04\x0c\x86\x77\x94\x5d\xc9\x73\x2a\xf0\ -\xb7\x2a\x8b\x94\x4c\x45\xcb\x37\xa9\xfb\x37\x6d\xcf\x1a\x6a\x8f\ -\x18\x63\xd6\x5c\xa2\xba\x36\x8b\x29\xff\x00\xa3\xf7\xe6\x23\x1b\ -\x63\x95\x5e\x5b\x76\xa9\xd3\x59\xe9\xaa\xcc\xcf\xc2\x7a\x63\xef\ -\x57\x26\xdd\x74\xdd\x9b\x55\xd3\x34\x57\x15\x72\x66\x2a\xe1\xa4\ -\xfd\xe0\xf6\xdc\xbb\x9a\x67\xd7\xb0\xf6\x69\xb5\x77\x15\x73\x0f\ -\x66\x9b\x36\xad\xd9\xb5\xac\xd3\x45\x3d\x11\xa5\x31\xfc\xde\xbb\ -\x3b\x2f\xb4\xd6\x6e\xd1\x7a\xd6\x4b\x98\x53\x5d\x15\x45\x54\xd5\ -\x16\x2a\xd6\x26\x38\xc4\xf4\x32\x1b\x4d\x9a\x62\x72\x5c\x75\xdd\ -\x9f\xca\xae\xd7\x82\xc1\xe0\xf4\xb7\x5f\xb1\x99\xa2\xab\xf5\xe9\ -\x1c\xaa\xeb\x98\xe3\x3a\xcf\xe1\xa6\x8a\xd7\xb7\xc4\x57\x57\xf6\ -\xb7\x2a\xaa\x67\xf6\xa6\x66\x41\x99\xdb\x9b\x14\x61\xf6\xcf\x32\ -\xa2\x8a\x39\x11\x55\xc8\xae\x62\x3f\x6a\xaa\x62\xa9\xfe\x73\x2f\ -\x5e\x79\x8c\xb9\x4e\xc2\x6c\xe6\x0a\x99\xe4\xdb\xae\x9b\xf7\x2b\ -\xd3\xf5\xa6\x2e\xd5\x14\xeb\xe1\xac\xff\x00\x17\x46\xdf\x44\xc6\ -\xda\xe6\x11\x3d\x31\x36\xf5\xfa\x74\xb8\xe7\xbd\x55\xd9\xaf\xf7\ -\x17\xfc\xea\x8f\xf8\x2b\xef\x5c\x62\xf1\xb8\xac\x15\x9c\xaa\xdf\ -\x2a\xe5\xaa\x2e\xd5\x72\xdd\xaa\x28\xd6\x66\xba\xa2\x22\x67\x87\ -\x19\xe8\x87\x91\x68\xc5\x63\xef\xec\xde\x49\x97\x61\xb2\xba\xa7\ -\x0f\x88\xc7\xe1\xbf\x49\xc4\xe2\xa8\xe1\x72\xa8\x9a\xa6\x29\xa2\ -\x2a\xe9\xa6\x22\x23\xb3\xb4\x18\xda\x76\x4f\x68\xaa\xa6\x26\x32\ -\x3c\x7e\x93\xf1\xc3\xd5\x1f\xfa\x3d\xbb\x61\x63\x13\x62\x32\x6a\ -\x31\x96\xab\xb5\x89\x8c\xb6\x8a\x6e\x53\x72\x9d\x2a\x8d\x2b\xae\ -\x23\x5f\xc2\x21\x82\xb9\x8c\xc4\xdd\xae\x6b\xb9\x89\xbb\x5d\x53\ -\xd3\x55\x55\xcc\xcc\xb3\x1b\x4d\xca\xfd\x0b\x21\x9a\xf5\xe5\x4e\ -\x5b\x4c\xf1\xff\x00\x79\x58\x26\xfd\xc9\xc2\x6c\x26\x12\xcd\xbe\ -\x1f\xd2\x18\xdb\xb5\xdd\x98\xed\x8b\x74\xd3\x14\xc7\x86\xb5\xcc\ -\xb0\x0c\xee\x32\x99\xbd\xb0\xd9\x65\xea\x38\xd3\x86\xc6\xe2\x2d\ -\x5c\xfb\xa6\xaa\x68\xaa\x9f\xe5\x13\xfc\x18\x22\x0b\x0d\x53\xfa\ -\x4e\xef\x68\xaa\xef\xbd\x5e\x0b\x31\xf6\x76\xa6\x7f\x56\x8a\xe8\ -\x9a\xaa\xa7\xc3\x5a\x75\x46\xcb\x7f\xa2\x6d\x07\xfc\xaa\xbf\x32\ -\x82\x98\xf6\x7b\xbb\xb9\x35\x70\xf6\xd9\xa5\x3c\x88\x9f\xd6\x8a\ -\x6d\xce\xb3\x1e\x1c\xa8\xfe\x2e\xfd\x89\xc5\xd7\x81\x9c\xeb\x17\ -\x6e\x8a\x2b\xae\xce\x59\x5d\x54\xc5\xca\x79\x54\xeb\x17\x28\xd3\ -\x58\xed\x07\xb3\x66\xf2\x4c\x3e\x5d\x8a\xb1\x56\x61\x34\x7f\x4c\ -\x62\xad\xd5\x56\x5f\x84\xb9\x4e\xb4\xdb\xaf\x93\x33\x45\x57\x63\ -\xb3\x59\xd3\x48\xfb\xf5\x95\x4b\x17\x7f\x11\x8a\xc5\xdd\xbf\x8b\ -\xb9\x5d\xcb\xf5\xd5\x33\x72\xaa\xe7\x8c\xcf\xde\x9a\xf1\xd8\xab\ -\x98\xf9\xc7\xd7\x7e\xba\xb1\x33\x73\xda\x7b\x59\x9f\x7b\x95\xae\ -\xba\xea\xcb\xed\x55\x9a\x2f\xe2\x30\xf9\xde\x1e\x88\xa6\xc6\x6b\ -\x6f\xda\xcc\x47\x45\x17\x63\x85\xca\x7f\xf3\x71\xff\x00\xc5\x00\ -\xec\xc9\x2d\xde\xa3\x64\xf3\xab\xf8\x5b\x35\xdc\xc4\x5e\xae\xce\ -\x1b\x5b\x74\xcc\xd5\x4d\xba\xb9\x55\x55\x1c\x3e\x3c\x98\x89\x61\ -\xff\x00\xa2\xf3\x0f\xf5\x0c\x4f\xd1\xab\xff\x00\x86\x6f\x24\xc6\ -\x63\x30\xbb\x1f\x9c\x57\x97\xe2\xaf\x61\xef\xda\xc4\x61\xee\x55\ -\x55\x9b\x93\x45\x5c\x89\xe5\xd3\x3c\x63\x8e\x9a\xcc\x7f\x26\x3b\ -\xfe\x93\xed\x07\x7e\xe6\x5f\xff\x00\x97\x73\xff\x00\x90\x64\xb2\ -\xdc\x36\x2b\xfe\x87\xe7\xb8\x5c\x5e\x1e\xf5\x16\xed\x45\x9c\x4d\ -\x9f\x69\x44\xc4\x53\x5c\x57\x14\xce\x9a\xfc\x69\xab\xf9\x2b\x2c\ -\x9d\xec\xdf\x3f\xc7\xe0\x6e\xc5\xfc\xc7\x31\xc4\xe1\x22\x69\xa6\ -\xef\x2e\xf5\xca\xed\xc4\xcf\x44\x55\xac\xe9\xd9\xc3\x5f\x83\x18\ -\x00\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x4a\x00\x01\x40\x00\ -\x00\x00\x00\x00\x06\xf7\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\x2a\ -\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x87\x1b\xd4\x00\x44\x00\x00\ -\x00\x00\x00\x00\x00\x01\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\x2b\ -\x32\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x75\x5a\x18\x07\x65\ -\x00\x00\x00\x00\x01\x28\x4a\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x96\x49\x99\x5a\ -\xcb\x6e\x63\x2a\xbb\x45\x75\x46\x23\x05\x7b\x0f\x4f\x23\x4e\x15\ -\x57\x4e\x91\x33\xf7\x31\xa0\x03\xd9\x94\xe6\x77\xf2\x7c\xca\xd6\ -\x3b\x0f\x14\x55\x5d\xbd\x62\x68\xae\x35\xa6\xba\x66\x34\xaa\x99\ -\x8f\x84\xc4\xcc\x3c\x60\x33\xf5\xce\xc8\xe2\xaa\xf6\xdf\xf6\xa6\ -\x02\x6a\xe3\x55\x8b\x74\x51\x7a\x9a\x7e\xea\x6a\x99\x89\xd3\xc6\ -\x1e\xac\xbb\x69\x72\xac\x9a\xe5\xfb\x39\x6e\x02\xf5\x18\x7b\xf6\ -\x2e\x5a\xbb\x7e\xed\x51\x5d\xeb\xba\xd1\x31\x4c\x76\x45\x14\xf2\ -\xa6\x26\x62\x38\xf0\x8e\x32\xab\x09\x83\x9d\x9a\xe2\xdd\xea\x2b\ -\x98\xd6\x29\xaa\x25\xec\xcf\x71\xf6\xb3\x4c\xf7\x1b\x8f\xb3\x4d\ -\x74\xdb\xc4\x5e\xaa\xe5\x34\xd7\xa6\xb1\x13\x3d\xba\x3c\x02\x8c\ -\x86\x43\x98\x5a\xca\xb3\xec\x16\x3e\xf5\x35\xd5\x6f\x0f\x7a\x9a\ -\xea\xa6\x8d\x39\x53\x11\xf0\xd5\xe1\xb9\x54\x57\x72\xaa\xa3\xa2\ -\x66\x65\xc4\x06\x4f\x20\xcc\xed\x65\x38\xfb\x98\x8b\xd4\x57\x5d\ -\x35\xe1\xaf\x5a\x88\xa3\x4d\x75\xae\x89\xa6\x3a\x7b\x35\x96\x30\ -\x01\x94\xda\x5c\xd6\xce\x75\x9e\x5e\xc7\xd8\xa2\xba\x2d\xd7\x45\ -\xba\x62\x9b\x9a\x6b\xee\xdb\xa6\x99\xe8\xfb\xe0\x9c\xd2\xcc\xec\ -\xa5\x39\x4f\x22\xbf\x6d\x18\xe9\xc4\x72\xb8\x72\x79\x3c\x88\xa7\ -\x4f\x8e\xba\xb1\x62\x02\xd5\x8a\xcc\x6a\xb7\xbb\xdc\x1d\x9b\x96\ -\xa2\x31\x18\x9b\xb5\x58\xa2\xe7\x6d\x58\x7a\x2a\xe5\xe9\xf5\x2a\ -\xfe\x4c\x26\x59\x82\xc0\xe2\xe6\xb9\xc6\xe6\xb6\xb0\x14\xd3\x31\ -\xf6\xed\x57\x5d\x55\x47\x6e\x91\x4c\x4c\x7f\x19\x87\x3c\xf7\x31\ -\xb3\x8f\xc6\x5b\xa3\x09\x4d\x54\x60\xf0\xb6\xa9\xb1\x86\xa6\xbf\ -\xb5\xc8\x8e\xd9\xfb\xe6\x66\x66\x7c\x41\x8d\x01\x46\x4b\x24\xcc\ -\xad\x65\xb7\x31\x95\x5d\xa2\xba\xa3\x11\x82\xbd\x87\xa7\x91\xa7\ -\x0a\xab\xa7\x48\x99\xfb\x98\xd0\x07\x2b\x77\x2b\xb5\x72\x9b\x96\ -\xeb\xaa\x8a\xe8\x98\xaa\x9a\xa9\x9d\x26\x26\x3a\x26\x19\x4c\xff\ -\x00\x33\xc2\xe7\x37\x6c\xe3\xa8\xb3\x5d\xac\x75\xca\x34\xc6\xf0\ -\x88\xa2\xba\xe3\x84\x57\x4f\x1e\x99\x8e\x98\xd2\x38\xfc\x75\x62\ -\x40\x58\xef\x66\xf9\x36\x7b\x4d\x17\x73\xbb\x58\xbc\x3e\x3e\x8a\ -\x29\xa2\xac\x56\x13\x93\x5c\x5e\x88\x8d\x22\x6b\xa2\xa9\x8d\x27\ -\x48\x8e\x31\x3c\x7e\x0e\xba\x33\x0c\x83\x28\xaa\x2f\xe5\x78\x6c\ -\x56\x37\x19\x4f\x1b\x77\xb1\xb1\x4d\x34\x5a\xab\xb2\xa8\xa2\x9d\ -\x79\x53\xe3\x3a\x7d\xcc\x00\x98\x32\xbb\x4d\x9a\xda\xce\xf6\x83\ -\x15\x99\x59\xa2\xba\x28\xbf\x34\xcc\x45\xcd\x39\x5c\x29\x88\x9d\ -\x74\xf0\x46\x65\x9a\x59\xc6\x64\xd9\x4e\x0a\xdd\x15\xd3\x5e\x06\ -\xdd\xca\x2e\x4d\x5a\x69\x54\xd5\x72\x6a\x8d\x3f\x09\x62\xc0\x19\ -\xdc\x2e\x71\x96\xe3\x32\xcb\x19\x6e\x79\x86\xbd\x55\x38\x58\x98\ -\xc3\xe2\xf0\xb3\x1e\xd6\xdd\x33\x3a\xf2\x66\x27\x85\x54\xeb\xac\ -\xf4\xc4\xc6\xac\x10\xa3\x3b\x15\xec\xa6\x0e\x3d\xa5\xbb\x79\x8e\ -\x63\x72\x3e\xcd\xab\xd1\x4d\x8b\x7f\x8c\xd3\x33\x54\xf8\x46\x9e\ -\x2e\xbd\xa3\xcf\x63\x3e\xaf\x03\x76\x6d\xfb\x3b\x96\x30\xb1\x66\ -\xe4\x45\x11\x4d\x3a\xc5\x55\x4c\x45\x31\x1d\x91\x13\x11\xf8\x30\ -\xc2\x60\xc9\xe5\x19\xcc\x65\xd6\xef\xe1\x71\x38\x6a\x71\x98\x1c\ -\x54\x47\xb6\xc3\xd5\x57\x26\x75\x8e\x8a\xa9\xab\xf5\x6a\x8d\x67\ -\x8f\xde\xf5\xf2\x36\x3e\x9a\xfd\xa7\xb6\xce\x2a\xa7\xa6\x2c\x7b\ -\x3b\x71\x3e\x1c\xbd\x7f\x9e\x8c\x08\x0c\x96\x71\x9c\x4e\x69\x36\ -\x2d\x5a\xc3\x51\x84\xc1\xe1\x68\x9a\x30\xf8\x7a\x27\x58\xa2\x27\ -\x8c\xcc\xcf\x4c\xd5\x33\xc6\x65\x39\x36\x69\x67\x2e\xb1\x99\xdb\ -\xbb\x45\x75\x4e\x33\x05\x56\x1e\x8e\x4e\x9c\x2a\x9a\xa9\x9d\x67\ -\xee\xf7\x65\x8c\x00\x64\xec\x66\x96\x7f\xe8\xe6\x27\x2a\xc4\xdb\ -\xae\xb9\xf6\xd4\xdf\xc2\xd7\x4c\x47\xf5\x75\xf4\x57\xaf\xdd\x34\ -\xff\x00\x38\x86\x30\x51\xee\xca\x33\x5b\xb9\x46\x32\x6f\x51\x6e\ -\x8b\xd6\xee\x51\x36\xaf\x59\xb9\x1a\xd3\x76\x89\xe9\xa6\x7f\xf9\ -\xfb\x99\x09\x8d\x90\xbd\x54\x5d\xe5\xe6\xd8\x5d\x78\xd5\x62\x9a\ -\x2d\xdc\x8a\x7e\xea\x6b\x99\x8e\x1e\x30\xc0\x88\x32\xb9\x9e\x71\ -\x67\x11\x83\xa3\x2d\xcb\xb0\xb3\x84\xc0\x5b\xaf\x97\xc9\xaa\xae\ -\x55\xcb\xd5\xf4\x72\xeb\xab\x48\xe3\xa7\x44\x47\x08\xd6\x58\xa0\ -\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x25\x00\x00\xa0\x00\ -\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\x6f\xcd\xf3\x6b\x5a\x15\ -\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\x8d\xea\x00\x22\x00\x00\ -\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\x79\x97\x85\xbf\x32\x95\ -\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\x2b\x3a\xad\x0c\x03\xb2\ -\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x10\x94\x00\x02\x80\x00\x00\x00\x00\x00\x0d\xef\xbb\ -\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\ -\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\x00\x02\xb3\ -\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\ -\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\x02\x50\x94\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x50\x00\x0a\ -\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\ -\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\x38\xde\xa0\x02\x20\ -\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\xfa\x87\x99\x78\x5b\xf3\ -\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\xaa\xd0\xc0\ -\x3b\x28\x00\x00\x00\x00\x09\x42\x50\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\x00\x00\x00\x00\x00\xde\ -\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\x5f\x76\xdd\x42\xcb\x7e\ -\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\x00\x00\x00\x00\x00\x00\ -\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x66\x56\x77\x8f\xd4\x3c\ -\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\xa0\x00\x00\x00\x00\x25\ -\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x25\x00\ -\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\x6f\xcd\xf3\ -\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\x8d\xea\x00\ -\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\x79\x97\x85\ -\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\x2b\x3a\xad\ -\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x10\x94\x00\x02\x80\x00\x00\x00\x00\x00\ -\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\x6d\xd4\x2c\ -\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\x00\x00\x00\ -\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\x67\x78\xfd\ -\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\x00\x00\x00\ -\x02\x50\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\ -\x50\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\x85\x96\xfc\ -\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\xb4\x38\xde\ -\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\xfa\x87\x99\ -\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\xe6\x52\xb3\ -\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\x42\x50\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\x00\x00\x00\ -\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\x5f\x76\xdd\ -\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\x00\x00\x00\ -\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\x66\x56\x77\ -\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\xa0\x00\x00\ -\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x04\x25\x00\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\xdb\xa8\x59\ -\x6f\xcd\xf3\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\x6d\x6b\x43\ -\x8d\xea\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\xef\x1f\xa8\ -\x79\x97\x85\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\x0b\x7e\x65\ -\x2b\x3a\xad\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x94\x00\x02\x80\x00\x00\ -\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\x68\x55\xf7\ -\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\x00\x00\x00\ -\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\xca\x56\x65\ -\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\x0e\xca\x00\ -\x00\x00\x00\x02\x50\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x42\x50\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\ -\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\ -\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\ -\xfa\x87\x99\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\ -\xe6\x52\xb3\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x09\x42\x50\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x09\x40\x00\x28\x00\ -\x00\x00\x00\x00\x00\xde\xfb\xb6\xea\x16\x5b\xf3\x7c\xda\xd6\x85\ -\x5f\x76\xdd\x42\xcb\x7e\x6f\x9b\x5a\xd0\xe3\x7a\x80\x08\x80\x00\ -\x00\x00\x00\x00\x00\x00\x2b\x3b\xc7\xea\x1e\x65\xe1\x6f\xcc\xa5\ -\x66\x56\x77\x8f\xd4\x3c\xcb\xc2\xdf\x99\x4a\xce\xab\x43\x00\xec\ -\xa0\x00\x00\x00\x00\x25\x09\x40\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x04\x25\x00\x00\xa0\x00\x00\x00\x00\x00\x03\x7b\xee\ -\xdb\xa8\x59\x6f\xcd\xf3\x6b\x5a\x15\x7d\xdb\x75\x0b\x2d\xf9\xbe\ -\x6d\x6b\x43\x8d\xea\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\xac\ -\xef\x1f\xa8\x79\x97\x85\xbf\x32\x95\x99\x59\xde\x3f\x50\xf3\x2f\ -\x0b\x7e\x65\x2b\x3a\xad\x0c\x03\xb2\x80\x00\x00\x00\x00\x94\x25\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x94\x00\x02\ -\x80\x00\x00\x00\x00\x00\x0d\xef\xbb\x6e\xa1\x65\xbf\x37\xcd\xad\ -\x68\x55\xf7\x6d\xd4\x2c\xb7\xe6\xf9\xb5\xad\x0e\x37\xa8\x00\x88\ -\x00\x00\x00\x00\x00\x00\x00\x02\xb3\xbc\x7e\xa1\xe6\x5e\x16\xfc\ -\xca\x56\x65\x67\x78\xfd\x43\xcc\xbc\x2d\xf9\x94\xac\xea\xb4\x30\ -\x0e\xca\x00\x00\x00\x00\x02\x50\x20\x91\x00\x24\x40\x09\x10\x02\ -\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\x91\x00\x24\x40\x09\ -\x10\x02\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\x91\x00\x24\ -\x40\x09\x10\x02\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\x91\ -\x00\x24\x40\x09\x10\x02\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\ -\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\x91\x00\x24\x40\x09\x10\ -\x02\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\x91\x00\x24\x40\ -\x09\x10\x02\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\x91\x00\ -\x24\x40\x09\x10\x02\x44\x00\x91\x00\x24\x40\x09\x10\x02\x44\x00\ -\x91\x00\x25\x00\x00\x0a\x00\x00\x00\x00\x00\x00\x37\xbe\xed\xba\ -\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\x50\xb2\xdf\x9b\xe6\xd6\ -\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\x00\x00\x00\x0a\xce\xf1\ -\xfa\x87\x99\x78\x5b\xf3\x29\x59\x95\x9d\xe3\xf5\x0f\x32\xf0\xb7\ -\xe6\x52\xb3\xaa\xd0\xc0\x3b\x28\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x37\xbe\xed\xba\x85\x96\xfc\xdf\x36\xb5\xa1\x57\xdd\xb7\ -\x50\xb2\xdf\x9b\xe6\xd6\xb4\x38\xde\xa0\x02\x20\x00\x00\x00\x00\ -\x00\x00\x00\x0f\x36\x65\x96\xe1\x33\x7c\x05\xdc\x0e\x3a\xd7\xb6\ -\xc3\xdd\xd3\x97\x47\x2a\x69\xd7\x49\x89\x8e\x31\x31\x3d\x31\x0f\ -\x48\x0a\xbf\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x39\xb6\xd9\x1e\xe9\ -\xfc\xcd\xdf\x52\xd0\x2e\xd5\x55\xf9\xb6\xd9\x1e\xe9\xfc\xcd\xdf\ -\x51\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x96\x80\xda\x2a\xfc\xdb\x6c\ -\x8f\x74\xfe\x66\xef\xa8\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x4b\x40\ -\x6d\x15\x7e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\x73\x6d\xb2\x3d\xd3\ -\xf9\x9b\xbe\xa5\xa0\x36\x8a\xbf\x36\xdb\x23\xdd\x3f\x99\xbb\xea\ -\x39\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x52\xd0\x1b\x45\x5f\x9b\x6d\x91\ -\xee\x9f\xcc\xdd\xf5\x1c\xdb\x6c\x8f\x74\xfe\x66\xef\xa9\x68\x0d\ -\xa2\xaf\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x8e\x6d\xb6\x47\xba\x7f\ -\x33\x77\xd4\xb4\x06\xd1\x57\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x47\ -\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x5a\x03\x68\xab\xf3\x6d\xb2\x3d\ -\xd3\xf9\x9b\xbe\xa3\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x2d\x01\xb4\ -\x55\xf9\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x51\xcd\xb6\xc8\xf7\x4f\xe6\ -\x6e\xfa\x96\x80\xda\x2a\xfc\xdb\x6c\x8f\x74\xfe\x66\xef\xa8\xe6\ -\xdb\x64\x7b\xa7\xf3\x37\x7d\x4b\x40\x6d\x15\x7e\x6d\xb6\x47\xba\ -\x7f\x33\x77\xd4\x73\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa5\xa0\x36\x8a\ -\xbf\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x39\xb6\xd9\x1e\xe9\xfc\xcd\ -\xdf\x52\xd0\x1b\x45\x5f\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x1c\xdb\ -\x6c\x8f\x74\xfe\x66\xef\xa9\x68\x0d\xa2\xaf\xcd\xb6\xc8\xf7\x4f\ -\xe6\x6e\xfa\x8e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\xb4\x06\xd1\x57\ -\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x47\x36\xdb\x23\xdd\x3f\x99\xbb\ -\xea\x5a\x03\x68\xab\xf3\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa3\x9b\x6d\ -\x91\xee\x9f\xcc\xdd\xf5\x2d\x01\xb4\x55\xf9\xb6\xd9\x1e\xe9\xfc\ -\xcd\xdf\x51\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x96\x80\xda\x2a\xfc\ -\xdb\x6c\x8f\x74\xfe\x66\xef\xa8\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\ -\x4b\x40\x6d\x15\x7e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\x73\x6d\xb2\ -\x3d\xd3\xf9\x9b\xbe\xa5\xa0\x36\x8a\xbf\x36\xdb\x23\xdd\x3f\x99\ -\xbb\xea\x39\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x52\xd0\x1b\x45\x5f\x9b\ -\x6d\x91\xee\x9f\xcc\xdd\xf5\x1c\xdb\x6c\x8f\x74\xfe\x66\xef\xa9\ -\x68\x0d\xa2\xaf\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x8e\x6d\xb6\x47\ -\xba\x7f\x33\x77\xd4\xb4\x06\xd1\x57\xe6\xdb\x64\x7b\xa7\xf3\x37\ -\x7d\x47\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x5a\x03\x68\xab\xf3\x6d\ -\xb2\x3d\xd3\xf9\x9b\xbe\xa3\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x2d\ -\x01\xb4\x55\xf9\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x51\xcd\xb6\xc8\xf7\ -\x4f\xe6\x6e\xfa\x96\x80\xda\x2a\xfc\xdb\x6c\x8f\x74\xfe\x66\xef\ -\xa8\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x4b\x40\x6d\x15\x7e\x6d\xb6\ -\x47\xba\x7f\x33\x77\xd4\x73\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa5\xa0\ -\x36\x8a\xbf\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x39\xb6\xd9\x1e\xe9\ -\xfc\xcd\xdf\x52\xd0\x1b\x45\x5f\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\ -\x1c\xdb\x6c\x8f\x74\xfe\x66\xef\xa9\x68\x0d\xa2\xaf\xcd\xb6\xc8\ -\xf7\x4f\xe6\x6e\xfa\x8e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\xb4\x06\ -\xd1\x57\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x47\x36\xdb\x23\xdd\x3f\ -\x99\xbb\xea\x5a\x03\x68\xab\xf3\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa3\ -\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x2d\x01\xb4\x55\xf9\xb6\xd9\x1e\ -\xe9\xfc\xcd\xdf\x51\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x96\x80\xda\ -\x2a\xfc\xdb\x6c\x8f\x74\xfe\x66\xef\xa8\xe6\xdb\x64\x7b\xa7\xf3\ -\x37\x7d\x4b\x40\x6d\x15\x7e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\x73\ -\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa5\xa0\x36\x8a\xbf\x36\xdb\x23\xdd\ -\x3f\x99\xbb\xea\x39\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x52\xd0\x1b\x45\ -\x5f\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x1c\xdb\x6c\x8f\x74\xfe\x66\ -\xef\xa9\x68\x0d\xa2\xaf\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x8e\x6d\ -\xb6\x47\xba\x7f\x33\x77\xd4\xb4\x06\xd1\x57\xe6\xdb\x64\x7b\xa7\ -\xf3\x37\x7d\x47\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x5a\x03\x68\xab\ -\xf3\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa3\x9b\x6d\x91\xee\x9f\xcc\xdd\ -\xf5\x2d\x01\xb4\x55\xf9\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x51\xcd\xb6\ -\xc8\xf7\x4f\xe6\x6e\xfa\x96\x80\xda\x2a\xfc\xdb\x6c\x8f\x74\xfe\ -\x66\xef\xa8\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x4b\x40\x6d\x15\x7e\ -\x6d\xb6\x47\xba\x7f\x33\x77\xd4\x73\x6d\xb2\x3d\xd3\xf9\x9b\xbe\ -\xa5\xa0\x36\x8a\xbf\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x39\xb6\xd9\ -\x1e\xe9\xfc\xcd\xdf\x52\xd0\x1b\x45\x5f\x9b\x6d\x91\xee\x9f\xcc\ -\xdd\xf5\x1c\xdb\x6c\x8f\x74\xfe\x66\xef\xa9\x68\x0d\xa2\xaf\xcd\ -\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x8e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\ -\xb4\x06\xd1\x57\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x47\x36\xdb\x23\ -\xdd\x3f\x99\xbb\xea\x5a\x03\x68\xab\xf3\x6d\xb2\x3d\xd3\xf9\x9b\ -\xbe\xa3\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x2d\x01\xb4\x55\xf9\xb6\ -\xd9\x1e\xe9\xfc\xcd\xdf\x51\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x96\ -\x80\xda\x2a\xfc\xdb\x6c\x8f\x74\xfe\x66\xef\xa8\xe6\xdb\x64\x7b\ -\xa7\xf3\x37\x7d\x4b\x40\x6d\x15\x7e\x6d\xb6\x47\xba\x7f\x33\x77\ -\xd4\x73\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa5\xa0\x36\x8a\xbf\x36\xdb\ -\x23\xdd\x3f\x99\xbb\xea\x39\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x52\xd0\ -\x1b\x45\x5f\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x1c\xdb\x6c\x8f\x74\ -\xfe\x66\xef\xa9\x68\x0d\xa2\xaf\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\ -\x8e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\xb4\x06\xd1\x57\xe6\xdb\x64\ -\x7b\xa7\xf3\x37\x7d\x47\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x5a\x03\ -\x68\xab\xf3\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa3\x9b\x6d\x91\xee\x9f\ -\xcc\xdd\xf5\x2d\x01\xb4\x55\xf9\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x51\ -\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x96\x80\xda\x2a\xfc\xdb\x6c\x8f\ -\x74\xfe\x66\xef\xa8\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x4b\x40\x6d\ -\x15\x7e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\x73\x6d\xb2\x3d\xd3\xf9\ -\x9b\xbe\xa5\xa0\x36\x8a\xbf\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x39\ -\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x52\xd0\x1b\x45\x5f\x9b\x6d\x91\xee\ -\x9f\xcc\xdd\xf5\x1c\xdb\x6c\x8f\x74\xfe\x66\xef\xa9\x68\x0d\xa2\ -\xaf\xcd\xb6\xc8\xf7\x4f\xe6\x6e\xfa\x8e\x6d\xb6\x47\xba\x7f\x33\ -\x77\xd4\xb4\x06\xd1\x57\xe6\xdb\x64\x7b\xa7\xf3\x37\x7d\x47\x36\ -\xdb\x23\xdd\x3f\x99\xbb\xea\x5a\x03\x68\xab\xf3\x6d\xb2\x3d\xd3\ -\xf9\x9b\xbe\xa3\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x2d\x01\xb4\x55\ -\xf9\xb6\xd9\x1e\xe9\xfc\xcd\xdf\x51\xcd\xb6\xc8\xf7\x4f\xe6\x6e\ -\xfa\x96\x80\xda\x2a\xfc\xdb\x6c\x8f\x74\xfe\x66\xef\xa8\xe6\xdb\ -\x64\x7b\xa7\xf3\x37\x7d\x4b\x40\x6d\x15\x7e\x6d\xb6\x47\xba\x7f\ -\x33\x77\xd4\x73\x6d\xb2\x3d\xd3\xf9\x9b\xbe\xa5\xa0\x36\x8a\xbf\ -\x36\xdb\x23\xdd\x3f\x99\xbb\xea\x39\xb6\xd9\x1e\xe9\xfc\xcd\xdf\ -\x52\xd0\x1b\x45\x5f\x9b\x6d\x91\xee\x9f\xcc\xdd\xf5\x1c\xdb\x6c\ -\x8f\x74\xfe\x66\xef\xa9\x68\x0d\xa2\xaf\xcd\xb6\xc8\xf7\x4f\xe6\ -\x6e\xfa\x8e\x6d\xb6\x47\xba\x7f\x33\x77\xd4\xb4\x06\xd1\x57\xe6\ -\xdb\x64\x7b\xa7\xf3\x37\x7d\x47\x36\xdb\x23\xdd\x3f\x99\xbb\xea\ -\x5a\x03\x68\xf2\xe5\xb9\x6e\x13\x28\xc0\x5b\xc0\x60\x2c\xfb\x1c\ -\x3d\xad\x79\x14\x72\xa6\xad\x35\x99\x99\xe3\x33\x33\xd3\x32\xf5\ -\x02\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\xff\ -\xd9\ -" - -qt_resource_name = b"\ -\x00\x08\ -\x05\xe2\x5f\x07\ -\x00\x6c\ -\x00\x6f\x00\x67\x00\x6f\x00\x2e\x00\x6a\x00\x70\x00\x67\ -" - -qt_resource_struct_v1 = b"\ -\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ -" - -qt_resource_struct_v2 = b"\ -\x00\x00\x00\x00\x00\x02\x00\x00\x00\x01\x00\x00\x00\x01\ -\x00\x00\x00\x00\x00\x00\x00\x00\ -\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\ -\x00\x00\x01\x71\x66\x26\x83\x50\ -" - -qt_version = [int(v) for v in QtCore.qVersion().split('.')] -if qt_version < [5, 8, 0]: - rcc_version = 1 - qt_resource_struct = qt_resource_struct_v1 -else: - rcc_version = 2 - qt_resource_struct = qt_resource_struct_v2 - -def qInitResources(): - QtCore.qRegisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data) - -def qCleanupResources(): - QtCore.qUnregisterResourceData(rcc_version, qt_resource_struct, qt_resource_name, qt_resource_data) - -qInitResources() diff --git a/sansK2020.sql b/sansK2020.sql deleted file mode 100644 index e4e46fca93d707d89f7787bd0575117c8c677ac3..0000000000000000000000000000000000000000 --- a/sansK2020.sql +++ /dev/null @@ -1,149 +0,0 @@ --- MySQL dump 10.13 Distrib 8.0.19, for Win64 (x86_64) --- --- Host: localhost Database: sansk --- ------------------------------------------------------ --- Server version 8.0.19 - -/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; -/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; -/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; -/*!50503 SET NAMES utf8mb4 */; -/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; -/*!40103 SET TIME_ZONE='+00:00' */; -/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; -/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; -/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; -/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; - --- --- Table structure for table `daftarpemesanan` --- - -DROP TABLE IF EXISTS `daftarpemesanan`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `daftarpemesanan` ( - `NomorAntrian` int NOT NULL AUTO_INCREMENT, - `Nama` char(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, - `Durasi` int DEFAULT NULL, - `Tanggal` date DEFAULT NULL, - `Waktu` time DEFAULT NULL, - `NomorRuangan` int NOT NULL, - `StatusPemesanan` char(20) DEFAULT NULL, - `Harga` int DEFAULT NULL, - `IDAnggota` bigint DEFAULT NULL, - PRIMARY KEY (`NomorAntrian`), - KEY `NomorRuangan` (`NomorRuangan`), - KEY `IDAnggota` (`IDAnggota`), - CONSTRAINT `daftarpemesanan_ibfk_1` FOREIGN KEY (`NomorRuangan`) REFERENCES `daftarruangan` (`NomorRuangan`), - CONSTRAINT `daftarpemesanan_ibfk_2` FOREIGN KEY (`IDAnggota`) REFERENCES `keanggotaan` (`IDAnggota`) -) ENGINE=InnoDB AUTO_INCREMENT=14 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `daftarpemesanan` --- - -LOCK TABLES `daftarpemesanan` WRITE; -/*!40000 ALTER TABLE `daftarpemesanan` DISABLE KEYS */; -INSERT INTO `daftarpemesanan` VALUES (1,'yuhu',2,'2020-04-08','08:00:00',1,'melakukan pembayaran',100000,5),(2,'lucu',2,'2020-04-08','10:00:00',1,'memesan',100000,3),(3,'hihu',3,'2020-04-08','08:00:00',6,'memesan',100000,5),(4,'hilu',2,'2020-04-12','15:00:00',3,'memesan',100000,2),(5,'cyn',2,'2020-04-12','20:00:00',11,'memesan',100000,1),(6,'Aya',2,'2020-04-12','15:00:00',1,'memesan',100000,1),(7,'athena',2,'2020-04-12','20:00:00',1,'memesan',100000,5),(8,'yey',2,'2020-04-12','14:00:00',21,'memesan',220000,2),(9,'qwerty',2,'2020-04-12','20:00:00',30,'memesan',190000,2),(10,'aya',1,'2020-04-12','14:00:00',22,'memesan',110000,5),(11,'asd',2,'2020-04-12','19:00:00',2,'memesan',100000,2),(12,'lilu',2,'2020-04-12','20:00:00',10,'memesan',70000,2),(13,'qwerty',2,'2020-04-12','20:00:00',9,'memesan',70000,4); -/*!40000 ALTER TABLE `daftarpemesanan` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `daftarruangan` --- - -DROP TABLE IF EXISTS `daftarruangan`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `daftarruangan` ( - `NomorRuangan` int NOT NULL AUTO_INCREMENT, - `Jenis` char(6) DEFAULT NULL, - `Ukuran` char(6) DEFAULT NULL, - `Harga` int DEFAULT NULL, - PRIMARY KEY (`NomorRuangan`) -) ENGINE=InnoDB AUTO_INCREMENT=31 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `daftarruangan` --- - -LOCK TABLES `daftarruangan` WRITE; -/*!40000 ALTER TABLE `daftarruangan` DISABLE KEYS */; -INSERT INTO `daftarruangan` VALUES (1,'VIP','Small',50000),(2,'VIP','Small',50000),(3,'VIP','Small',50000),(4,'VIP','Small',50000),(5,'VIP','Small',50000),(6,'nonVIP','Small',35000),(7,'nonVIP','Small',35000),(8,'nonVIP','Small',35000),(9,'nonVIP','Small',35000),(10,'nonVIP','Small',35000),(11,'VIP','Medium',80000),(12,'VIP','Medium',80000),(13,'VIP','Medium',80000),(14,'VIP','Medium',80000),(15,'VIP','Medium',80000),(16,'nonVIP','Medium',65000),(17,'nonVIP','Medium',65000),(18,'nonVIP','Medium',65000),(19,'nonVIP','Medium',65000),(20,'nonVIP','Medium',65000),(21,'VIP','Large',110000),(22,'VIP','Large',110000),(23,'VIP','Large',110000),(24,'VIP','Large',110000),(25,'VIP','Large',110000),(26,'nonVIP','Large',95000),(27,'nonVIP','Large',95000),(28,'nonVIP','Large',95000),(29,'nonVIP','Large',95000),(30,'nonVIP','Large',95000); -/*!40000 ALTER TABLE `daftarruangan` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `keanggotaan` --- - -DROP TABLE IF EXISTS `keanggotaan`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `keanggotaan` ( - `IDAnggota` bigint NOT NULL, - `Nama` varchar(20) NOT NULL, - `NomorIdentitas` bigint NOT NULL, - `TanggalAktif` date NOT NULL, - PRIMARY KEY (`IDAnggota`), - UNIQUE KEY `NomorIdentitas` (`NomorIdentitas`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `keanggotaan` --- - -LOCK TABLES `keanggotaan` WRITE; -/*!40000 ALTER TABLE `keanggotaan` DISABLE KEYS */; -INSERT INTO `keanggotaan` VALUES (1,'Joe Benjamin',3244012333456760,'2020-12-02'),(2,'Lucy Jackson',3324400000034650,'2019-07-23'),(3,'Avery Hope',3702156934560010,'2019-08-15'),(4,'Ted Harold',3620012340012130,'2020-01-22'),(5,'Vey Gerald',3020017740012127,'2020-02-20'); -/*!40000 ALTER TABLE `keanggotaan` ENABLE KEYS */; -UNLOCK TABLES; - --- --- Table structure for table `riwayattransaksi` --- - -DROP TABLE IF EXISTS `riwayattransaksi`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!50503 SET character_set_client = utf8mb4 */; -CREATE TABLE `riwayattransaksi` ( - `NomorTransaksi` int NOT NULL AUTO_INCREMENT, - `NomorAntrian` int NOT NULL, - `Nama` varchar(20) NOT NULL, - `Durasi` int NOT NULL, - `Tanggal` date NOT NULL, - `Waktu` time NOT NULL, - `NomorRuangan` int NOT NULL, - `Harga` int NOT NULL, - `WaktuPembayaran` datetime NOT NULL, - `IDAnggota` int DEFAULT NULL, - PRIMARY KEY (`NomorTransaksi`), - KEY `rt_ruangan` (`NomorRuangan`), - CONSTRAINT `rt_ruangan` FOREIGN KEY (`NomorRuangan`) REFERENCES `daftarruangan` (`NomorRuangan`) -) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; -/*!40101 SET character_set_client = @saved_cs_client */; - --- --- Dumping data for table `riwayattransaksi` --- - -LOCK TABLES `riwayattransaksi` WRITE; -/*!40000 ALTER TABLE `riwayattransaksi` DISABLE KEYS */; -INSERT INTO `riwayattransaksi` VALUES (1,1,'Hasna',3,'2020-04-08','22:00:00',3,30000,'2020-04-09 00:13:55', NULL),(2,1,'yuhu',2,'2020-04-08','08:00:00',1,5,'2020-04-12 19:06:37', NULL); -/*!40000 ALTER TABLE `riwayattransaksi` ENABLE KEYS */; -UNLOCK TABLES; -/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; - -/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; -/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; -/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; -/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; -/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; -/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; - --- Dump completed on 2020-04-12 21:35:47